Commit 4d81aec4 authored by Scott Linder's avatar Scott Linder
Browse files

[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
parent 8fe9d2a2
......@@ -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
......
# 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{{$}}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment