                                         irbuilder.setInsertPoint @currentFunction.entry_bb
                                         num_alloca = irbuilder.createAlloca EjsValueType, "num-alloca-#{n.value}"
                                         c = llvm.ConstantFP.getDouble n.value
-                                        call = @createCall @ejs.number_new, [c], "numconst-#{n.value}"
+                                        call = @createCall @ejs_runtime.number_new, [c], "numconst-#{n.value}"
                                         call.setOnlyReadsMemory()
                                         irbuilder.createStore call, num_alloca
                                         @currentFunction.literalAllocas[literal_key] = num_alloca

                        irbuilder.setInsertPoint scope.unwind_block

                        clause_count = if catch_block? then 1 else 0
                        casted_personality = irbuilder.createPointerCast @ejs.personality, int8PointerType, "personality"
                        caught_result = irbuilder.createLandingPad EjsValueType, casted_personality, clause_count, "caught_result"
                        caught_result.setCleanup true
                
                        if catch_block?
                                caught_result.addClause @ejs.exception_typeinfo
                                # XXX more here.  store the exception, check if it's actually an ejs exception and branch to internal/external exception handlers
                                irbuilder.createBr catch_block
                        else if finally_block?

                merge_bb = new llvm.BasicBlock "merge", insertFunc

                # we invert the test here - check if the condition is false/0
                cmp = irbuilder.createICmpEq cond_truthy, (boolConstant 0), "cmpresult"
                irbuilder.createCondBr cmp, else_bb, then_bb

                irbuilder.setInsertPoint then_bb
