diff --git a/test/CodeGen/ARM/2010-11-30-reloc-movt.ll b/test/CodeGen/ARM/2010-11-30-reloc-movt.ll
index 99e1fbc5900..8b164c5d91f 100644
--- a/test/CodeGen/ARM/2010-11-30-reloc-movt.ll
+++ b/test/CodeGen/ARM/2010-11-30-reloc-movt.ll
@@ -23,7 +23,7 @@ entry:
 
 ; OBJ:            Relocation 0
 ; OBJ-NEXT:       'r_offset', 0x00000004
-; OBJ-NEXT:       'r_sym', 0x00000007
+; OBJ-NEXT:       'r_sym', 0x000007
 ; OBJ-NEXT:        'r_type', 0x2b
 
 ; OBJ:          Relocation 1
@@ -33,7 +33,7 @@ entry:
 
 ; OBJ:          # Relocation 2
 ; OBJ-NEXT:       'r_offset', 0x0000000c
-; OBJ-NEXT:       'r_sym', 0x00000008
+; OBJ-NEXT:       'r_sym', 0x000008
 ; OBJ-NEXT:       'r_type', 0x1c
 
 }
diff --git a/test/MC/ARM/elf-reloc-01.ll b/test/MC/ARM/elf-reloc-01.ll
index de28afc0bcc..e6efe7eb94c 100644
--- a/test/MC/ARM/elf-reloc-01.ll
+++ b/test/MC/ARM/elf-reloc-01.ll
@@ -62,7 +62,7 @@ declare void @exit(i32) noreturn nounwind
 
 ;; OBJ:          Relocation 1
 ;; OBJ-NEXT:     'r_offset', 
-;; OBJ-NEXT:     'r_sym', 0x00000002
+;; OBJ-NEXT:     'r_sym', 0x000002
 ;; OBJ-NEXT:     'r_type', 0x2b
 
 ;; OBJ:         Symbol 2
diff --git a/test/MC/ARM/elf-reloc-02.ll b/test/MC/ARM/elf-reloc-02.ll
index 00bc1d6ea38..e51bac30ca8 100644
--- a/test/MC/ARM/elf-reloc-02.ll
+++ b/test/MC/ARM/elf-reloc-02.ll
@@ -43,7 +43,7 @@ declare void @exit(i32) noreturn nounwind
 
 ;; OBJ:        Relocation 0
 ;; OBJ-NEXT:    'r_offset', 
-;; OBJ-NEXT:    'r_sym', 0x00000002
+;; OBJ-NEXT:    'r_sym', 0x000002
 ;; OBJ-NEXT:    'r_type', 0x2b
 
 ;; OBJ:          Symbol 2
diff --git a/test/MC/ARM/elf-reloc-03.ll b/test/MC/ARM/elf-reloc-03.ll
index 4a9db427ebf..922242f9d3d 100644
--- a/test/MC/ARM/elf-reloc-03.ll
+++ b/test/MC/ARM/elf-reloc-03.ll
@@ -90,7 +90,7 @@ declare void @exit(i32) noreturn nounwind
 
 ;; OBJ:           Relocation 1
 ;; OBJ-NEXT:     'r_offset', 
-;; OBJ-NEXT:     'r_sym', 0x0000000c
+;; OBJ-NEXT:     'r_sym', 0x00000c
 ;; OBJ-NEXT:     'r_type', 0x2b
 
 ;; OBJ:      Symbol 12
diff --git a/test/MC/ARM/elf-thumbfunc-reloc.ll b/test/MC/ARM/elf-thumbfunc-reloc.ll
index 48d24f366b8..16a11bac8b9 100644
--- a/test/MC/ARM/elf-thumbfunc-reloc.ll
+++ b/test/MC/ARM/elf-thumbfunc-reloc.ll
@@ -28,7 +28,7 @@ entry:
 ; 00000008  0000070a R_ARM_THM_CALL    00000001   foo
 ; CHECK:           Relocation 0
 ; CHECK-NEXT:      'r_offset', 0x00000008
-; CHECK-NEXT:      'r_sym', 0x00000007
+; CHECK-NEXT:      'r_sym', 0x000007
 ; CHECK-NEXT:      'r_type', 0x0a
 
 ; make sure foo is thumb function: bit 0 = 1
