diff options
author | Oliver Stannard <oliver.stannard@arm.com> | 2014-06-19 15:39:33 +0000 |
---|---|---|
committer | Oliver Stannard <oliver.stannard@arm.com> | 2014-06-19 15:39:33 +0000 |
commit | bb804ee909a0e81d39920bdc8272e624fb8da443 (patch) | |
tree | cc16de26c417b293df926f1459e185d0cd405aa3 /test/MC/ELF/cfi-signal-frame.s | |
parent | 7e4098332804df5126060a2c8f846445a82c5a62 (diff) | |
download | llvm-bb804ee909a0e81d39920bdc8272e624fb8da443.tar.gz llvm-bb804ee909a0e81d39920bdc8272e624fb8da443.tar.bz2 llvm-bb804ee909a0e81d39920bdc8272e624fb8da443.tar.xz |
Emit DWARF3 call frame information when DWARF3+ debug info is requested
Currently, llvm always emits a DWARF CIE with a version of 1, even when emitting
DWARF 3 or 4, which both support CIE version 3. This patch makes it emit the
newer CIE version when we are emitting DWARF 3 or 4. This will not reduce
compatibility, as we already emit other DWARF3/4 features, and is worth doing as
the DWARF3 spec removed some ambiguities in the interpretation of call frame
information.
It also fixes a minor bug where the "return address" field of the CIE was
encoded as a ULEB128, which is only valid when the CIE version is 3. There are
no test changes for this, because (as far as I can tell) none of the platforms
that we test have a return address register with a DWARF register number >127.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211272 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/ELF/cfi-signal-frame.s')
-rw-r--r-- | test/MC/ELF/cfi-signal-frame.s | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/test/MC/ELF/cfi-signal-frame.s b/test/MC/ELF/cfi-signal-frame.s index 0233119621..98deb0a1de 100644 --- a/test/MC/ELF/cfi-signal-frame.s +++ b/test/MC/ELF/cfi-signal-frame.s @@ -23,10 +23,10 @@ g: // CHECK-NEXT: AddressAlignment: 8 // CHECK-NEXT: EntrySize: 0 // CHECK-NEXT: SectionData ( -// CHECK-NEXT: 0000: 14000000 00000000 017A5253 00017810 +// CHECK-NEXT: 0000: 14000000 00000000 037A5253 00017810 // CHECK-NEXT: 0010: 011B0C07 08900100 10000000 1C000000 // CHECK-NEXT: 0020: 00000000 00000000 00000000 14000000 -// CHECK-NEXT: 0030: 00000000 017A5200 01781001 1B0C0708 +// CHECK-NEXT: 0030: 00000000 037A5200 01781001 1B0C0708 // CHECK-NEXT: 0040: 90010000 10000000 1C000000 00000000 // CHECK-NEXT: 0050: 00000000 00000000 // CHECK-NEXT: ) |