183 // Emit the entry point |
183 // Emit the entry point |
184 SharkEntry *entry = (SharkEntry *) cb.malloc(sizeof(SharkEntry)); |
184 SharkEntry *entry = (SharkEntry *) cb.malloc(sizeof(SharkEntry)); |
185 |
185 |
186 // Build the LLVM IR for the method |
186 // Build the LLVM IR for the method |
187 Function *function = SharkFunction::build(env, &builder, flow, name); |
187 Function *function = SharkFunction::build(env, &builder, flow, name); |
|
188 if (env->failing()) { |
|
189 return; |
|
190 } |
188 |
191 |
189 // Generate native code. It's unpleasant that we have to drop into |
192 // Generate native code. It's unpleasant that we have to drop into |
190 // the VM to do this -- it blocks safepoints -- but I can't see any |
193 // the VM to do this -- it blocks safepoints -- but I can't see any |
191 // other way to handle the locking. |
194 // other way to handle the locking. |
192 { |
195 { |