Chromium Code Reviews
DescriptionARM lowering integer divide and remainder, with div by 0 checks.
ARM normally just returns 0 when dividing by 0 with the
software and hw implementations, which is different from
what X86 does. So, for NaCl, we've modified LLVM to trap
by inserting explicit 0 checks.
Uses -mattr=hwdiv-arm attribute to decide if 32-bit
sdiv/udiv are supported.
Also lower the unreachable-inst to a trap-inst, since we
need a trap instruction for divide by 0 anyway.
Misc: fix switch test under MINIMAL=1, since ARM requires
allow_dump for filetype=asm.
Random clang-format changes...
TODO: check via cross tests
BUG= https://code.google.com/p/nativeclient/issues/detail?id=4076
R=stichnot@chromium.org
Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=6ec369ebee62c3aab7fb7334d0bf3fac3a7133e5
Patch Set 1 #Patch Set 2 : fix up 64 #Patch Set 3 : rebase, refactor, and fix switch MINIMAL=1 #
Total comments: 3
Patch Set 4 : consolidate cmp and tst #Patch Set 5 : random stuff #Patch Set 6 : fill in todo #
Total comments: 14
Patch Set 7 : review fixes #
Messages
Total messages: 6 (1 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||