[LLVMdev] Re: Newbie questions
Chris Lattner
sabre at nondot.org
Wed Apr 26 13:23:18 PDT 2006
On Wed, 26 Apr 2006, Vikram Adve wrote:
>> On some platforms we generate explicit checks for null pointer
>> dereferences and for division by zero (division is a bit different in
>> that we also have to handle java's special rule for dividing -1 by the
>> minimum integer -- I think most platforms actually call the helper
>> function).
> Specifically, I don't think either of these approaches will be sufficient
> when using LLVM as a JIT in libgcj. In either case, an LLVM optimization
> could still reorder trapping instructions. In the first approach, this is
> less likely to occur but is possible. The second approach of course wouldn't
> work because LLVM doesn't have a notion of implicitly trapping instructions
> and could merrily reorder such operations.
Vikram, I'm confused. How do you think LLVM will break this? It will
never introduce a trapping operation on a path without a trap, and the
approach above doesn't require the ability to distinguish between traps:
in fact, any trap would be a fatal error.
Please explain specifically what you think is an issue, so I can
understand.
Thanks,
-Chris
--
http://nondot.org/sabre/
http://llvm.org/
More information about the llvm-dev
mailing list