summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-04-04 23:31:58 +0000
committerChris Lattner <sabre@nondot.org>2010-04-04 23:31:58 +0000
commit8423cae59017d9b590e5f162eb7a3965ebc9f4be (patch)
tree07a7eff3497cce65780b42e3623419538718f583 /llvm/lib
parent70a4fcea1ede7bcd86cdaac07b50b33b10ca8023 (diff)
downloadbcm5719-llvm-8423cae59017d9b590e5f162eb7a3965ebc9f4be.tar.gz
bcm5719-llvm-8423cae59017d9b590e5f162eb7a3965ebc9f4be.zip
simplify code and reduce indentation.
llvm-svn: 100369
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp63
1 files changed, 30 insertions, 33 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp
index 57fd469fe49..870dab78d07 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfPrinter.cpp
@@ -70,43 +70,40 @@ void DwarfPrinter::EmitFrameMoves(MCSymbol *BaseLabel,
// If advancing cfa.
if (Dst.isReg() && Dst.getReg() == MachineLocation::VirtualFP) {
- if (!Src.isReg()) {
- if (Src.getReg() == MachineLocation::VirtualFP) {
- Asm->EmitCFAByte(dwarf::DW_CFA_def_cfa_offset);
- } else {
- Asm->EmitCFAByte(dwarf::DW_CFA_def_cfa);
- Asm->EmitULEB128(RI->getDwarfRegNum(Src.getReg(), isEH), "Register");
- }
+ assert(!Src.isReg() && "Machine move not supported yet.");
- int Offset = -Src.getOffset();
- Asm->EmitULEB128(Offset, "Offset");
+ if (Src.getReg() == MachineLocation::VirtualFP) {
+ Asm->EmitCFAByte(dwarf::DW_CFA_def_cfa_offset);
} else {
- llvm_unreachable("Machine move not supported yet.");
+ Asm->EmitCFAByte(dwarf::DW_CFA_def_cfa);
+ Asm->EmitULEB128(RI->getDwarfRegNum(Src.getReg(), isEH), "Register");
}
- } else if (Src.isReg() &&
- Src.getReg() == MachineLocation::VirtualFP) {
- if (Dst.isReg()) {
- Asm->EmitCFAByte(dwarf::DW_CFA_def_cfa_register);
- Asm->EmitULEB128(RI->getDwarfRegNum(Dst.getReg(), isEH), "Register");
- } else {
- llvm_unreachable("Machine move not supported yet.");
- }
- } else {
- unsigned Reg = RI->getDwarfRegNum(Src.getReg(), isEH);
- int Offset = Dst.getOffset() / stackGrowth;
- if (Offset < 0) {
- Asm->EmitCFAByte(dwarf::DW_CFA_offset_extended_sf);
- Asm->EmitULEB128(Reg, "Reg");
- Asm->EmitSLEB128(Offset, "Offset");
- } else if (Reg < 64) {
- Asm->EmitCFAByte(dwarf::DW_CFA_offset + Reg);
- Asm->EmitULEB128(Offset, "Offset");
- } else {
- Asm->EmitCFAByte(dwarf::DW_CFA_offset_extended);
- Asm->EmitULEB128(Reg, "Reg");
- Asm->EmitULEB128(Offset, "Offset");
- }
+ Asm->EmitULEB128(-Src.getOffset(), "Offset");
+ continue;
+ }
+
+ if (Src.isReg() && Src.getReg() == MachineLocation::VirtualFP) {
+ assert(Dst.isReg() && "Machine move not supported yet.");
+ Asm->EmitCFAByte(dwarf::DW_CFA_def_cfa_register);
+ Asm->EmitULEB128(RI->getDwarfRegNum(Dst.getReg(), isEH), "Register");
+ continue;
+ }
+
+ unsigned Reg = RI->getDwarfRegNum(Src.getReg(), isEH);
+ int Offset = Dst.getOffset() / stackGrowth;
+
+ if (Offset < 0) {
+ Asm->EmitCFAByte(dwarf::DW_CFA_offset_extended_sf);
+ Asm->EmitULEB128(Reg, "Reg");
+ Asm->EmitSLEB128(Offset, "Offset");
+ } else if (Reg < 64) {
+ Asm->EmitCFAByte(dwarf::DW_CFA_offset + Reg);
+ Asm->EmitULEB128(Offset, "Offset");
+ } else {
+ Asm->EmitCFAByte(dwarf::DW_CFA_offset_extended);
+ Asm->EmitULEB128(Reg, "Reg");
+ Asm->EmitULEB128(Offset, "Offset");
}
}
}
OpenPOWER on IntegriCloud