diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp | 12 | ||||
| -rw-r--r-- | llvm/test/CodeGen/PowerPC/pr13641.ll | 1 | 
2 files changed, 9 insertions, 4 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp index de3241504dc..1c9a23aa684 100644 --- a/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +++ b/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp @@ -458,11 +458,15 @@ bool PPCLinuxAsmPrinter::doFinalization(Module &M) {  void PPCLinuxAsmPrinter::EmitFunctionBodyEnd() {    // Only the 64-bit target requires a traceback table.  For now,    // we only emit the word of zeroes that GDB requires to find -  // the end of the function. -  // FIXME: Eventually we should add the eight-byte mandatory fields -  // described in the PPC64 ELF ABI. -  if (Subtarget.isPPC64()) +  // the end of the function, and zeroes for the eight-byte +  // mandatory fields. +  // FIXME: We should fill in the eight-byte mandatory fields as described in +  // the PPC64 ELF ABI (this is a low-priority item because GDB does not +  // currently make use of these fields). +  if (Subtarget.isPPC64()) {      OutStreamer.EmitIntValue(0, 4/*size*/); +    OutStreamer.EmitIntValue(0, 8/*size*/); +  }  }  void PPCDarwinAsmPrinter::EmitStartOfAsmFile(Module &M) { diff --git a/llvm/test/CodeGen/PowerPC/pr13641.ll b/llvm/test/CodeGen/PowerPC/pr13641.ll index e80fbea36d6..c4d3f3a9dc6 100644 --- a/llvm/test/CodeGen/PowerPC/pr13641.ll +++ b/llvm/test/CodeGen/PowerPC/pr13641.ll @@ -8,3 +8,4 @@ define void @foo() nounwind {  ; CHECK: blr  ; CHECK-NEXT: .long 0 +; CHECK-NEXT: .quad 0  | 

