i've found emscripten uses `lli` tool (gen_struct_info.py):

# NOTE: We can't generate an executable in the next step because it won't 
run on the current system without changing the target.
# If we change the target, some type sizes will change resulting in wrong 
data. As a workaround, we will be generating bitcode and
# run that with the LLVM interpreter. That way we can use the default 
target and still run the code.

Can anybody please explain to me that hack? Can we avoid using lli tool 
(probably do the same in python script or in js)?
The problem is that on some platforms (ios f.e.) lli can't work because of 
exception:

"args": [
    "lli",
    
"/private/var/mobile/Applications/10BD667C-339F-4A25-B6BF-D5404F079E5C/tmp/tmpOpO_KF.ll"

raises exception in ExecutionEngine in :

return runFunction(Fn, GVArgs).IntVal.getZExtValue();

exc_bad_instruction (code=exc_arm_undefined, subcode=0xf4cffce8).

Same unresolved issue in llvm:

http://llvm.org/bugs/show_bug.cgi?id=21012

Any thoughts are highly appreciated.


-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to