Emit register names in cfi assembly directives
Update .cfi_undefined, .cfi_register, and .cfi_return_column to
print symbolic register arguments.
Differential Revision: https://reviews.llvm.org/D74914
diff --git a/llvm/lib/MC/MCAsmStreamer.cpp b/llvm/lib/MC/MCAsmStreamer.cpp
index b528a6e..9281584 100644
--- a/llvm/lib/MC/MCAsmStreamer.cpp
+++ b/llvm/lib/MC/MCAsmStreamer.cpp
@@ -1682,13 +1682,17 @@
void MCAsmStreamer::emitCFIUndefined(int64_t Register) {
MCStreamer::emitCFIUndefined(Register);
- OS << "\t.cfi_undefined " << Register;
+ OS << "\t.cfi_undefined ";
+ EmitRegisterName(Register);
EmitEOL();
}
void MCAsmStreamer::emitCFIRegister(int64_t Register1, int64_t Register2) {
MCStreamer::emitCFIRegister(Register1, Register2);
- OS << "\t.cfi_register " << Register1 << ", " << Register2;
+ OS << "\t.cfi_register ";
+ EmitRegisterName(Register1);
+ OS << ", ";
+ EmitRegisterName(Register2);
EmitEOL();
}
@@ -1706,7 +1710,8 @@
void MCAsmStreamer::emitCFIReturnColumn(int64_t Register) {
MCStreamer::emitCFIReturnColumn(Register);
- OS << "\t.cfi_return_column " << Register;
+ OS << "\t.cfi_return_column ";
+ EmitRegisterName(Register);
EmitEOL();
}