[llvm] 9a9e618 - [AIX][XCOFF][BUG-Fixed] need to switch back to text section after emit a dumy eh structure

via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 30 10:56:59 PDT 2021


Author: zhijian
Date: 2021-06-30T13:56:37-04:00
New Revision: 9a9e6189d7973c16535233b5efcb38d13a651c56

URL: https://github.com/llvm/llvm-project/commit/9a9e6189d7973c16535233b5efcb38d13a651c56
DIFF: https://github.com/llvm/llvm-project/commit/9a9e6189d7973c16535233b5efcb38d13a651c56.diff

LOG: [AIX][XCOFF][BUG-Fixed] need to switch back to text section after emit a dumy eh structure

Summary:

in the patch https://reviews.llvm.org/D103651 [AIX][XCOFF] generate eh_info when vector registers are saved according to the traceback table.

when generate eh_info, it switch to other section, when it done, it need to switch back to text section again.

Reviewers: Jason Liu
Differential Revision: https://reviews.llvm.org/105195

Added: 
    

Modified: 
    llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
index b64a1ac41678c..1b4b8c168b8a5 100644
--- a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
+++ b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
@@ -1928,6 +1928,7 @@ void PPCAIXAsmPrinter::emitFunctionBodyEnd() {
 
     OutStreamer->emitIntValue(0, PointerSize);
     OutStreamer->emitIntValue(0, PointerSize);
+    OutStreamer->SwitchSection(MF->getSection());
   }
 }
 

diff  --git a/llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll b/llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll
index d7ee82ea3a71f..f1c399409196b 100644
--- a/llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll
+++ b/llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll
@@ -90,6 +90,8 @@ entry:
 ; COMMON-NEXT:  .align  2
 ; COMMON-NEXT:  .vbyte  4, 0
 ; COMMON-NEXT:  .vbyte  4, 0
+; CHECK-ASM-NEXT:  .csect .text[PR],2
+; CHECK-FUNC-NEXT:  .csect .foov[PR],2
 ; COMMON-NEXT:                                         # -- End function
 ; COMMON:       .toc
 ; COMMON:      L..C2:


        


More information about the llvm-commits mailing list