summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/ARM/Windows/dbzchk.ll
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2016-10-07 13:28:53 +0000
committerMartin Storsjo <martin@martin.st>2016-10-07 13:28:53 +0000
commit04864f45b2f24e1268640cbde9203a7f769b6a79 (patch)
tree5eb71c7f126d00c6b7fbad7e5e43032ea4767437 /llvm/test/CodeGen/ARM/Windows/dbzchk.ll
parent12d6baf5e40ac16d70bd588d0b62ad53b945fe7e (diff)
downloadbcm5719-llvm-04864f45b2f24e1268640cbde9203a7f769b6a79.tar.gz
bcm5719-llvm-04864f45b2f24e1268640cbde9203a7f769b6a79.zip
[ARM] Reapply: Use __rt_div functions for divrem on Windows
Reapplying r283383 after revert in r283442. The additional fix is a getting rid of a stray space in a function name, in the refactoring part of the commit. This avoids falling back to calling out to the GCC rem functions (__moddi3, __umoddi3) when targeting Windows. The __rt_div functions have flipped the two arguments compared to the __aeabi_divmod functions. To match MSVC, we emit a check for division by zero before actually calling the library function (even if the library function itself also might do the same check). Not all calls to __rt_div functions for division are currently merged with calls to the same function with the same parameters for the remainder. This is more wasteful than a div + mls as before, but avoids calls to __moddi3. Differential Revision: https://reviews.llvm.org/D25332 llvm-svn: 283550
Diffstat (limited to 'llvm/test/CodeGen/ARM/Windows/dbzchk.ll')
-rw-r--r--llvm/test/CodeGen/ARM/Windows/dbzchk.ll2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/ARM/Windows/dbzchk.ll b/llvm/test/CodeGen/ARM/Windows/dbzchk.ll
index 599a7cf094c..c078e091f9a 100644
--- a/llvm/test/CodeGen/ARM/Windows/dbzchk.ll
+++ b/llvm/test/CodeGen/ARM/Windows/dbzchk.ll
@@ -141,7 +141,7 @@ attributes #0 = { optsize }
; CHECK-CFG-ASM-NEXT: udf.w #249
; CHECK-CFG-ASM-LABEL: .LBB2_4:
; CHECK-CFG-ASM: bl __rt_udiv
-; CHECK-CFG-ASM: pop.w {{{.*}}, r11, pc}
+; CHECK-CFG-ASM: pop.w {r11, pc}
; RUN: llc -O0 -mtriple thumbv7--windows-itanium -verify-machineinstrs -filetype asm -o - %s | FileCheck %s -check-prefix CHECK-WIN__DBZCHK
OpenPOWER on IntegriCloud