[LLVMdev] exception handling broken on x86-64?
Dale Johannesen
dalej at apple.com
Sat Feb 9 11:48:58 PST 2008
On Feb 9, 2008, at 11:20 AM, Anton Korobeynikov wrote:
> Dale,
>
>> Works for me on x86-64 Darwin, fwiw.
> That looks pretty strange. Ok, it can work for small testcases, but
> will
> surely fail when you try to use for something more real. Currently
> it at
> least lacks information about frame moves. So, every invoke, which
> needs
> to restore call-clobbered registers during unwinding will be broken.
>
> Does Shootout-C++/except work for you? And stuff from llvm testsuite
> like omnetpp and xalan ?
Everything in the llvm testsuite works.
> Also, Darwin is different than Linux, because Darwin's unwinding
> runtime
> is native one, not built by llvm-gcc.
I didn't look too hard, but it looks like the x86-64 info is only
slightly modified from the x86-32 info on darwin (in gcc). A few
fields were extended to 64 bits but it was not far off. So what was
there mostly just worked. You may be right that there are problems
that haven't shown up yet.
More information about the llvm-dev
mailing list