summaryrefslogtreecommitdiffstats
path: root/binutils-2.25/gas/testsuite/gas/alpha
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.25/gas/testsuite/gas/alpha')
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/alpha.exp48
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.d6
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.s7
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.d21
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.s16
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.l4
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.s8
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.l3
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.s2
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.d25
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.s4
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.d28
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.s31
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.l3
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.s31
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.d22
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.s26
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.d330
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.s1119
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.d29
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.s24
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.l9
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.s32
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.l7
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.s22
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.d11
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.s6
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.l2
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.s1
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/fp.d9
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/fp.s14
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/unop.d12
-rw-r--r--binutils-2.25/gas/testsuite/gas/alpha/unop.s4
33 files changed, 1916 insertions, 0 deletions
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/alpha.exp b/binutils-2.25/gas/testsuite/gas/alpha/alpha.exp
new file mode 100644
index 00000000..06221b2e
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/alpha.exp
@@ -0,0 +1,48 @@
+# Copyright 2012
+# Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+
+#
+# Some generic alpha tests
+#
+
+if { [istarget alpha*-*-*] } then {
+
+ set elf [expr [istarget *-*-elf*] \
+ || [istarget *-*-linux*] \
+ || [istarget *-*-freebsd*] \
+ || [istarget *-*-kfreebsd*-gnu] \
+ || [istarget *-*-netbsd*] ]
+
+ if $elf {
+ run_dump_test "elf-reloc-1"
+ run_list_test "elf-reloc-2" ""
+ run_list_test "elf-reloc-3" ""
+ run_dump_test "elf-reloc-4"
+ run_dump_test "elf-reloc-5"
+ run_list_test "elf-reloc-6" ""
+ run_dump_test "elf-reloc-7"
+ run_dump_test "elf-reloc-8"
+ run_dump_test "elf-tls-1"
+ run_list_test "elf-tls-2" ""
+ run_list_test "elf-tls-3" ""
+ run_dump_test "elf-usepv-1"
+ run_list_test "elf-usepv-2" ""
+ }
+
+ run_dump_test "fp"
+ run_dump_test "unop"
+}
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.d b/binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.d
new file mode 100644
index 00000000..971f1174
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.d
@@ -0,0 +1,6 @@
+#objdump: -s -j .data
+#name: alpha auto-align-1
+
+.*: file format *
+Contents of section .data:
+ 0000 04000000 .*
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.s b/binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.s
new file mode 100644
index 00000000..0b088c24
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/auto-align-1.s
@@ -0,0 +1,7 @@
+.text
+ .align 4
+$B: unop
+$E: .align 4
+ fnop
+.data
+ .long $E - $B
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.d b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.d
new file mode 100644
index 00000000..69a16b72
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.d
@@ -0,0 +1,21 @@
+#objdump: -r
+#name: alpha elf-reloc-1
+
+.*: file format elf64-alpha.*
+
+RELOCATION RECORDS FOR \[\.text\]:
+OFFSET TYPE VALUE
+0*0000004 ELF_LITERAL a
+0*0000000 LITUSE \.text\+0x0*0000002
+0*000000c LITUSE \.text\+0x0*0000001
+0*0000008 ELF_LITERAL b
+0*0000010 ELF_LITERAL f
+0*0000014 LITUSE \.text\+0x0*0000003
+0*0000014 HINT f
+0*0000018 GPREL16 c
+0*000001c GPRELHIGH d
+0*0000020 GPRELLOW e
+0*0000024 GPDISP \.text\+0x0*0000008
+0*0000030 GPDISP \.text-0x0*0000008
+
+
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.s
new file mode 100644
index 00000000..7114f57a
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-1.s
@@ -0,0 +1,16 @@
+ .set nomacro
+ extbl $3, $2, $3 ! lituse_bytoff ! 1
+ ldq $2, a($29) !literal!1
+ ldq $4, b($29) !literal!2
+ ldq_u $3, 0($2) !lituse_base!1
+ ldq $27, f($29) !literal!5
+ jsr $26, ($27), f !lituse_jsr!5
+
+ lda $0, c($29) !gprel
+ ldah $1, d($29) !gprelhigh
+ lda $1, e($1) !gprellow
+
+ ldah $29, 0($26) !gpdisp!3
+ lda $29, 0($29) !gpdisp!4
+ lda $29, 0($29) !gpdisp!3
+ ldah $29, 0($26) !gpdisp!4
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.l b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.l
new file mode 100644
index 00000000..8353a7e0
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.l
@@ -0,0 +1,4 @@
+.*: Assembler messages:
+.*:4: Error: too many ldah insns for !gpdisp!3
+.*:5: Error: too many lda insns for !gpdisp!3
+.*:8: Error: both insns for !gpdisp!4 must be in the same section
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.s
new file mode 100644
index 00000000..b53b7eb1
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-2.s
@@ -0,0 +1,8 @@
+ .text
+ ldah $29,0($26) !gpdisp!3
+ lda $29,0($26) !gpdisp!3
+ ldah $29,0($26) !gpdisp!3
+ lda $29,0($26) !gpdisp!3
+ ldah $29,0($26) !gpdisp!4
+ .section .text2
+ lda $29,0($26) !gpdisp!4
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.l b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.l
new file mode 100644
index 00000000..764dfb7b
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.l
@@ -0,0 +1,3 @@
+.*: Assembler messages:
+.*:2: Error: No ldah !gpdisp!2 was found
+.*:1: Error: No lda !gpdisp!1 was found
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.s
new file mode 100644
index 00000000..c3d959e1
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-3.s
@@ -0,0 +1,2 @@
+ ldah $29,0($26) !gpdisp!1
+ lda $29,0($26) !gpdisp!2
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.d b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.d
new file mode 100644
index 00000000..29b32e2a
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.d
@@ -0,0 +1,25 @@
+#objdump: -r
+#name: alpha elf-reloc-4
+
+.*: file format elf64-alpha.*
+
+RELOCATION RECORDS FOR \[\.text\]:
+OFFSET TYPE VALUE
+0*0000000 ELF_LITERAL a
+0*0000004 LITUSE \.text\+0x0*0000001
+0*0000008 LITUSE \.text\+0x0*0000002
+0*000000c ELF_LITERAL b
+0*0000010 LITUSE \.text\+0x0*0000001
+0*0000014 LITUSE \.text\+0x0*0000002
+0*0000018 ELF_LITERAL c
+0*000001c LITUSE \.text\+0x0*0000001
+0*0000020 LITUSE \.text\+0x0*0000002
+0*0000024 LITUSE \.text\+0x0*0000002
+0*000002c LITUSE \.text\+0x0*0000001
+0*0000030 ELF_LITERAL d
+0*0000034 LITUSE \.text\+0x0*0000001
+0*0000038 LITUSE \.text\+0x0*0000002
+0*000003c LITUSE \.text\+0x0*0000002
+0*0000044 LITUSE \.text\+0x0*0000001
+
+
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.s
new file mode 100644
index 00000000..dfd2eeb5
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-4.s
@@ -0,0 +1,4 @@
+ ldbu $1, a
+ ldwu $2, b
+ stb $3, c
+ stw $4, d
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.d b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.d
new file mode 100644
index 00000000..017fd7f5
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.d
@@ -0,0 +1,28 @@
+#objdump: -dr
+#name: alpha elf-reloc-5
+
+.*: file format elf64-alpha.*
+
+Disassembly of section \.text:
+
+0*0000000 <_start>:
+ 0: 05 00 e0 c3 br 18 <nopv>
+ 4: 04 00 e0 c3 br 18 <nopv>
+ 8: 04 00 e0 c3 br 1c <stdgp>
+ c: 05 00 e0 c3 br 24 <stdgp\+0x8>
+ 10: 00 00 e0 c3 br 14 <_start\+0x14>
+ 10: BRSGP undef
+ 14: 00 00 e0 c3 br 18 <nopv>
+ 14: BRSGP extern
+
+0*0000018 <nopv>:
+ 18: 1f 04 ff 47 nop
+
+0*000001c <stdgp>:
+ 1c: 00 00 bb 27 ldah gp,0\(t12\)
+ 1c: GPDISP \.text\+0x4
+ 20: 00 00 bd 23 lda gp,0\(gp\)
+ 24: 1f 04 ff 47 nop
+
+0*0000028 <extern>:
+ 28: 1f 04 ff 47 nop
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.s
new file mode 100644
index 00000000..f8934a5d
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-5.s
@@ -0,0 +1,31 @@
+ .text
+ .align 2
+_start:
+ br $31, nopv
+ br $31, nopv !samegp
+ br $31, stdgp
+ br $31, stdgp !samegp
+
+ br $31, undef !samegp
+ br $31, extern !samegp
+
+.ent nopv
+nopv:
+ .prologue 0
+ nop
+.end nopv
+
+.ent stdgp
+stdgp:
+ ldgp $29,0($27)
+ .prologue 1
+ nop
+.end stdgp
+
+.globl extern
+.ent extern
+extern:
+ .prologue 0
+ nop
+.end extern
+
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.l b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.l
new file mode 100644
index 00000000..85ee392c
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.l
@@ -0,0 +1,3 @@
+.*: Assembler messages:
+.*:8: Error: !samegp reloc against symbol without \.prologue: nopro
+.*:10: Error: !samegp reloc against symbol without \.prologue: <local>
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.s
new file mode 100644
index 00000000..af8fb1a7
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-6.s
@@ -0,0 +1,31 @@
+ br $31, undef
+ br $31, undef !samegp
+ br $31, nopv
+ br $31, nopv !samegp
+ br $31, stdgp
+ br $31, stdgp !samegp
+ br $31, nopro
+ br $31, nopro !samegp
+ br $31, 1f
+ br $31, 1f !samegp
+
+1: nop
+
+.ent nopv
+nopv:
+ .prologue 0
+ nop
+.end nopv
+
+.ent stdgp
+stdgp:
+ ldgp $29,0($27)
+ .prologue 1
+ nop
+.end stdgp
+
+.ent nopro
+nopro:
+ nop
+.end nopro
+
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.d b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.d
new file mode 100644
index 00000000..c51b6674
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.d
@@ -0,0 +1,22 @@
+#objdump: -r
+#name: alpha elf-reloc-7
+
+.*: file format elf64-alpha.*
+
+RELOCATION RECORDS FOR \[\.text\]:
+OFFSET TYPE VALUE
+0*0000008 BRADDR bar
+
+
+RELOCATION RECORDS FOR \[\.data\]:
+OFFSET TYPE VALUE
+0*0000004 SREL32 \.data2\+0x0*0000004
+0*0000008 SREL32 BAR
+
+
+RELOCATION RECORDS FOR \[\.text2\]:
+OFFSET TYPE VALUE
+0*0000004 BRADDR \.text\+0x0*0000010
+0*0000008 BRADDR bar
+
+
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.s
new file mode 100644
index 00000000..d6409ea1
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-7.s
@@ -0,0 +1,26 @@
+ .section .data2,"wa"
+ .globl BAR
+ .long 0
+FOO: .long 0
+BAR: .long 0
+ .long FOO - .
+ .long BAR - .
+
+ .data
+ .long 0
+ .long FOO - .
+ .long BAR - .
+
+ .text
+ .globl bar
+ nop
+ br foo
+ br bar
+ nop
+foo: nop
+bar: nop
+
+ .section .text2,"ax"
+ nop
+ br foo
+ br bar
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.d b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.d
new file mode 100644
index 00000000..8ba78c3c
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.d
@@ -0,0 +1,330 @@
+#objdump: -r
+#name: alpha elf-reloc-8
+
+.*: file format elf64-alpha.*
+
+RELOCATION RECORDS FOR \[\.text\]:
+OFFSET *TYPE *VALUE
+0*0000000 GPDISP \.text\+0x0*0000004
+0*0000014 GPRELHIGH \.bss\+0x0*0000040
+0*0000018 ELF_LITERAL ROOT_DEV
+0*0000024 GPRELLOW \.bss\+0x0*0000040
+0*0000040 GPRELHIGH \.rodata\.str1\.1\+0x0*00000eb
+0*0000048 GPRELLOW \.rodata\.str1\.1\+0x0*00000eb
+0*000004c BRADDR \.init\.text\+0x0*0000998
+0*0000050 GPRELHIGH \.init\.data
+0*0000054 GPRELLOW \.init\.data
+0*000005c BRADDR \.init\.text\+0x0*0000aa8
+0*0000070 BRADDR \.init\.text\+0x0*0000a48
+0*0000074 ELF_LITERAL sys_umount
+0*0000084 LITUSE \.text\+0x0*0000003
+0*0000078 GPRELHIGH \.rodata\.str1\.1\+0x0*0000101
+0*0000080 GPRELLOW \.rodata\.str1\.1\+0x0*0000101
+0*0000084 HINT sys_umount
+0*0000088 GPDISP \.text\+0x0*0000004
+0*000009c GPRELHIGH \.rodata\.str1\.1\+0x0*0000106
+0*00000a0 ELF_LITERAL sys_mount
+0*00000b4 LITUSE \.text\+0x0*0000003
+0*00000a4 GPRELHIGH \.rodata\.str1\.1\+0x0*0000108
+0*00000a8 GPRELLOW \.rodata\.str1\.1\+0x0*0000106
+0*00000ac GPRELLOW \.rodata\.str1\.1\+0x0*0000108
+0*00000b4 HINT sys_mount
+0*00000b8 GPDISP \.text\+0x0*0000004
+0*00000c4 ELF_LITERAL sys_chroot
+0*00000c8 LITUSE \.text\+0x0*0000003
+0*00000c8 HINT sys_chroot
+0*00000cc GPDISP \.text\+0x0*0000004
+0*00000d4 ELF_LITERAL security_ops
+0*00000e4 GPDISP \.text\+0x0*000000c
+0*0000104 BRADDR \.init\.text\+0x0*0000a90
+0*0000114 GPRELHIGH rd_doload
+0*0000118 GPRELLOW rd_doload
+0*0000124 BRADDR \.init\.text\+0x0*0000a28
+0*0000140 GPRELLOW \.bss\+0x0*0000040
+0*0000148 BRSGP name_to_dev_t
+0*0000150 ELF_LITERAL memcmp
+0*0000164 LITUSE \.text\+0x0*0000003
+0*0000154 GPRELHIGH \.rodata\.str1\.1\+0x0*0000031
+0*0000160 GPRELLOW \.rodata\.str1\.1\+0x0*0000031
+0*0000164 HINT memcmp
+0*0000168 GPDISP \.text\+0x0*0000004
+0*0000178 ELF_LITERAL strcpy
+0*0000188 LITUSE \.text\+0x0*0000003
+0*000017c GPRELHIGH \.bss
+0*0000180 GPRELLOW \.bss
+0*0000188 HINT strcpy
+0*000018c GPDISP \.text\+0x0*0000004
+
+
+RELOCATION RECORDS FOR \[\.init\.text\]:
+OFFSET *TYPE *VALUE
+0*0000000 GPDISP \.init\.text\+0x0*0000004
+0*0000008 ELF_LITERAL simple_strtol
+0*000001c LITUSE \.init\.text\+0x0*0000003
+0*000001c HINT simple_strtol
+0*0000020 GPDISP \.init\.text\+0x0*0000004
+0*0000030 GPRELHIGH rd_doload
+0*0000034 GPRELLOW rd_doload
+0*0000050 GPDISP \.init\.text\+0x0*0000004
+0*0000064 GPREL16 root_mountflags
+0*0000070 GPREL16 root_mountflags
+0*0000080 GPDISP \.init\.text\+0x0*0000004
+0*0000094 GPREL16 root_mountflags
+0*00000a0 GPREL16 root_mountflags
+0*00000b0 GPDISP \.init\.text\+0x0*0000004
+0*00000bc ELF_LITERAL sprintf
+0*00000f0 LITUSE \.init\.text\+0x0*0000003
+0*00000d0 GPRELHIGH \.rodata\.str1\.1
+0*00000ec GPRELLOW \.rodata\.str1\.1
+0*00000f0 HINT sprintf
+0*00000f4 GPDISP \.init\.text\+0x0*0000004
+0*0000108 ELF_LITERAL sys_open
+0*000010c LITUSE \.init\.text\+0x0*0000003
+0*000010c HINT sys_open
+0*0000110 GPDISP \.init\.text\+0x0*0000008
+0*0000120 ELF_LITERAL sys_read
+0*0000134 LITUSE \.init\.text\+0x0*0000003
+0*0000134 HINT sys_read
+0*0000138 GPDISP \.init\.text\+0x0*0000004
+0*0000148 ELF_LITERAL sys_close
+0*000014c LITUSE \.init\.text\+0x0*0000003
+0*000014c HINT sys_close
+0*0000150 GPDISP \.init\.text\+0x0*000000c
+0*00001a0 ELF_LITERAL simple_strtoul
+0*00001b4 LITUSE \.init\.text\+0x0*0000003
+0*00001b4 HINT simple_strtoul
+0*00001b8 GPDISP \.init\.text\+0x0*0000008
+0*00001d8 ELF_LITERAL sprintf
+0*00001ec LITUSE \.init\.text\+0x0*0000003
+0*00001dc GPRELHIGH \.rodata\.str1\.1\+0x0*0000012
+0*00001e8 GPRELLOW \.rodata\.str1\.1\+0x0*0000012
+0*00001ec HINT sprintf
+0*00001f0 GPDISP \.init\.text\+0x0*0000004
+0*0000204 ELF_LITERAL sys_open
+0*0000208 LITUSE \.init\.text\+0x0*0000003
+0*0000208 HINT sys_open
+0*000020c GPDISP \.init\.text\+0x0*0000008
+0*000021c ELF_LITERAL sys_read
+0*000022c LITUSE \.init\.text\+0x0*0000003
+0*000022c HINT sys_read
+0*0000230 GPDISP \.init\.text\+0x0*0000004
+0*0000240 ELF_LITERAL sys_close
+0*0000244 LITUSE \.init\.text\+0x0*0000003
+0*0000244 HINT sys_close
+0*0000248 GPDISP \.init\.text\+0x0*000000c
+0*0000274 ELF_LITERAL simple_strtoul
+0*0000288 LITUSE \.init\.text\+0x0*0000003
+0*0000288 HINT simple_strtoul
+0*000028c GPDISP \.init\.text\+0x0*0000008
+0*00002c0 GPDISP \.init\.text\+0x0*0000004
+0*00002cc ELF_LITERAL sys_mkdir
+0*00002fc LITUSE \.init\.text\+0x0*0000003
+0*00002dc GPRELHIGH \.rodata\.str1\.1\+0x0*0000026
+0*00002e0 GPRELLOW \.rodata\.str1\.1\+0x0*0000026
+0*00002fc HINT sys_mkdir
+0*0000300 GPDISP \.init\.text\+0x0*0000004
+0*0000314 GPRELHIGH \.rodata\.str1\.1\+0x0*000002b
+0*0000318 ELF_LITERAL sys_mount
+0*0000324 LITUSE \.init\.text\+0x0*0000003
+0*000031c GPRELLOW \.rodata\.str1\.1\+0x0*000002b
+0*0000324 HINT sys_mount
+0*0000328 GPDISP \.init\.text\+0x0*0000004
+0*0000334 ELF_LITERAL memcmp
+0*0000348 LITUSE \.init\.text\+0x0*0000003
+0*0000338 GPRELHIGH \.rodata\.str1\.1\+0x0*0000031
+0*0000344 GPRELLOW \.rodata\.str1\.1\+0x0*0000031
+0*0000348 HINT memcmp
+0*000034c GPDISP \.init\.text\+0x0*0000004
+0*0000358 ELF_LITERAL memcmp
+0*0000374 LITUSE \.init\.text\+0x0*0000003
+0*0000360 GPRELHIGH \.rodata\.str1\.1\+0x0*0000037
+0*0000370 GPRELLOW \.rodata\.str1\.1\+0x0*0000037
+0*0000374 HINT memcmp
+0*0000378 GPDISP \.init\.text\+0x0*0000004
+0*0000384 ELF_LITERAL strlen
+0*000038c LITUSE \.init\.text\+0x0*0000003
+0*000038c HINT strlen
+0*0000390 GPDISP \.init\.text\+0x0*0000008
+0*00003a0 ELF_LITERAL strcpy
+0*00003ac LITUSE \.init\.text\+0x0*0000003
+0*00003ac HINT strcpy
+0*00003b0 GPDISP \.init\.text\+0x0*000000c
+0*0000418 ELF_LITERAL _ctype
+0*0000480 ELF_LITERAL simple_strtoul
+0*000048c LITUSE \.init\.text\+0x0*0000003
+0*000048c HINT simple_strtoul
+0*0000490 GPDISP \.init\.text\+0x0*000000c
+0*00004cc ELF_LITERAL _ctype
+0*00004f4 ELF_LITERAL sys_umount
+0*0000500 LITUSE \.init\.text\+0x0*0000003
+0*00004f8 GPRELLOW \.rodata\.str1\.1\+0x0*0000026
+0*0000500 HINT sys_umount
+0*0000504 GPDISP \.init\.text\+0x0*0000004
+0*000050c ELF_LITERAL sys_rmdir
+0*0000514 LITUSE \.init\.text\+0x0*0000003
+0*0000510 GPRELLOW \.rodata\.str1\.1\+0x0*0000026
+0*0000514 HINT sys_rmdir
+0*0000518 GPDISP \.init\.text\+0x0*0000010
+0*0000570 ELF_LITERAL simple_strtoul
+0*0000580 LITUSE \.init\.text\+0x0*0000003
+0*0000580 HINT simple_strtoul
+0*0000584 GPDISP \.init\.text\+0x0*0000008
+0*00005a0 GPDISP \.init\.text\+0x0*0000004
+0*00005ac ELF_LITERAL strncpy
+0*00005cc LITUSE \.init\.text\+0x0*0000003
+0*00005c0 GPRELHIGH \.bss\+0x0*0000040
+0*00005c4 GPRELLOW \.bss\+0x0*0000040
+0*00005cc HINT strncpy
+0*00005d0 GPDISP \.init\.text\+0x0*000000c
+0*00005f0 GPDISP \.init\.text\+0x0*0000004
+0*00005f8 GPRELHIGH \.init\.data\+0x0*0000040
+0*0000600 GPRELLOW \.init\.data\+0x0*0000040
+0*0000610 GPDISP \.init\.text\+0x0*0000004
+0*0000618 GPRELHIGH \.init\.data\+0x0*0000048
+0*0000620 GPRELLOW \.init\.data\+0x0*0000048
+0*0000630 GPDISP \.init\.text\+0x0*0000004
+0*0000638 GPRELHIGH \.init\.data\+0x0*0000048
+0*0000640 GPRELLOW \.init\.data\+0x0*0000048
+0*0000658 ELF_LITERAL strcpy
+0*000065c LITUSE \.init\.text\+0x0*0000003
+0*000065c HINT strcpy
+0*0000660 GPDISP \.init\.text\+0x0*0000008
+0*00006c8 ELF_LITERAL get_filesystem_list
+0*00006cc LITUSE \.init\.text\+0x0*0000003
+0*00006cc HINT get_filesystem_list
+0*00006d0 GPDISP \.init\.text\+0x0*000000c
+0*00006f0 ELF_LITERAL strchr
+0*0000700 LITUSE \.init\.text\+0x0*0000003
+0*0000700 HINT strchr
+0*0000704 GPDISP \.init\.text\+0x0*0000008
+0*0000750 GPDISP \.init\.text\+0x0*0000004
+0*0000758 ELF_LITERAL names_cachep
+0*0000760 ELF_LITERAL kmem_cache_alloc
+0*0000794 LITUSE \.init\.text\+0x0*0000003
+0*0000794 HINT kmem_cache_alloc
+0*0000798 GPDISP \.init\.text\+0x0*0000004
+0*00007b8 GPRELHIGH \.rodata\.str1\.1\+0x0*000003b
+0*00007bc GPRELHIGH \.init\.data\+0x0*0000040
+0*00007c0 ELF_LITERAL ROOT_DEV
+0*00007c4 GPRELLOW \.rodata\.str1\.1\+0x0*000003b
+0*00007c8 GPRELLOW \.init\.data\+0x0*0000040
+0*00007cc ELF_LITERAL sys_mount
+0*00007e0 LITUSE \.init\.text\+0x0*0000003
+0*00007e0 HINT sys_mount
+0*00007e4 GPDISP \.init\.text\+0x0*0000008
+0*000080c ELF_LITERAL kdevname
+0*0000814 LITUSE \.init\.text\+0x0*0000003
+0*0000814 HINT kdevname
+0*0000818 GPDISP \.init\.text\+0x0*0000004
+0*0000824 ELF_LITERAL printk
+0*0000838 LITUSE \.init\.text\+0x0*0000003
+0*0000828 GPRELHIGH \.bss
+0*000082c GPRELHIGH \.rodata\.str1\.1\+0x0*0000041
+0*0000830 GPRELLOW \.bss
+0*0000834 GPRELLOW \.rodata\.str1\.1\+0x0*0000041
+0*0000838 HINT printk
+0*000083c GPDISP \.init\.text\+0x0*0000004
+0*0000844 ELF_LITERAL printk
+0*0000850 LITUSE \.init\.text\+0x0*0000003
+0*0000848 GPRELHIGH \.rodata\.str1\.1\+0x0*000006a
+0*000084c GPRELLOW \.rodata\.str1\.1\+0x0*000006a
+0*0000850 HINT printk
+0*0000854 GPDISP \.init\.text\+0x0*0000004
+0*0000860 ELF_LITERAL kdevname
+0*0000868 LITUSE \.init\.text\+0x0*0000003
+0*0000868 HINT kdevname
+0*000086c GPDISP \.init\.text\+0x0*0000004
+0*0000878 GPRELHIGH \.rodata\.str1\.1\+0x0*0000097
+0*000087c GPRELLOW \.rodata\.str1\.1\+0x0*0000097
+0*0000880 ELF_LITERAL panic
+0*0000884 LITUSE \.init\.text\+0x0*0000003
+0*0000884 HINT panic
+0*0000890 ELF_LITERAL strlen
+0*0000894 LITUSE \.init\.text\+0x0*0000003
+0*0000894 HINT strlen
+0*0000898 GPDISP \.init\.text\+0x0*0000008
+0*00008b0 ELF_LITERAL ROOT_DEV
+0*00008b4 ELF_LITERAL kdevname
+0*00008c0 LITUSE \.init\.text\+0x0*0000003
+0*00008c0 HINT kdevname
+0*00008c4 GPDISP \.init\.text\+0x0*0000004
+0*00008d4 ELF_LITERAL names_cachep
+0*00008d8 ELF_LITERAL kmem_cache_free
+0*00008e4 LITUSE \.init\.text\+0x0*0000003
+0*00008e4 HINT kmem_cache_free
+0*00008e8 GPDISP \.init\.text\+0x0*0000004
+0*00008f4 ELF_LITERAL sys_chdir
+0*00008f8 LITUSE \.init\.text\+0x0*0000003
+0*00008f8 HINT sys_chdir
+0*00008fc GPDISP \.init\.text\+0x0*0000008
+0*0000908 GPRELHIGH \.rodata\.str1\.1\+0x0*00000ba
+0*000090c GPRELLOW \.rodata\.str1\.1\+0x0*00000ba
+0*0000918 ELF_LITERAL ROOT_DEV
+0*0000938 GPRELHIGH \.rodata\.str1\.1\+0x0*00000c4
+0*000093c GPRELLOW \.rodata\.str1\.1\+0x0*00000c4
+0*0000940 ELF_LITERAL printk
+0*000094c LITUSE \.init\.text\+0x0*0000003
+0*0000944 GPRELHIGH \.rodata\.str1\.1\+0x0*00000c5
+0*0000948 GPRELLOW \.rodata\.str1\.1\+0x0*00000c5
+0*000094c HINT printk
+0*0000950 GPDISP \.init\.text\+0x0*000000c
+0*0000990 GPDISP \.init\.text\+0x0*0000004
+0*0000998 ELF_LITERAL sys_unlink
+0*00009b4 LITUSE \.init\.text\+0x0*0000003
+0*00009b4 HINT sys_unlink
+0*00009b8 GPDISP \.init\.text\+0x0*0000004
+0*00009cc GPREL16 \.sbss
+0*00009f0 ELF_LITERAL sys_mknod
+0*00009f4 LITUSE \.init\.text\+0x0*0000003
+0*00009f4 HINT sys_mknod
+0*00009f8 GPDISP \.init\.text\+0x0*0000004
+0*0000a20 GPDISP \.init\.text\+0x0*0000004
+0*0000a28 GPRELHIGH \.rodata\.str1\.1\+0x0*00000eb
+0*0000a2c GPRELLOW \.rodata\.str1\.1\+0x0*00000eb
+0*0000a40 GPDISP \.init\.text\+0x0*0000004
+0*0000a48 ELF_LITERAL ROOT_DEV
+0*0000a50 GPRELHIGH \.bss
+0*0000a58 GPRELLOW \.bss
+0*0000a60 GPRELHIGH \.rodata\.str1\.1\+0x0*00000eb
+0*0000a64 GPRELLOW \.rodata\.str1\.1\+0x0*00000eb
+0*0000a7c GPREL16 root_mountflags
+0*0000aa0 GPDISP \.init\.text\+0x0*0000004
+0*0000aa8 GPRELHIGH \.rodata\.str1\.1\+0x0*00000f5
+0*0000aac GPRELLOW \.rodata\.str1\.1\+0x0*00000f5
+
+
+RELOCATION RECORDS FOR \[\.init\.setup\]:
+OFFSET *TYPE *VALUE
+0*0000000 REFQUAD \.init\.data\+0x0*0000004
+0*0000008 REFQUAD \.init\.text
+0*0000010 REFQUAD \.init\.data\+0x0*0000012
+0*0000018 REFQUAD \.init\.text\+0x0*0000050
+0*0000020 REFQUAD \.init\.data\+0x0*0000015
+0*0000028 REFQUAD \.init\.text\+0x0*0000080
+0*0000030 REFQUAD \.init\.data\+0x0*0000018
+0*0000038 REFQUAD \.init\.text\+0x0*00005a0
+0*0000040 REFQUAD \.init\.data\+0x0*000001e
+0*0000048 REFQUAD \.init\.text\+0x0*00005f0
+0*0000050 REFQUAD \.init\.data\+0x0*0000029
+0*0000058 REFQUAD \.init\.text\+0x0*0000610
+
+
+RELOCATION RECORDS FOR \[\.eh_frame\]:
+OFFSET *TYPE *VALUE
+0*000001c SREL32 \.init\.text
+0*0000034 SREL32 \.init\.text\+0x0*0000050
+0*0000048 SREL32 \.init\.text\+0x0*0000080
+0*000005c SREL32 \.init\.text\+0x0*00000b0
+0*0000080 SREL32 \.init\.text\+0x0*00002c0
+0*00000a0 SREL32 \.init\.text\+0x0*00005a0
+0*00000b8 SREL32 \.init\.text\+0x0*00005f0
+0*00000cc SREL32 \.init\.text\+0x0*0000610
+0*00000e0 SREL32 \.init\.text\+0x0*0000630
+0*00000fc SREL32 \.init\.text\+0x0*0000750
+0*0000120 SREL32 \.init\.text\+0x0*0000990
+0*000013c SREL32 \.init\.text\+0x0*0000a10
+0*0000150 SREL32 \.init\.text\+0x0*0000a20
+0*0000164 SREL32 \.init\.text\+0x0*0000a40
+0*000017c SREL32 \.init\.text\+0x0*0000a90
+0*0000190 SREL32 \.init\.text\+0x0*0000aa0
+0*00001a4 SREL32 \.text
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.s
new file mode 100644
index 00000000..2c68fc50
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-reloc-8.s
@@ -0,0 +1,1119 @@
+ .set noat
+ .set noreorder
+ .set nomacro
+ .arch ev6
+ .section .init.data,"aw",@progbits
+ .align 2
+ .type mount_initrd, @object
+ .size mount_initrd, 4
+mount_initrd:
+ .long 0
+ .globl root_mountflags
+ .section .sdata,"aw",@progbits
+ .align 2
+ .type root_mountflags, @object
+ .size root_mountflags, 4
+root_mountflags:
+ .long 32769
+ .section .sbss,"aw"
+ .type do_devfs, @object
+ .size do_devfs, 4
+ .align 2
+do_devfs:
+ .zero 4
+ .section .init.text,"ax",@progbits
+ .align 2
+ .align 4
+ .ent load_ramdisk
+load_ramdisk:
+ .frame $30,16,$26,0
+ .mask 0x4000000,-16
+ ldah $29,0($27) !gpdisp!1
+ lda $29,0($29) !gpdisp!1
+$load_ramdisk..ng:
+ ldq $27,simple_strtol($29) !literal!2
+ lda $30,-16($30)
+ mov $31,$17
+ mov $31,$18
+ stq $26,0($30)
+ .prologue 1
+ jsr $26,($27),simple_strtol !lituse_jsr!2
+ ldah $29,0($26) !gpdisp!3
+ lda $29,0($29) !gpdisp!3
+ ldq $26,0($30)
+ and $0,3,$0
+ ldah $1,rd_doload($29) !gprelhigh
+ stl $0,rd_doload($1) !gprellow
+ lda $0,1($31)
+ lda $30,16($30)
+ ret $31,($26),1
+ .end load_ramdisk
+ .section .init.data
+ .type __setup_str_load_ramdisk, @object
+ .size __setup_str_load_ramdisk, 14
+__setup_str_load_ramdisk:
+ .ascii "load_ramdisk=\0"
+ .section .init.setup,"aw",@progbits
+ .align 3
+ .type __setup_load_ramdisk, @object
+ .size __setup_load_ramdisk, 16
+__setup_load_ramdisk:
+ .quad __setup_str_load_ramdisk
+ .quad load_ramdisk
+ .section .init.text
+ .align 2
+ .align 4
+ .ent readonly
+readonly:
+ .frame $30,0,$26,0
+ ldah $29,0($27) !gpdisp!4
+ lda $29,0($29) !gpdisp!4
+$readonly..ng:
+ .prologue 1
+ ldbu $1,0($16)
+ mov $31,$0
+ bne $1,$L167
+ ldl $1,root_mountflags($29) !gprel
+ lda $0,1($31)
+ bis $1,1,$1
+ stl $1,root_mountflags($29) !gprel
+$L167:
+ ret $31,($26),1
+ .end readonly
+ .align 2
+ .align 4
+ .ent readwrite
+readwrite:
+ .frame $30,0,$26,0
+ ldah $29,0($27) !gpdisp!5
+ lda $29,0($29) !gpdisp!5
+$readwrite..ng:
+ .prologue 1
+ ldbu $1,0($16)
+ mov $31,$0
+ bne $1,$L169
+ ldl $1,root_mountflags($29) !gprel
+ lda $0,1($31)
+ bic $1,1,$1
+ stl $1,root_mountflags($29) !gprel
+$L169:
+ ret $31,($26),1
+ .end readwrite
+ .section .init.data
+ .type __setup_str_readonly, @object
+ .size __setup_str_readonly, 3
+__setup_str_readonly:
+ .ascii "ro\0"
+ .section .init.setup
+ .align 3
+ .type __setup_readonly, @object
+ .size __setup_readonly, 16
+__setup_readonly:
+ .quad __setup_str_readonly
+ .quad readonly
+ .section .init.data
+ .type __setup_str_readwrite, @object
+ .size __setup_str_readwrite, 3
+__setup_str_readwrite:
+ .ascii "rw\0"
+ .section .init.setup
+ .align 3
+ .type __setup_readwrite, @object
+ .size __setup_readwrite, 16
+__setup_readwrite:
+ .quad __setup_str_readwrite
+ .quad readwrite
+ .section .rodata.str1.1,"aMS",@progbits,1
+$LC1:
+ .ascii "/sys/block/%s/dev\0"
+$LC2:
+ .ascii "/sys/block/%s/range\0"
+ .section .init.text
+ .align 2
+ .align 4
+ .ent try_name
+try_name:
+ .frame $30,160,$26,0
+ .mask 0x4003e00,-160
+ ldah $29,0($27) !gpdisp!6
+ lda $29,0($29) !gpdisp!6
+$try_name..ng:
+ lda $30,-160($30)
+ ldq $27,sprintf($29) !literal!25
+ stq $10,16($30)
+ stq $12,32($30)
+ mov $16,$10
+ mov $17,$12
+ ldah $17,$LC1($29) !gprelhigh
+ stq $26,0($30)
+ stq $9,8($30)
+ lda $16,48($30)
+ stq $11,24($30)
+ stq $13,40($30)
+ .prologue 1
+ mov $10,$18
+ lda $17,$LC1($17) !gprellow
+ jsr $26,($27),sprintf !lituse_jsr!25
+ ldah $29,0($26) !gpdisp!26
+ lda $29,0($29) !gpdisp!26
+ lda $16,48($30)
+ mov $31,$18
+ mov $31,$17
+ ldq $27,sys_open($29) !literal!23
+ jsr $26,($27),sys_open !lituse_jsr!23
+ ldah $29,0($26) !gpdisp!24
+ addl $31,$0,$9
+ lda $29,0($29) !gpdisp!24
+ blt $9,$L174
+ ldq $27,sys_read($29) !literal!21
+ lda $11,112($30)
+ mov $9,$16
+ lda $18,32($31)
+ mov $11,$17
+ jsr $26,($27),sys_read !lituse_jsr!21
+ ldah $29,0($26) !gpdisp!22
+ lda $29,0($29) !gpdisp!22
+ addl $31,$9,$16
+ addl $31,$0,$9
+ ldq $27,sys_close($29) !literal!19
+ jsr $26,($27),sys_close !lituse_jsr!19
+ ldah $29,0($26) !gpdisp!20
+ cmpeq $9,32,$2
+ cmple $9,0,$1
+ lda $29,0($29) !gpdisp!20
+ bis $1,$2,$1
+ bne $1,$L174
+ subl $9,1,$2
+ addq $11,$2,$0
+ ldbu $1,0($0)
+ cmpeq $1,10,$1
+ bne $1,$L189
+$L174:
+ mov $31,$0
+$L171:
+ ldq $26,0($30)
+ ldq $9,8($30)
+ ldq $10,16($30)
+ ldq $11,24($30)
+ ldq $12,32($30)
+ ldq $13,40($30)
+ lda $30,160($30)
+ ret $31,($26),1
+$L189:
+ ldq $27,simple_strtoul($29) !literal!17
+ mov $11,$16
+ lda $17,144($30)
+ lda $18,16($31)
+ stb $31,0($0)
+ jsr $26,($27),simple_strtoul !lituse_jsr!17
+ ldah $29,0($26) !gpdisp!18
+ ldq $1,144($30)
+ lda $29,0($29) !gpdisp!18
+ addl $31,$0,$13
+ ldbu $2,0($1)
+ bne $2,$L174
+ mov $13,$0
+ beq $12,$L171
+ ldq $27,sprintf($29) !literal!15
+ ldah $17,$LC2($29) !gprelhigh
+ mov $10,$18
+ lda $16,48($30)
+ lda $17,$LC2($17) !gprellow
+ jsr $26,($27),sprintf !lituse_jsr!15
+ ldah $29,0($26) !gpdisp!16
+ lda $29,0($29) !gpdisp!16
+ lda $16,48($30)
+ mov $31,$18
+ mov $31,$17
+ ldq $27,sys_open($29) !literal!13
+ jsr $26,($27),sys_open !lituse_jsr!13
+ ldah $29,0($26) !gpdisp!14
+ addl $31,$0,$9
+ lda $29,0($29) !gpdisp!14
+ blt $9,$L174
+ ldq $27,sys_read($29) !literal!11
+ mov $9,$16
+ mov $11,$17
+ lda $18,32($31)
+ jsr $26,($27),sys_read !lituse_jsr!11
+ ldah $29,0($26) !gpdisp!12
+ lda $29,0($29) !gpdisp!12
+ addl $31,$9,$16
+ addl $31,$0,$9
+ ldq $27,sys_close($29) !literal!9
+ jsr $26,($27),sys_close !lituse_jsr!9
+ ldah $29,0($26) !gpdisp!10
+ cmpeq $9,32,$2
+ cmple $9,0,$1
+ lda $29,0($29) !gpdisp!10
+ bis $1,$2,$1
+ bne $1,$L174
+ subl $9,1,$2
+ addq $11,$2,$0
+ ldbu $1,0($0)
+ cmpeq $1,10,$1
+ beq $1,$L174
+ ldq $27,simple_strtoul($29) !literal!7
+ mov $11,$16
+ lda $17,144($30)
+ lda $18,10($31)
+ stb $31,0($0)
+ jsr $26,($27),simple_strtoul !lituse_jsr!7
+ ldah $29,0($26) !gpdisp!8
+ ldq $1,144($30)
+ lda $29,0($29) !gpdisp!8
+ addl $31,$0,$0
+ ldbu $2,0($1)
+ bne $2,$L174
+ cmplt $12,$0,$1
+ addl $13,$12,$0
+ bne $1,$L171
+ br $31,$L174
+ .end try_name
+ .section .rodata.str1.1
+$LC3:
+ .ascii "/sys\0"
+$LC4:
+ .ascii "sysfs\0"
+$LC5:
+ .ascii "/dev/\0"
+$LC6:
+ .ascii "nfs\0"
+ .section .init.text
+ .align 2
+ .align 4
+ .globl name_to_dev_t
+ .ent name_to_dev_t
+name_to_dev_t:
+ .frame $30,96,$26,0
+ .mask 0x4001e00,-96
+ ldah $29,0($27) !gpdisp!27
+ lda $29,0($29) !gpdisp!27
+$name_to_dev_t..ng:
+ lda $30,-96($30)
+ ldq $27,sys_mkdir($29) !literal!46
+ lda $17,448($31)
+ stq $12,32($30)
+ stq $9,8($30)
+ ldah $12,$LC3($29) !gprelhigh
+ lda $9,$LC3($12) !gprellow
+ stq $10,16($30)
+ stq $11,24($30)
+ mov $16,$10
+ stq $26,0($30)
+ .prologue 1
+ mov $31,$11
+ mov $9,$16
+ jsr $26,($27),sys_mkdir !lituse_jsr!46
+ ldah $29,0($26) !gpdisp!47
+ lda $29,0($29) !gpdisp!47
+ mov $9,$17
+ mov $31,$19
+ mov $31,$20
+ ldah $16,$LC4($29) !gprelhigh
+ ldq $27,sys_mount($29) !literal!44
+ lda $16,$LC4($16) !gprellow
+ mov $16,$18
+ jsr $26,($27),sys_mount !lituse_jsr!44
+ ldah $29,0($26) !gpdisp!45
+ lda $29,0($29) !gpdisp!45
+ blt $0,$L192
+ ldq $27,memcmp($29) !literal!42
+ ldah $17,$LC5($29) !gprelhigh
+ mov $10,$16
+ lda $18,5($31)
+ lda $17,$LC5($17) !gprellow
+ jsr $26,($27),memcmp !lituse_jsr!42
+ ldah $29,0($26) !gpdisp!43
+ lda $29,0($29) !gpdisp!43
+ bne $0,$L219
+ ldq $27,memcmp($29) !literal!38
+ lda $10,5($10)
+ ldah $17,$LC6($29) !gprelhigh
+ lda $18,4($31)
+ lda $11,255($31)
+ mov $10,$16
+ lda $17,$LC6($17) !gprellow
+ jsr $26,($27),memcmp !lituse_jsr!38
+ ldah $29,0($26) !gpdisp!39
+ lda $29,0($29) !gpdisp!39
+ beq $0,$L196
+ ldq $27,strlen($29) !literal!36
+ mov $10,$16
+ jsr $26,($27),strlen !lituse_jsr!36
+ ldah $29,0($26) !gpdisp!37
+ cmpule $0,31,$0
+ lda $29,0($29) !gpdisp!37
+ beq $0,$L195
+ ldq $27,strcpy($29) !literal!34
+ mov $10,$17
+ lda $16,48($30)
+ jsr $26,($27),strcpy !lituse_jsr!34
+ ldah $29,0($26) !gpdisp!35
+ ldbu $1,48($30)
+ lda $16,48($30)
+ lda $29,0($29) !gpdisp!35
+ mov $16,$2
+ stq $16,80($30)
+ beq $1,$L217
+ lda $3,46($31)
+ .align 4
+$L204:
+ ldbu $1,0($2)
+ cmpeq $1,47,$1
+ bne $1,$L220
+$L201:
+ lda $16,1($16)
+ stq $16,80($30)
+ mov $16,$2
+ ldbu $1,0($16)
+ bne $1,$L204
+$L217:
+ lda $16,48($30)
+ mov $31,$17
+ bsr $26,try_name !samegp
+ addl $31,$0,$11
+ bne $11,$L196
+ ldq $16,80($30)
+ lda $2,48($30)
+ cmpule $16,$2,$1
+ mov $16,$3
+ bne $1,$L207
+ ldq $4,_ctype($29) !literal
+ ldbu $1,-1($16)
+ addq $1,$4,$1
+ ldbu $2,0($1)
+ and $2,4,$2
+ beq $2,$L207
+ .align 4
+$L210:
+ lda $16,-1($3)
+ lda $2,48($30)
+ cmpule $16,$2,$1
+ stq $16,80($30)
+ mov $16,$3
+ bne $1,$L207
+ ldbu $1,-1($16)
+ addq $1,$4,$1
+ ldbu $2,0($1)
+ and $2,4,$2
+ bne $2,$L210
+ .align 4
+$L207:
+ lda $2,48($30)
+ cmpeq $16,$2,$1
+ bne $1,$L195
+ ldbu $1,0($16)
+ sextb $1,$1
+ beq $1,$L195
+ cmpeq $1,48,$1
+ bne $1,$L195
+ ldq $27,simple_strtoul($29) !literal!32
+ mov $31,$17
+ lda $18,10($31)
+ jsr $26,($27),simple_strtoul !lituse_jsr!32
+ ldah $29,0($26) !gpdisp!33
+ ldq $1,80($30)
+ addl $31,$0,$9
+ lda $29,0($29) !gpdisp!33
+ lda $16,48($30)
+ mov $9,$17
+ stb $31,0($1)
+ bsr $26,try_name !samegp
+ addl $31,$0,$11
+ bne $11,$L196
+ ldq $4,80($30)
+ lda $1,50($30)
+ cmpult $4,$1,$1
+ bne $1,$L195
+ ldbu $1,-2($4)
+ ldq $3,_ctype($29) !literal
+ addq $1,$3,$1
+ ldbu $2,0($1)
+ and $2,4,$2
+ beq $2,$L195
+ ldbu $1,-1($4)
+ cmpeq $1,112,$1
+ bne $1,$L221
+ .align 4
+$L195:
+ mov $31,$11
+$L196:
+ ldq $27,sys_umount($29) !literal!30
+ lda $16,$LC3($12) !gprellow
+ mov $31,$17
+ jsr $26,($27),sys_umount !lituse_jsr!30
+ ldah $29,0($26) !gpdisp!31
+ lda $29,0($29) !gpdisp!31
+$L192:
+ ldq $27,sys_rmdir($29) !literal!28
+ lda $16,$LC3($12) !gprellow
+ jsr $26,($27),sys_rmdir !lituse_jsr!28
+ ldah $29,0($26) !gpdisp!29
+ mov $11,$0
+ ldq $26,0($30)
+ ldq $9,8($30)
+ lda $29,0($29) !gpdisp!29
+ ldq $10,16($30)
+ ldq $11,24($30)
+ ldq $12,32($30)
+ lda $30,96($30)
+ ret $31,($26),1
+$L221:
+ stb $31,-1($4)
+ mov $9,$17
+ lda $16,48($30)
+ bsr $26,try_name !samegp
+ addl $31,$0,$11
+ br $31,$L196
+ .align 4
+$L220:
+ stb $3,0($2)
+ ldq $16,80($30)
+ br $31,$L201
+ .align 4
+$L219:
+ ldq $27,simple_strtoul($29) !literal!40
+ mov $10,$16
+ lda $17,80($30)
+ lda $18,16($31)
+ jsr $26,($27),simple_strtoul !lituse_jsr!40
+ ldah $29,0($26) !gpdisp!41
+ ldq $1,80($30)
+ lda $29,0($29) !gpdisp!41
+ addl $31,$0,$11
+ ldbu $2,0($1)
+ beq $2,$L196
+ br $31,$L195
+ .end name_to_dev_t
+ .align 2
+ .align 4
+ .ent root_dev_setup
+root_dev_setup:
+ .frame $30,16,$26,0
+ .mask 0x4000200,-16
+ ldah $29,0($27) !gpdisp!48
+ lda $29,0($29) !gpdisp!48
+$root_dev_setup..ng:
+ lda $30,-16($30)
+ ldq $27,strncpy($29) !literal!49
+ mov $16,$17
+ lda $18,64($31)
+ stq $9,8($30)
+ stq $26,0($30)
+ .prologue 1
+ ldah $9,saved_root_name($29) !gprelhigh
+ lda $9,saved_root_name($9) !gprellow
+ mov $9,$16
+ jsr $26,($27),strncpy !lituse_jsr!49
+ ldah $29,0($26) !gpdisp!50
+ stb $31,63($9)
+ lda $0,1($31)
+ lda $29,0($29) !gpdisp!50
+ ldq $26,0($30)
+ ldq $9,8($30)
+ lda $30,16($30)
+ ret $31,($26),1
+ .end root_dev_setup
+ .section .init.data
+ .type __setup_str_root_dev_setup, @object
+ .size __setup_str_root_dev_setup, 6
+__setup_str_root_dev_setup:
+ .ascii "root=\0"
+ .section .init.setup
+ .align 3
+ .type __setup_root_dev_setup, @object
+ .size __setup_root_dev_setup, 16
+__setup_root_dev_setup:
+ .quad __setup_str_root_dev_setup
+ .quad root_dev_setup
+ .section .init.text
+ .align 2
+ .align 4
+ .ent root_data_setup
+root_data_setup:
+ .frame $30,0,$26,0
+ ldah $29,0($27) !gpdisp!51
+ lda $29,0($29) !gpdisp!51
+$root_data_setup..ng:
+ .prologue 1
+ ldah $1,root_mount_data($29) !gprelhigh
+ lda $0,1($31)
+ stq $16,root_mount_data($1) !gprellow
+ ret $31,($26),1
+ .end root_data_setup
+ .align 2
+ .align 4
+ .ent fs_names_setup
+fs_names_setup:
+ .frame $30,0,$26,0
+ ldah $29,0($27) !gpdisp!52
+ lda $29,0($29) !gpdisp!52
+$fs_names_setup..ng:
+ .prologue 1
+ ldah $1,root_fs_names($29) !gprelhigh
+ lda $0,1($31)
+ stq $16,root_fs_names($1) !gprellow
+ ret $31,($26),1
+ .end fs_names_setup
+ .section .init.data
+ .type __setup_str_root_data_setup, @object
+ .size __setup_str_root_data_setup, 11
+__setup_str_root_data_setup:
+ .ascii "rootflags=\0"
+ .section .init.setup
+ .align 3
+ .type __setup_root_data_setup, @object
+ .size __setup_root_data_setup, 16
+__setup_root_data_setup:
+ .quad __setup_str_root_data_setup
+ .quad root_data_setup
+ .section .init.data
+ .type __setup_str_fs_names_setup, @object
+ .size __setup_str_fs_names_setup, 12
+__setup_str_fs_names_setup:
+ .ascii "rootfstype=\0"
+ .section .init.setup
+ .align 3
+ .type __setup_fs_names_setup, @object
+ .size __setup_fs_names_setup, 16
+__setup_fs_names_setup:
+ .quad __setup_str_fs_names_setup
+ .quad fs_names_setup
+ .section .init.text
+ .align 2
+ .align 4
+ .ent get_fs_names
+get_fs_names:
+ .frame $30,32,$26,0
+ .mask 0x4000600,-32
+ ldah $29,0($27) !gpdisp!53
+ lda $29,0($29) !gpdisp!53
+$get_fs_names..ng:
+ ldah $1,root_fs_names($29) !gprelhigh
+ lda $30,-32($30)
+ ldq $17,root_fs_names($1) !gprellow
+ stq $10,16($30)
+ mov $16,$10
+ stq $26,0($30)
+ stq $9,8($30)
+ .prologue 1
+ beq $17,$L226
+ ldq $27,strcpy($29) !literal!58
+ jsr $26,($27),strcpy !lituse_jsr!58
+ ldah $29,0($26) !gpdisp!59
+ ldbu $1,0($10)
+ lda $29,0($29) !gpdisp!59
+ lda $10,1($10)
+ beq $1,$L232
+ .align 4
+$L231:
+ ldbu $1,-1($10)
+ cmpeq $1,44,$1
+ bne $1,$L245
+$L227:
+ ldbu $1,0($10)
+ lda $10,1($10)
+ bne $1,$L231
+ .align 4
+$L232:
+ stb $31,0($10)
+ ldq $26,0($30)
+ ldq $9,8($30)
+ ldq $10,16($30)
+ lda $30,32($30)
+ ret $31,($26),1
+ .align 4
+$L245:
+ stb $31,-1($10)
+ br $31,$L227
+$L226:
+ ldq $27,get_filesystem_list($29) !literal!56
+ jsr $26,($27),get_filesystem_list !lituse_jsr!56
+ ldah $29,0($26) !gpdisp!57
+ addq $10,$0,$0
+ lda $9,-1($10)
+ lda $29,0($29) !gpdisp!57
+ stb $31,0($0)
+ beq $9,$L232
+ .align 4
+$L241:
+ ldq $27,strchr($29) !literal!54
+ lda $9,1($9)
+ lda $17,10($31)
+ mov $9,$16
+ jsr $26,($27),strchr !lituse_jsr!54
+ ldah $29,0($26) !gpdisp!55
+ ldbu $1,0($9)
+ lda $29,0($29) !gpdisp!55
+ lda $9,1($9)
+ cmpeq $1,9,$1
+ bne $1,$L238
+$L235:
+ mov $0,$9
+ bne $0,$L241
+ br $31,$L232
+ .align 4
+$L238:
+ ldbu $1,0($9)
+ lda $9,1($9)
+ cmpeq $1,10,$2
+ stb $1,0($10)
+ lda $10,1($10)
+ beq $2,$L238
+ stb $31,-1($10)
+ br $31,$L235
+ .end get_fs_names
+ .section .rodata.str1.1
+$LC7:
+ .ascii "/root\0"
+$LC8:
+ .ascii "VFS: Cannot open root device \"%s\" or %s\12\0"
+$LC9:
+ .ascii "Please append a correct \"root=\" boot option\12\0"
+$LC10:
+ .ascii "VFS: Unable to mount root fs on %s\0"
+$LC12:
+ .ascii " readonly\0"
+$LC13:
+ .ascii "\0"
+$LC11:
+ .ascii "VFS: Mounted root (%s filesystem)%s.\12\0"
+ .section .init.text
+ .align 2
+ .align 4
+ .ent mount_block_root
+mount_block_root:
+ .frame $30,64,$26,0
+ .mask 0x400fe00,-64
+ ldah $29,0($27) !gpdisp!60
+ lda $29,0($29) !gpdisp!60
+$mount_block_root..ng:
+ ldq $1,names_cachep($29) !literal
+ lda $30,-64($30)
+ ldq $27,kmem_cache_alloc($29) !literal!82
+ stq $12,32($30)
+ stq $11,24($30)
+ mov $16,$12
+ mov $17,$11
+ stq $26,0($30)
+ stq $9,8($30)
+ lda $17,464($31)
+ ldq $16,0($1)
+ stq $10,16($30)
+ stq $13,40($30)
+ stq $14,48($30)
+ stq $15,56($30)
+ .prologue 1
+ jsr $26,($27),kmem_cache_alloc !lituse_jsr!82
+ ldah $29,0($26) !gpdisp!83
+ lda $29,0($29) !gpdisp!83
+ mov $0,$16
+ mov $0,$10
+ bsr $26,get_fs_names !samegp
+$L247:
+ ldbu $1,0($10)
+ mov $10,$9
+ beq $1,$L267
+ ldah $1,$LC7($29) !gprelhigh
+ ldah $13,root_mount_data($29) !gprelhigh
+ ldq $15,ROOT_DEV($29) !literal
+ lda $14,$LC7($1) !gprellow
+$L262:
+ ldq $20,root_mount_data($13) !gprellow
+ ldq $27,sys_mount($29) !literal!80
+ mov $9,$18
+ mov $12,$16
+ mov $14,$17
+ mov $11,$19
+ jsr $26,($27),sys_mount !lituse_jsr!80
+ ldah $29,0($26) !gpdisp!81
+ addl $31,$0,$0
+ lda $29,0($29) !gpdisp!81
+ mov $9,$16
+ lda $1,13($0)
+ lda $2,22($0)
+ beq $1,$L255
+ bgt $1,$L259
+ beq $2,$L250
+$L252:
+ ldl $1,0($15)
+ ldq $27,kdevname($29) !literal!78
+ bis $31,$1,$16
+ jsr $26,($27),kdevname !lituse_jsr!78
+ ldah $29,0($26) !gpdisp!79
+ lda $29,0($29) !gpdisp!79
+ mov $0,$18
+ ldq $27,printk($29) !literal!76
+ ldah $17,root_device_name($29) !gprelhigh
+ ldah $16,$LC8($29) !gprelhigh
+ lda $17,root_device_name($17) !gprellow
+ lda $16,$LC8($16) !gprellow
+ jsr $26,($27),printk !lituse_jsr!76
+ ldah $29,0($26) !gpdisp!77
+ lda $29,0($29) !gpdisp!77
+ ldq $27,printk($29) !literal!74
+ ldah $16,$LC9($29) !gprelhigh
+ lda $16,$LC9($16) !gprellow
+ jsr $26,($27),printk !lituse_jsr!74
+ ldah $29,0($26) !gpdisp!75
+ lda $29,0($29) !gpdisp!75
+ ldl $1,0($15)
+ ldq $27,kdevname($29) !literal!72
+ bis $31,$1,$16
+ jsr $26,($27),kdevname !lituse_jsr!72
+ ldah $29,0($26) !gpdisp!73
+ lda $29,0($29) !gpdisp!73
+$L269:
+ mov $0,$17
+ ldah $16,$LC10($29) !gprelhigh
+ lda $16,$LC10($16) !gprellow
+ ldq $27,panic($29) !literal!67
+ jsr $26,($27),panic !lituse_jsr!67
+ .align 4
+$L250:
+ ldq $27,strlen($29) !literal!70
+ jsr $26,($27),strlen !lituse_jsr!70
+ ldah $29,0($26) !gpdisp!71
+ addq $9,$0,$0
+ lda $29,0($29) !gpdisp!71
+ ldbu $1,1($0)
+ lda $9,1($0)
+ bne $1,$L262
+$L267:
+ ldq $1,ROOT_DEV($29) !literal
+ ldq $27,kdevname($29) !literal!68
+ ldl $2,0($1)
+ bis $31,$2,$16
+ jsr $26,($27),kdevname !lituse_jsr!68
+ ldah $29,0($26) !gpdisp!69
+ lda $29,0($29) !gpdisp!69
+ br $31,$L269
+$L259:
+ bne $0,$L252
+$L254:
+ ldq $1,names_cachep($29) !literal
+ ldq $27,kmem_cache_free($29) !literal!65
+ mov $10,$17
+ ldq $16,0($1)
+ jsr $26,($27),kmem_cache_free !lituse_jsr!65
+ ldah $29,0($26) !gpdisp!66
+ lda $29,0($29) !gpdisp!66
+ mov $14,$16
+ ldq $27,sys_chdir($29) !literal!63
+ jsr $26,($27),sys_chdir !lituse_jsr!63
+ ldah $29,0($26) !gpdisp!64
+ ldq $4,64($8)
+ lda $29,0($29) !gpdisp!64
+ ldah $1,$LC12($29) !gprelhigh
+ lda $18,$LC12($1) !gprellow
+ ldq $2,1264($4)
+ ldq $3,40($2)
+ ldq $2,ROOT_DEV($29) !literal
+ ldq $1,40($3)
+ ldl $3,16($1)
+ ldq $4,56($1)
+ ldq $5,96($1)
+ stl $3,0($2)
+ ldq $17,0($4)
+ blbs $5,$L265
+ ldah $1,$LC13($29) !gprelhigh
+ lda $18,$LC13($1) !gprellow
+$L265:
+ ldq $27,printk($29) !literal!61
+ ldah $16,$LC11($29) !gprelhigh
+ lda $16,$LC11($16) !gprellow
+ jsr $26,($27),printk !lituse_jsr!61
+ ldah $29,0($26) !gpdisp!62
+ ldq $26,0($30)
+ ldq $9,8($30)
+ lda $29,0($29) !gpdisp!62
+ ldq $10,16($30)
+ ldq $11,24($30)
+ ldq $12,32($30)
+ ldq $13,40($30)
+ ldq $14,48($30)
+ ldq $15,56($30)
+ lda $30,64($30)
+ ret $31,($26),1
+$L255:
+ bis $11,1,$11
+ br $31,$L247
+ .end mount_block_root
+ .align 2
+ .align 4
+ .ent create_dev
+create_dev:
+ .frame $30,96,$26,0
+ .mask 0x4000600,-96
+ ldah $29,0($27) !gpdisp!84
+ lda $29,0($29) !gpdisp!84
+$create_dev..ng:
+ ldq $27,sys_unlink($29) !literal!87
+ lda $30,-96($30)
+ stq $9,8($30)
+ stq $10,16($30)
+ mov $16,$9
+ mov $17,$10
+ stq $26,0($30)
+ .prologue 1
+ jsr $26,($27),sys_unlink !lituse_jsr!87
+ ldah $29,0($26) !gpdisp!88
+ lda $29,0($29) !gpdisp!88
+ lda $0,-1($31)
+ mov $9,$16
+ mov $10,$18
+ ldl $1,do_devfs($29) !gprel
+ lda $17,24960($31)
+ beq $1,$L280
+$L270:
+ ldq $26,0($30)
+ ldq $9,8($30)
+ ldq $10,16($30)
+ lda $30,96($30)
+ ret $31,($26),1
+ .align 4
+$L280:
+ ldq $27,sys_mknod($29) !literal!85
+ jsr $26,($27),sys_mknod !lituse_jsr!85
+ ldah $29,0($26) !gpdisp!86
+ lda $29,0($29) !gpdisp!86
+ addl $31,$0,$0
+ br $31,$L270
+ .end create_dev
+ .align 2
+ .align 4
+ .ent rd_load_image
+$rd_load_image..ng:
+rd_load_image:
+ .frame $30,0,$26,0
+ .prologue 0
+ mov $31,$0
+ ret $31,($26),1
+ .end rd_load_image
+ .section .rodata.str1.1
+$LC14:
+ .ascii "/dev/root\0"
+ .section .init.text
+ .align 2
+ .align 4
+ .ent rd_load_disk
+rd_load_disk:
+ .frame $30,0,$26,0
+ ldah $29,0($27) !gpdisp!89
+ lda $29,0($29) !gpdisp!89
+$rd_load_disk..ng:
+ .prologue 1
+ ldah $16,$LC14($29) !gprelhigh
+ lda $16,$LC14($16) !gprellow
+ br $31,rd_load_image !samegp
+ .end rd_load_disk
+ .align 2
+ .align 4
+ .ent mount_root
+mount_root:
+ .frame $30,16,$26,0
+ .mask 0x4000200,-16
+ ldah $29,0($27) !gpdisp!90
+ lda $29,0($29) !gpdisp!90
+$mount_root..ng:
+ ldq $1,ROOT_DEV($29) !literal
+ lda $30,-16($30)
+ ldah $18,root_device_name($29) !gprelhigh
+ stq $9,8($30)
+ lda $18,root_device_name($18) !gprellow
+ stq $26,0($30)
+ .prologue 1
+ ldah $9,$LC14($29) !gprelhigh
+ lda $9,$LC14($9) !gprellow
+ ldl $17,0($1)
+ mov $9,$16
+ bsr $26,create_dev !samegp
+ ldq $26,0($30)
+ mov $9,$16
+ ldl $17,root_mountflags($29) !gprel
+ ldq $9,8($30)
+ lda $30,16($30)
+ br $31,mount_block_root !samegp
+ .end mount_root
+ .align 2
+ .align 4
+ .ent handle_initrd
+$handle_initrd..ng:
+handle_initrd:
+ .frame $30,0,$26,0
+ .prologue 0
+ ret $31,($26),1
+ .end handle_initrd
+ .section .rodata.str1.1
+$LC15:
+ .ascii "/dev/initrd\0"
+ .section .init.text
+ .align 2
+ .align 4
+ .ent initrd_load
+initrd_load:
+ .frame $30,0,$26,0
+ ldah $29,0($27) !gpdisp!91
+ lda $29,0($29) !gpdisp!91
+$initrd_load..ng:
+ .prologue 1
+ ldah $16,$LC15($29) !gprelhigh
+ lda $16,$LC15($16) !gprellow
+ br $31,rd_load_image !samegp
+ .end initrd_load
+ .section .rodata.str1.1
+$LC16:
+ .ascii "/dev\0"
+$LC17:
+ .ascii ".\0"
+$LC18:
+ .ascii "/\0"
+ .text
+ .align 2
+ .align 4
+ .globl prepare_namespace
+ .ent prepare_namespace
+prepare_namespace:
+ .frame $30,32,$26,0
+ .mask 0x4000e00,-32
+ ldah $29,0($27) !gpdisp!92
+ lda $29,0($29) !gpdisp!92
+$prepare_namespace..ng:
+ lda $30,-32($30)
+ stq $10,16($30)
+ stq $9,8($30)
+ ldah $9,saved_root_name($29) !gprelhigh
+ ldq $10,ROOT_DEV($29) !literal
+ stq $11,24($30)
+ stq $26,0($30)
+ .prologue 1
+ ldbu $2,saved_root_name($9) !gprellow
+ ldl $1,0($10)
+ zapnot $1,15,$1
+ srl $1,8,$1
+ cmpeq $1,2,$11
+ bne $2,$L296
+$L287:
+ ldl $17,0($10)
+ ldah $16,$LC14($29) !gprelhigh
+ mov $31,$18
+ lda $16,$LC14($16) !gprellow
+ bsr $26,create_dev !samegp
+ ldah $1,mount_initrd($29) !gprelhigh
+ ldl $2,mount_initrd($1) !gprellow
+ beq $2,$L290
+ bsr $26,initrd_load !samegp
+ beq $0,$L293
+ ldl $1,0($10)
+ lda $1,-256($1)
+ bne $1,$L297
+ .align 4
+$L293:
+ bsr $26,mount_root !samegp
+$L292:
+ ldq $27,sys_umount($29) !literal!98
+ ldah $16,$LC16($29) !gprelhigh
+ mov $31,$17
+ lda $16,$LC16($16) !gprellow
+ jsr $26,($27),sys_umount !lituse_jsr!98
+ ldah $29,0($26) !gpdisp!99
+ lda $29,0($29) !gpdisp!99
+ mov $31,$18
+ lda $19,8192($31)
+ mov $31,$20
+ ldah $9,$LC17($29) !gprelhigh
+ ldq $27,sys_mount($29) !literal!96
+ ldah $17,$LC18($29) !gprelhigh
+ lda $9,$LC17($9) !gprellow
+ lda $17,$LC18($17) !gprellow
+ mov $9,$16
+ jsr $26,($27),sys_mount !lituse_jsr!96
+ ldah $29,0($26) !gpdisp!97
+ lda $29,0($29) !gpdisp!97
+ mov $9,$16
+ ldq $27,sys_chroot($29) !literal!94
+ jsr $26,($27),sys_chroot !lituse_jsr!94
+ ldah $29,0($26) !gpdisp!95
+ lda $29,0($29) !gpdisp!95
+ ldq $1,security_ops($29) !literal
+ ldq $2,0($1)
+ ldq $27,184($2)
+ jsr $26,($27),0
+ ldah $29,0($26) !gpdisp!93
+ ldq $26,0($30)
+ ldq $9,8($30)
+ lda $29,0($29) !gpdisp!93
+ ldq $10,16($30)
+ ldq $11,24($30)
+ lda $30,32($30)
+ ret $31,($26),1
+$L297:
+ bsr $26,handle_initrd !samegp
+ br $31,$L292
+ .align 4
+$L290:
+ beq $11,$L293
+ ldah $1,rd_doload($29) !gprelhigh
+ ldl $2,rd_doload($1) !gprellow
+ beq $2,$L293
+ mov $31,$16
+ bsr $26,rd_load_disk !samegp
+ beq $0,$L293
+ lda $1,256($31)
+ stl $1,0($10)
+ br $31,$L293
+ .align 4
+$L296:
+ lda $9,saved_root_name($9) !gprellow
+ mov $9,$16
+ bsr $26,name_to_dev_t !samegp
+ mov $9,$16
+ ldq $27,memcmp($29) !literal!102
+ ldah $17,$LC5($29) !gprelhigh
+ stl $0,0($10)
+ lda $18,5($31)
+ lda $17,$LC5($17) !gprellow
+ jsr $26,($27),memcmp !lituse_jsr!102
+ ldah $29,0($26) !gpdisp!103
+ lda $29,0($29) !gpdisp!103
+ lda $1,5($9)
+ cmoveq $0,$1,$9
+ ldq $27,strcpy($29) !literal!100
+ ldah $16,root_device_name($29) !gprelhigh
+ lda $16,root_device_name($16) !gprellow
+ mov $9,$17
+ jsr $26,($27),strcpy !lituse_jsr!100
+ ldah $29,0($26) !gpdisp!101
+ lda $29,0($29) !gpdisp!101
+ br $31,$L287
+ .end prepare_namespace
+ .comm ROOT_DEV,4,4
+ .globl rd_doload
+ .section .init.data
+ .align 2
+ .type rd_doload, @object
+ .size rd_doload, 4
+rd_doload:
+ .zero 4
+ .section .bss
+ .type root_device_name, @object
+ .size root_device_name, 64
+root_device_name:
+ .zero 64
+ .type saved_root_name, @object
+ .size saved_root_name, 64
+saved_root_name:
+ .zero 64
+ .section .init.data
+ .align 3
+ .type root_mount_data, @object
+ .size root_mount_data, 8
+root_mount_data:
+ .zero 8
+ .align 3
+ .type root_fs_names, @object
+ .size root_fs_names, 8
+root_fs_names:
+ .zero 8
+ .ident "GCC: (GNU) 3.3 20021103 (experimental)"
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.d b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.d
new file mode 100644
index 00000000..7dee62a8
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.d
@@ -0,0 +1,29 @@
+#objdump: -r
+#name: alpha elf-tls-1
+
+.*: file format elf64-alpha.*
+
+RELOCATION RECORDS FOR \[\.text\]:
+OFFSET TYPE VALUE
+0*0000004 TLSGD a
+0*0000000 ELF_LITERAL __tls_get_addr
+0*0000008 LITUSE \.text\+0x0*0000004
+0*0000008 HINT __tls_get_addr
+0*000000c HINT __tls_get_addr
+0*0000014 TLSLDM b
+0*0000010 ELF_LITERAL __tls_get_addr
+0*000000c LITUSE \.text\+0x0*0000005
+0*0000018 TLSGD c
+0*000001c TLSLDM d
+0*0000020 TLSGD e
+0*0000024 TLSLDM f
+0*0000028 GOTDTPREL g
+0*000002c DTPRELHI h
+0*0000030 DTPRELLO i
+0*0000034 DTPREL16 j
+0*0000038 GOTTPREL k
+0*000003c TPRELHI l
+0*0000040 TPRELLO m
+0*0000044 TPREL16 n
+
+
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.s
new file mode 100644
index 00000000..42385d70
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-1.s
@@ -0,0 +1,24 @@
+ .set nomacro
+ ldq $27, __tls_get_addr($29) !literal!1
+ ldq $16, a($29) !tlsgd!1
+ jsr $26, ($27), __tls_get_addr !lituse_tlsgd!1
+
+ jsr $26, ($27), __tls_get_addr !lituse_tlsldm!2
+ ldq $27, __tls_get_addr($29) !literal!2
+ ldq $16, b($29) !tlsldm!2
+
+ ldq $16, c($29) !tlsgd
+ ldq $16, d($29) !tlsldm
+
+ ldq $16, e($29) !tlsgd!3
+ ldq $16, f($29) !tlsldm!4
+
+ ldq $16, g($29) !gotdtprel
+ ldah $16, h($31) !dtprelhi
+ lda $16, i($16) !dtprello
+ lda $16, j($31) !dtprel
+
+ ldq $16, k($29) !gottprel
+ ldah $16, l($31) !tprelhi
+ lda $16, m($16) !tprello
+ lda $16, n($31) !tprel
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.l b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.l
new file mode 100644
index 00000000..4fcee797
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.l
@@ -0,0 +1,9 @@
+.*: Assembler messages:
+.*:5: Error: too many lituse insns for !lituse_tlsgd!1
+.*:10: Error: too many lituse insns for !lituse_tlsldm!2
+.*:15: Error: too many lituse insns for !lituse_tlsgd!3
+.*:20: Error: too many lituse insns for !lituse_tlsldm!4
+.*:23: Error: duplicate !tlsgd!5
+.*:26: Error: duplicate !tlsldm!6
+.*:29: Error: sequence number in use for !tlsgd!7
+.*:32: Error: sequence number in use for !tlsldm!8
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.s
new file mode 100644
index 00000000..214fe3a4
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-2.s
@@ -0,0 +1,32 @@
+ .set nomacro
+ ldq $16, c($29) !tlsgd!1
+ ldq $27, __tls_get_addr($29) !literal!1
+ jsr $26, ($27), __tls_get_addr !lituse_tlsgd!1
+ jsr $26, ($27), __tls_get_addr !lituse_jsr!1
+
+ ldq $16, d($29) !tlsldm!2
+ ldq $27, __tls_get_addr($29) !literal!2
+ jsr $26, ($27), __tls_get_addr !lituse_jsr!2
+ jsr $26, ($27), __tls_get_addr !lituse_tlsldm!2
+
+ ldq $16, g($29) !tlsgd!3
+ ldq $27, __tls_get_addr($29) !literal!3
+ jsr $26, ($27), __tls_get_addr !lituse_tlsgd!3
+ jsr $26, ($27), __tls_get_addr !lituse_tlsgd!3
+
+ ldq $16, h($29) !tlsldm!4
+ ldq $27, __tls_get_addr($29) !literal!4
+ jsr $26, ($27), __tls_get_addr !lituse_tlsldm!4
+ jsr $26, ($27), __tls_get_addr !lituse_tlsldm!4
+
+ ldq $16, i($29) !tlsgd!5
+ ldq $16, i($29) !tlsgd!5
+
+ ldq $16, j($29) !tlsldm!6
+ ldq $16, j($29) !tlsldm!6
+
+ ldq $16, k($29) !tlsgd!7
+ ldq $16, k($29) !tlsldm!7
+
+ ldq $16, l($29) !tlsldm!8
+ ldq $16, l($29) !tlsgd!8
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.l b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.l
new file mode 100644
index 00000000..51d93e78
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.l
@@ -0,0 +1,7 @@
+.*: Assembler messages:
+.*:3: Error: No !tlsgd!1 was found
+.*:6: Error: No !tlsldm!2 was found
+.*:18: Error: No !tlsldm!5 was found
+.*:22: Error: No !tlsgd!6 was found
+.*:8: Error: too many !literal!3 for !tlsgd
+.*:12: Error: too many !literal!4 for !tlsldm
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.s
new file mode 100644
index 00000000..31480dab
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-tls-3.s
@@ -0,0 +1,22 @@
+ .set nomacro
+ ldq $27, __tls_get_addr($29) !literal!1
+ jsr $26, ($27), __tls_get_addr !lituse_tlsgd!1
+
+ ldq $27, __tls_get_addr($29) !literal!2
+ jsr $26, ($27), __tls_get_addr !lituse_tlsldm!2
+
+ ldq $16, a($29) !tlsgd!3
+ ldq $27, __tls_get_addr($29) !literal!3
+ ldq $27, __tls_get_addr($29) !literal!3
+
+ ldq $16, b($29) !tlsldm!4
+ ldq $27, __tls_get_addr($29) !literal!4
+ ldq $27, __tls_get_addr($29) !literal!4
+
+ ldq $16, e($29) !tlsgd!5
+ ldq $27, __tls_get_addr($29) !literal!5
+ jsr $26, ($27), __tls_get_addr !lituse_tlsldm!5
+
+ ldq $16, f($29) !tlsldm!6
+ ldq $27, __tls_get_addr($29) !literal!6
+ jsr $26, ($27), __tls_get_addr !lituse_tlsgd!6
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.d b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.d
new file mode 100644
index 00000000..115eb691
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.d
@@ -0,0 +1,11 @@
+#objdump: --syms
+#name: alpha elf-usepv-1
+
+.*: file format elf64-alpha.*
+
+SYMBOL TABLE:
+0*0000000 l d \.text 0*0000000 (|\.text)
+0*0000000 l d \.data 0*0000000 (|\.data)
+0*0000000 l d \.bss 0*0000000 (|\.bss)
+0*0000000 l \.text 0*0000000 0x80 foo
+0*0000004 l \.text 0*0000000 0x88 bar
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.s
new file mode 100644
index 00000000..0d447aad
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-1.s
@@ -0,0 +1,6 @@
+ .usepv foo, no
+foo:
+ nop
+ .usepv bar, std
+bar:
+ nop
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.l b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.l
new file mode 100644
index 00000000..35e3b26a
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.l
@@ -0,0 +1,2 @@
+.*: Assembler messages:
+.*:1: Error: unknown argument for .usepv
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.s b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.s
new file mode 100644
index 00000000..5a583f9e
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/elf-usepv-2.s
@@ -0,0 +1 @@
+ .usepv foo, bar
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/fp.d b/binutils-2.25/gas/testsuite/gas/alpha/fp.d
new file mode 100644
index 00000000..06f6c8e3
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/fp.d
@@ -0,0 +1,9 @@
+#objdump: -s -j .data
+#name: alpha fp
+
+.*: file format .*
+
+Contents of section .data:
+ 0000 71a37909 4f930a40 5441789a cd4b881b q.y.O..@TAx..K..
+ 0010 2a404f93 790971a3 789a5440 5441789a .@O.y.q.x.T@TAx.
+ 0020 00000000 00000000 00000000 00000000 ................
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/fp.s b/binutils-2.25/gas/testsuite/gas/alpha/fp.s
new file mode 100644
index 00000000..e29393e6
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/fp.s
@@ -0,0 +1,14 @@
+ .data
+# These three formats are 8 bytes each.
+ .t_floating 3.32192809488736218171e0
+# .byte 0x71, 0xa3, 0x79, 0x09, 0x4f, 0x93, 0x0a, 0x40
+ .d_floating 3.32192809488736218171e0
+# .byte 0x54, 0x41, 0x78, 0x9a, 0xcd, 0x4b, 0x88, 0x1b
+ .g_floating 3.32192809488736218171e0
+# .byte 0x2a, 0x40, 0x4f, 0x93, 0x79, 0x09, 0x71, 0xa3
+# The next two are four bytes each.
+ .s_floating 3.32192809488736218171e0
+# .byte 0x78, 0x9a, 0x54, 0x40, 0, 0, 0, 0
+ .f_floating 3.32192809488736218171e0
+# .byte 0x54, 0x41, 0x78, 0x9a, 0, 0, 0, 0
+ .long 0, 0, 0, 0
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/unop.d b/binutils-2.25/gas/testsuite/gas/alpha/unop.d
new file mode 100644
index 00000000..be880594
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/unop.d
@@ -0,0 +1,12 @@
+#objdump: -d
+#name: alpha unop disassembly
+
+.*: file format .*
+
+Disassembly of section .text:
+
+0*0000000 <.text>:
+ 0: 00 00 fe 2f unop
+ 4: 00 00 e0 2f unop
+ 8: 00 00 fe 2f unop
+ c: 00 00 ff 2f unop
diff --git a/binutils-2.25/gas/testsuite/gas/alpha/unop.s b/binutils-2.25/gas/testsuite/gas/alpha/unop.s
new file mode 100644
index 00000000..2eb4a59a
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/alpha/unop.s
@@ -0,0 +1,4 @@
+ unop
+ ldq_u $31,0($0)
+ ldq_u $31,0($30)
+ ldq_u $31,0($31)