[PATCH] D89049: [AIX][XCOFF] print out the traceback info

Digger Lin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 12 11:01:15 PDT 2023


DiggerLin marked 20 inline comments as done.
DiggerLin added inline comments.


================
Comment at: llvm/lib/Object/XCOFFObjectFile.cpp:1435
       SmallVector<uint32_t, 8> Disp;
-      Disp.reserve(*NumOfCtlAnchors);
+      Disp.reserve(NumOfCtlAnchors.value());
       for (uint32_t I = 0; I < NumOfCtlAnchors && Cur; ++I)
----------------
jhenderson wrote:
> Is this change needed?
yes , it is not necessary . 


================
Comment at: llvm/lib/Object/XCOFFObjectFile.cpp:1488
 
+    if (ExtensionTable.value() & ExtendedTBTableFlag::TB_EH_INFO) {
+      // eh_info displacement must be 4-byte aligned.
----------------
jhenderson wrote:
> Is this an option?
yes. thanks


================
Comment at: llvm/test/tools/llvm-objdump/XCOFF/disassemble-traceback-table.test:2-3
+## Test that "llvm-objdump --traceback-table" decodes the ControlledStorageInfo,
+## AllocaRegister, and extension table of the traceback table, which cannot
+## currently be generated by llc.
+
----------------
jhenderson wrote:
> I don't think the part about llc is relevant. It will also go out-of-date if llc should ever be able to generate it in the future.
agree.


================
Comment at: llvm/tools/llvm-objdump/XCOFFDump.cpp:279
+  if (TbTable.isFuncNamePresent()) {
+    uint16_t FunctionNameLen = TbTable.getFunctionName().value().size();
+
----------------
jhenderson wrote:
> ?
thanks


================
Comment at: llvm/tools/llvm-objdump/XCOFFDump.cpp:419
+        return;
+      if (Print4BytesOrLess())
+        return;
----------------
jhenderson wrote:
> Is this supposed to be duplicated?
yes, the code will make the output as 


```
# CHECK-NEXT:      5b: 00               # Padding
# CHECK-NEXT:        ...
# CHECK-NEXT:      68: 01 00 00 00
# CHECK-NEXT:      72: 00 00 00 00
# CHECK-NEXT:        ...
# CHECK-NEXT:      90: 01 00 00 00
```

without the duplication code, above  will be changed  to

```
# CHECK-NEXT:      5b: 00               # Padding
# CHECK-NEXT:        ...
# CHECK-NEXT:      68: 01 00 00 00
# CHECK-NEXT:        ...
# CHECK-NEXT:      90: 01 00 00 00
```


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D89049/new/

https://reviews.llvm.org/D89049



More information about the llvm-commits mailing list