[PATCH] D15126: Fix ARMv4T (Thumb1) epilogue generation

A. Skrobov via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 1 12:47:13 PST 2015


tyomitch added inline comments.

================
Comment at: lib/Target/ARM/Thumb1FrameLowering.cpp:631
@@ -630,3 +655,3 @@
       // ARMv4T requires BX, see emitEpilogue
-      if (STI.hasV4TOps() && !STI.hasV5TOps())
         continue;
----------------
A Thumb target implicitly has v4T ops (or above), so this condition is meaningless.

================
Comment at: test/CodeGen/ARM/debug-frame.ll:33
@@ -32,3 +32,3 @@
 
-; RUN: llc -mtriple thumb-unknown-linux-gnueabi \
 ; RUN:     -disable-fp-elim -filetype=asm -o - %s \
----------------
This test is not v4T-specific, so it's easier to bump the target triple to v5T than to update every epilogue for v4T compatibility.

================
Comment at: test/CodeGen/Thumb/large-stack.ll:35
@@ -34,3 +34,1 @@
 ; CHECK-LABEL: test2:
-; CHECK: ldr r0,
-; CHECK: add sp, r0
----------------
The temporary register to be used here doesn't seem to have to be constrained to just r0, and somehow my patch affected the choice, so I'm relaxing the test.

================
Comment at: test/CodeGen/Thumb/pop-special-fixup.ll:1
@@ -1,2 @@
-; RUN: llc %s -enable-shrink-wrap=true -o - | FileCheck %s
-
----------------
The same test case (a diamond with a non-trivial final BB) is now checked in `thumb-shrink-wrapping.ll` in the four combinations: {v4T,v5T}x{enable shrink-wrap,disable shrink-wrap}


http://reviews.llvm.org/D15126





More information about the llvm-commits mailing list