diff options
author | Renato Golin <renato.golin@linaro.org> | 2013-07-16 09:32:17 +0000 |
---|---|---|
committer | Renato Golin <renato.golin@linaro.org> | 2013-07-16 09:32:17 +0000 |
commit | 103ba845f09252d90a05109af7174f54bf412daf (patch) | |
tree | 89516426cf9df19eab94f801e39cfefb1ceb7eae /lib/Target/ARM/ARMISelLowering.h | |
parent | 9273151c3bbc96c9b2911caffe3e1a724261cd06 (diff) | |
download | external_llvm-103ba845f09252d90a05109af7174f54bf412daf.zip external_llvm-103ba845f09252d90a05109af7174f54bf412daf.tar.gz external_llvm-103ba845f09252d90a05109af7174f54bf412daf.tar.bz2 |
ARM EABI divmod support
This patch enables calls to __aeabi_idivmod when in EABI mode,
by using the remainder value returned on registers (R1),
enabled by the ARM triple "none-eabi". Note that Darwin and
GNUEABI triples will continue lowering on GNU style, that is,
using the stack for the remainder.
Still need to add SREM/UREM support fix for 64-bit lowering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186390 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMISelLowering.h')
-rw-r--r-- | lib/Target/ARM/ARMISelLowering.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMISelLowering.h b/lib/Target/ARM/ARMISelLowering.h index ed6c405..beba5ce 100644 --- a/lib/Target/ARM/ARMISelLowering.h +++ b/lib/Target/ARM/ARMISelLowering.h @@ -457,6 +457,7 @@ namespace llvm { const ARMSubtarget *ST) const; SDValue LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG, const ARMSubtarget *ST) const; + SDValue LowerDivRem(SDValue Op, SelectionDAG &DAG) const; /// isFMAFasterThanFMulAndFAdd - Return true if an FMA operation is faster /// than a pair of fmul and fadd instructions. fmuladd intrinsics will be |