summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorge Rimar <grimar@accesssoftek.com>2018-07-19 14:27:19 +0000
committerGeorge Rimar <grimar@accesssoftek.com>2018-07-19 14:27:19 +0000
commitad760e3ec6936671cca3becefa28c398b60e7cde (patch)
tree5b8758213d6a2242b0e47843ac17a1eb647007e0
parentad6ff87888cf6321f21f8d8940531d9c54799ccc (diff)
downloadbcm5719-llvm-ad760e3ec6936671cca3becefa28c398b60e7cde.tar.gz
bcm5719-llvm-ad760e3ec6936671cca3becefa28c398b60e7cde.zip
[ELF] - One more test case for .eh_frame_hdr.
This is to test the following error message: https://github.com/llvm-mirror/lld/blob/master/ELF/SyntheticSections.cpp#L544 Which occurs when LLD meets unsupported address encoding when scans .eh_frame to build .eh_frame_hdr section. llvm-svn: 337458
-rw-r--r--lld/test/ELF/eh-frame-value-format9.s28
1 files changed, 28 insertions, 0 deletions
diff --git a/lld/test/ELF/eh-frame-value-format9.s b/lld/test/ELF/eh-frame-value-format9.s
new file mode 100644
index 00000000000..1b9ce6944ee
--- /dev/null
+++ b/lld/test/ELF/eh-frame-value-format9.s
@@ -0,0 +1,28 @@
+# REQUIRES: x86
+
+# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
+# RUN: not ld.lld --eh-frame-hdr %t.o -o %t 2>&1 | FileCheck %s
+# CHECK: error: unknown FDE size encoding
+
+.section .eh_frame, "ax"
+ .long 12 # Size
+ .long 0x00 # ID
+ .byte 0x01 # Version.
+
+ .byte 0x52 # Augmentation string: 'R','\0'
+ .byte 0x00
+
+# Code and data alignment factors.
+ .byte 0x01 # LEB128
+ .byte 0x01 # LEB128
+
+# Return address register.
+ .byte 0x01 # LEB128
+
+ .byte 0xFE # 'R' value: invalid <0xFE>
+
+ .byte 0xFF
+
+ .long 12 # Size
+ .long 0x14 # ID
+ .quad .eh_frame
OpenPOWER on IntegriCloud