[llvm] [llvm-mc] Don't print initial .text (PR #120185)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 16 21:56:01 PST 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-aarch64
Author: Fangrui Song (MaskRay)
<details>
<summary>Changes</summary>
Omit the initial `.text` for --disassemble.
```
% echo 90 | myllvm-mc -triple=x86_64 --disassemble --hex
nop
```
---
Full diff: https://github.com/llvm/llvm-project/pull/120185.diff
3 Files Affected:
- (modified) llvm/test/MC/Disassembler/AArch64/colored.txt (+1)
- (modified) llvm/test/tools/llvm-mc/line_end_with_space.test (+1-1)
- (modified) llvm/tools/llvm-mc/Disassembler.cpp (+1-1)
``````````diff
diff --git a/llvm/test/MC/Disassembler/AArch64/colored.txt b/llvm/test/MC/Disassembler/AArch64/colored.txt
index 3293de8a8748f4..1379c552d85cc3 100644
--- a/llvm/test/MC/Disassembler/AArch64/colored.txt
+++ b/llvm/test/MC/Disassembler/AArch64/colored.txt
@@ -1,6 +1,7 @@
# UNSUPPORTED: system-windows
# RUN: llvm-mc -triple=aarch64 -mattr=+all --cdis %s | FileCheck %s --strict-whitespace --match-full-lines
+# CHECK-NOT:{{.}}
0xa1 0x00 0x00 0x54
# CHECK: b.ne [0;31m#20[0m
0x00 0x7c 0x00 0x13
diff --git a/llvm/test/tools/llvm-mc/line_end_with_space.test b/llvm/test/tools/llvm-mc/line_end_with_space.test
index 5ad5a8382edfae..b9f44afc43bb4d 100644
--- a/llvm/test/tools/llvm-mc/line_end_with_space.test
+++ b/llvm/test/tools/llvm-mc/line_end_with_space.test
@@ -1,3 +1,3 @@
# Test that llvm-mc doesn't crash when disassembling a line that ends with a
# space.
-RUN: echo -n ' ' | llvm-mc -disassemble
+RUN: echo -n ' ' | llvm-mc -disassemble | count 0
diff --git a/llvm/tools/llvm-mc/Disassembler.cpp b/llvm/tools/llvm-mc/Disassembler.cpp
index 30577fe631d62e..d02445e21e4c31 100644
--- a/llvm/tools/llvm-mc/Disassembler.cpp
+++ b/llvm/tools/llvm-mc/Disassembler.cpp
@@ -169,7 +169,7 @@ int Disassembler::disassemble(const Target &T, const std::string &Triple,
}
// Set up initial section manually here
- Streamer.initSections(false, STI);
+ Streamer.switchSectionNoPrint(Ctx.getObjectFileInfo()->getTextSection());
bool ErrorOccurred = false;
``````````
</details>
https://github.com/llvm/llvm-project/pull/120185
More information about the llvm-commits
mailing list