diff --git a/test/MC/ELF/call-abs.s b/test/MC/ELF/call-abs.s
index 7d2116377e9..795a65993c0 100644
--- a/test/MC/ELF/call-abs.s
+++ b/test/MC/ELF/call-abs.s
@@ -18,7 +18,7 @@ f:                                      # @f
 // CHECK:      ('_relocations', [
 // CHECK-NEXT:  # Relocation 0
 // CHECK-NEXT:  (('r_offset', 0x00000004)
-// CHECK-NEXT:   ('r_sym', 0x00000000)
+// CHECK-NEXT:   ('r_sym', 0x000000)
 // CHECK-NEXT:   ('r_type', 0x02)
 // CHECK-NEXT:  ),
 // CHECK-NEXT: ])
diff --git a/test/MC/ELF/relocation-386.s b/test/MC/ELF/relocation-386.s
index 8665772ef4b..a19da8ad090 100644
--- a/test/MC/ELF/relocation-386.s
+++ b/test/MC/ELF/relocation-386.s
@@ -5,7 +5,7 @@
 
 // CHECK:      # Relocation 0
 // CHECK-NEXT: (('r_offset', 0x00000002)
-// CHECK-NEXT:  ('r_sym', 0x00000001)
+// CHECK-NEXT:  ('r_sym', 0x000001)
 // CHECK-NEXT:  ('r_type', 0x09)
 // CHECK-NEXT: ),
 // CHECK-NEXT:  # Relocation 1
@@ -22,7 +22,7 @@
 // Relocation 3 (bar3@GOTOFF) is done with symbol 7 (bss)
 // CHECK-NEXT:  # Relocation 3
 // CHECK-NEXT: (('r_offset',
-// CHECK-NEXT:  ('r_sym', 0x00000007
+// CHECK-NEXT:  ('r_sym', 0x000007
 // CHECK-NEXT:  ('r_type',
 // CHECK-NEXT: ),
 
@@ -36,115 +36,115 @@
 // Relocation 5 (foo@TLSGD) is of type R_386_TLS_GD
 // CHECK-NEXT: # Relocation 5
 // CHECK-NEXT: (('r_offset', 0x00000020)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x12)
 // CHECK-NEXT: ),
 
 // Relocation 6 ($foo@TPOFF) is of type R_386_TLS_LE_32
 // CHECK-NEXT: # Relocation 6
 // CHECK-NEXT: (('r_offset', 0x00000025)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x22)
 // CHECK-NEXT: ),
 
 // Relocation 7 (foo@INDNTPOFF) is of type R_386_TLS_IE
 // CHECK-NEXT: # Relocation 7
 // CHECK-NEXT: (('r_offset', 0x0000002b)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x0f)
 // CHECK-NEXT: ),
 
 // Relocation 8 (foo@NTPOFF) is of type R_386_TLS_LE
 // CHECK-NEXT: # Relocation 8
 // CHECK-NEXT: (('r_offset', 0x00000031)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x11)
 // CHECK-NEXT: ),
 
 // Relocation 9 (foo@GOTNTPOFF) is of type R_386_TLS_GOTIE
 // CHECK-NEXT: # Relocation 9
 // CHECK-NEXT: (('r_offset', 0x00000037)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x10)
 // CHECK-NEXT: ),
 
 // Relocation 10 (foo@TLSLDM) is of type R_386_TLS_LDM
 // CHECK-NEXT: # Relocation 10
 // CHECK-NEXT: (('r_offset', 0x0000003d)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x13)
 // CHECK-NEXT: ),
 
 // Relocation 11 (foo@DTPOFF) is of type R_386_TLS_LDO_32
 // CHECK-NEXT: # Relocation 11
 // CHECK-NEXT: (('r_offset', 0x00000043)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x20)
 // CHECK-NEXT: ),
 // Relocation 12 (calll 4096) is of type R_386_PC32
 // CHECK-NEXT: # Relocation 12
 // CHECK-NEXT: (('r_offset', 0x00000048)
-// CHECK-NEXT:  ('r_sym', 0x00000000)
+// CHECK-NEXT:  ('r_sym', 0x000000)
 // CHECK-NEXT:  ('r_type', 0x02)
 // CHECK-NEXT: ),
 // Relocation 13 (zed@GOT) is of type R_386_GOT32 and uses the symbol
 // CHECK-NEXT: # Relocation 13
 // CHECK-NEXT: (('r_offset', 0x0000004e)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x03)
 // CHECK-NEXT: ),
 // Relocation 14 (zed@GOTOFF) is of type R_386_GOTOFF and uses the symbol
 // CHECK-NEXT: # Relocation 14
 // CHECK-NEXT: (('r_offset', 0x00000054)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x09)
 // CHECK-NEXT: ),
 // Relocation 15 (zed@INDNTPOFF) is of type R_386_TLS_IE and uses the symbol
 // CHECK-NEXT: # Relocation 15
 // CHECK-NEXT: (('r_offset', 0x0000005a)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x0f)
 // CHECK-NEXT: ),
 // Relocation 16 (zed@NTPOFF) is of type R_386_TLS_LE and uses the symbol
 // CHECK-NEXT: # Relocation 16
 // CHECK-NEXT: (('r_offset', 0x00000060)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x11)
 // CHECK-NEXT: ),
 // Relocation 17 (zed@GOTNTPOFF) is of type R_386_TLS_GOTIE and uses the symbol
 // CHECK-NEXT: # Relocation 17
 // CHECK-NEXT: (('r_offset', 0x00000066)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x10)
 // CHECK-NEXT: ),
 // Relocation 18 (zed@PLT) is of type R_386_PLT32 and uses the symbol
 // CHECK-NEXT: # Relocation 18
 // CHECK-NEXT: (('r_offset', 0x0000006b)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x04)
 // CHECK-NEXT: ),
 // Relocation 19 (zed@TLSGD) is of type R_386_TLS_GD and uses the symbol
 // CHECK-NEXT: # Relocation 19
 // CHECK-NEXT: (('r_offset', 0x00000071)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x12)
 // CHECK-NEXT: ),
 // Relocation 20 (zed@TLSLDM) is of type R_386_TLS_LDM and uses the symbol
 // CHECK-NEXT: # Relocation 20
 // CHECK-NEXT: (('r_offset', 0x00000077)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x13)
 // CHECK-NEXT: ),
 // Relocation 21 (zed@TPOFF) is of type R_386_TLS_LE_32 and uses the symbol
 // CHECK-NEXT:# Relocation 21
 // CHECK-NEXT: (('r_offset', 0x0000007d)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x22)
 // CHECK-NEXT: ),
 // Relocation 22 (zed@DTPOFF) is of type R_386_TLS_LDO_32 and uses the symbol
 // CHECK-NEXT: Relocation 22
 // CHECK-NEXT: (('r_offset', 0x00000083)
-// CHECK-NEXT:  ('r_sym', 0x00000004)
+// CHECK-NEXT:  ('r_sym', 0x000004)
 // CHECK-NEXT:  ('r_type', 0x20)
 // CHECK-NEXT: ),
 // Relocation 23 ($bar) is of type R_386_32 and uses the section
@@ -157,7 +157,7 @@
 // symbol
 // CHECK-NEXT: Relocation 24
 // CHECK-NEXT: (('r_offset', 0x0000008e)
-// CHECK-NEXT:  ('r_sym', 0x0000000d)
+// CHECK-NEXT:  ('r_sym', 0x00000d)
 // CHECK-NEXT:  ('r_type', 0x21)
 // CHECK-NEXT: ),
 
diff --git a/test/Scripts/elf-dump b/test/Scripts/elf-dump
index 36e06fbe42c..33581f45bc5 100755
--- a/test/Scripts/elf-dump
+++ b/test/Scripts/elf-dump
@@ -127,7 +127,7 @@ def dumpRel(f, section, dumprela = False):
         else:
             r_sym = (r_info >> 8, 24)
             r_type = (r_info & 0xff, 8)
-        print "     ('r_sym', %s)" % common_dump.HexDump(r_sym[0], 32)
+        print "     ('r_sym', %s)" % common_dump.HexDump(r_sym[0], r_sym[1])
         print "     ('r_type', %s)" % common_dump.HexDump(r_type[0], r_type[1])
         if dumprela:
             val = f.readWord()