Skip to content
This repository has been archived by the owner on Aug 22, 2019. It is now read-only.

Dragonegg, SSE and GCC builtins #842

Open
jdenheen opened this issue May 12, 2018 · 1 comment
Open

Dragonegg, SSE and GCC builtins #842

jdenheen opened this issue May 12, 2018 · 1 comment

Comments

@jdenheen
Copy link

I have some Dragonegg-derived C code that used extensive GCC features and has some SSE instructions. Is there generally any way around the following without re-writing?

Caused by: org.graalvm.polyglot.PolyglotException: com.oracle.truffle.llvm.runtime.SulongRuntimeException: IllegalStateException Missing GCC builtin: @__builtin_ia32_ldmxcsr

@pekd
Copy link
Contributor

pekd commented May 14, 2018

MXCSR contains flags which control SSE floating point operations, and it also contains exception flags which allow the program to check if certain exceptions occured. SSE is not implemented at all and floating point exceptions/rounding modes/… are also not implemented. There is no way around the error without re-writing your code. If the code relies on something like floating point exceptions, then it's impossible to run that on Sulong (at least for now).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants