summaryrefslogtreecommitdiff
path: root/test/old-elf/archive-elf.test
diff options
context:
space:
mode:
Diffstat (limited to 'test/old-elf/archive-elf.test')
-rw-r--r--test/old-elf/archive-elf.test38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/old-elf/archive-elf.test b/test/old-elf/archive-elf.test
new file mode 100644
index 000000000000..7784eb9279dc
--- /dev/null
+++ b/test/old-elf/archive-elf.test
@@ -0,0 +1,38 @@
+# Tests the functionality of archive libraries reading
+# and resolution
+# Note: The binary files would not be required once we have support to generate
+# binary archives from textual(yaml) input
+#
+# Tests generated using the source files below
+# main file
+# int main()
+# {
+# fn();
+# return 0;
+# }
+#
+# archive file
+# int fn()
+# {
+# return 0;
+# }
+#
+# int fn1()
+# {
+# return 0;
+# }
+# gcc -c main.c fn.c fn1.c
+
+RUN: lld -flavor old-gnu -target x86_64-linux --output-filetype=yaml -r \
+RUN: %p/Inputs/mainobj.x86_64 %p/Inputs/libfnarchive.a | \
+RUN: FileCheck -check-prefix NOFORCELOAD %s
+
+NOFORCELOAD: defined-atoms:
+NOFORCELOAD: - name: fn
+NOFORCELOAD: scope: global
+NOFORCELOAD: content: [ 55, 48, 89, E5, B8, 00, 00, 00, 00, 5D, C3 ]
+NOFORCELOAD: absolute-atoms:
+NOFORCELOAD: - name: main.c
+NOFORCELOAD: value: 0x0
+NOFORCELOAD: - name: fn.c
+NOFORCELOAD: value: 0x0