mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-24 22:40:36 +00:00
[MIR] Fix CFI_INSTRUCTION escape printing
Summary: The printer seems to intend to not print the trailing comma but has a copy-paste error for the last value in the escape, and the parser enforces having no trailing comma, but somehow a test was never included to actually confirm it. Reviewers: thegameg, arsenm Reviewed By: thegameg, arsenm Subscribers: wdng, arsenm, hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D82478
This commit is contained in:
parent
1f4236d82d
commit
0dbcb0ca32
@ -670,7 +670,7 @@ static void printCFI(raw_ostream &OS, const MCCFIInstruction &CFI,
|
||||
size_t e = CFI.getValues().size() - 1;
|
||||
for (size_t i = 0; i < e; ++i)
|
||||
OS << format("0x%02x", uint8_t(CFI.getValues()[i])) << ", ";
|
||||
OS << format("0x%02x", uint8_t(CFI.getValues()[e])) << ", ";
|
||||
OS << format("0x%02x", uint8_t(CFI.getValues()[e]));
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -42,7 +42,7 @@ body: |
|
||||
CFI_INSTRUCTION restore_state
|
||||
; CHECK: CFI_INSTRUCTION restore_state
|
||||
CFI_INSTRUCTION escape 0x61, 0x62, 0x63
|
||||
; CHECK: CFI_INSTRUCTION escape 0x61, 0x62, 0x63
|
||||
; CHECK: CFI_INSTRUCTION escape 0x61, 0x62, 0x63{{$}}
|
||||
CFI_INSTRUCTION window_save
|
||||
; CHECK: CFI_INSTRUCTION window_save
|
||||
CFI_INSTRUCTION negate_ra_sign_state
|
||||
|
11
test/CodeGen/MIR/Generic/cfi-escape.mir
Normal file
11
test/CodeGen/MIR/Generic/cfi-escape.mir
Normal file
@ -0,0 +1,11 @@
|
||||
# RUN: llc -run-pass none -o - %s | llc -x=mir -run-pass none -o - | FileCheck %s
|
||||
|
||||
# Check that we don't print a trailing comma for CFI escape indices, and that
|
||||
# in general we can round trip them.
|
||||
|
||||
name: func
|
||||
# CHECK-LABEL: name: func
|
||||
body: |
|
||||
bb.0:
|
||||
CFI_INSTRUCTION escape 0x61, 0x62, 0x63
|
||||
; CHECK: CFI_INSTRUCTION escape 0x61, 0x62, 0x63{{$}}
|
Loading…
x
Reference in New Issue
Block a user