[PATCH] D92058: [XCOFF][AIX] Alternative path in EHStreamer for platforms do not have uleb128 support
Hubert Tong via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 30 20:07:31 PST 2020
hubert.reinterpretcast added inline comments.
================
Comment at: llvm/lib/MC/MCAsmInfo.cpp:35
+ cl::desc(
+ "Disable the usage of uleb128 directive, and generate .byte instead."),
+ cl::values(clEnumVal(Default, "Default for platform"),
----------------
s/uleb128 directive/LEB128 directives/;
================
Comment at: llvm/lib/MC/MCAsmInfoXCOFF.cpp:23
UseDotAlignForAlignment = true;
+ HasULEB128Directive = false;
ZeroDirective = "\t.space\t";
----------------
This makes it so that overriding the default with the option to enable use of LEB128 directives on AIX is not possible. Being able to enable such use is meaningful in the context of the integrated assembler or when using alternate or future AIX assemblers.
================
Comment at: llvm/test/CodeGen/PowerPC/aix-exception.ll:81-101
+; ASM: ._Z9catchFuncv:
+; ASM: L..func_begin0:
+; ASM: # %bb.0: # %entry
+; ASM: mflr 0
+; ASM: L..tmp0:
+; ASM: bl ._Z9throwFuncv
+; ASM: nop
----------------
Why the shift here? The labels were aligned before.
================
Comment at: llvm/test/CodeGen/PowerPC/aix-exception.ll:109-113
+; ASM64: .byte 188 # @TType Encoding = <unknown encoding>
+; ASM32: .byte 37
+; ASM64: .byte 41
; ASM: .byte 3 # Call site Encoding = udata4
+; ASM: .byte 26
----------------
Be consistent on the use of physical tab characters (and space characters preceding such to maintain display alignment).
================
Comment at: llvm/test/CodeGen/PowerPC/aix-exception.ll:144-146
+; ASM: .toc
+; ASM: L..C0:
+; ASM: .tc _ZTIi[TC],_ZTIi[UA]
----------------
Same comment re: why the shift?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D92058/new/
https://reviews.llvm.org/D92058
More information about the llvm-commits
mailing list