18c8bc05a383890ab29b288625c746bf24240e9a1Rafael Espindola// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump  | FileCheck %s
28c8bc05a383890ab29b288625c746bf24240e9a1Rafael Espindola
31f52dfe69ee7d0a49a6bfe6dfec6aeb8e416e313Rafael Espindola// Test that this produces a R_X86_64_PLT32 with bar.
41f52dfe69ee7d0a49a6bfe6dfec6aeb8e416e313Rafael Espindola
58c8bc05a383890ab29b288625c746bf24240e9a1Rafael Espindola        .globl foo
68c8bc05a383890ab29b288625c746bf24240e9a1Rafael Espindolafoo:
78c8bc05a383890ab29b288625c746bf24240e9a1Rafael Espindolabar = foo
81f52dfe69ee7d0a49a6bfe6dfec6aeb8e416e313Rafael Espindola        .section zed, "", @progbits
98c8bc05a383890ab29b288625c746bf24240e9a1Rafael Espindola        call bar@PLT
108c8bc05a383890ab29b288625c746bf24240e9a1Rafael Espindola
1194ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola
1294ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola// Test that this produres a relocation with bar2
1394ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola
1494ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola    .weak    foo2
1594ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindolafoo2:
1694ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola    .weak    bar2
1794ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola    .set    bar2,foo2
1894ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola    .quad    bar2
1994ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola
20f7179de2a5c127d08e6d24e507abec516f2fc597Rafael Espindola// CHECK:       # Relocation 0
215c4e52e49648c196f629b8623b4aca7e4c0080e3Rafael Espindola// CHECK-NEXT:  (('r_offset', 0x0000000000000001)
227c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola// CHECK-NEXT:   ('r_sym', 0x00000001)
237c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola// CHECK-NEXT:   ('r_type', 0x00000004)
24d7c9b63b583ac05fc03c9a242c1bb8f12d27acf0Rafael Espindola// CHECK-NEXT:   ('r_addend', 0xfffffffffffffffc)
257c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola// CHECK-NEXT:  ),
267c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola
27f7179de2a5c127d08e6d24e507abec516f2fc597Rafael Espindola// CHECK:      # Relocation 1
285c4e52e49648c196f629b8623b4aca7e4c0080e3Rafael Espindola// CHECK-NEXT: (('r_offset', 0x0000000000000005)
297c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola// CHECK-NEXT:  ('r_sym', 0x00000006)
307c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola// CHECK-NEXT:  ('r_type', 0x00000001)
31d7c9b63b583ac05fc03c9a242c1bb8f12d27acf0Rafael Espindola// CHECK-NEXT:  ('r_addend', 0x0000000000000000)
327c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola// CHECK-NEXT: ),
337c18fa87a4d4ed8b0cfe1ec65597c748c6d91ca9Rafael Espindola
3465ad8dc807174b53615181a8170befdf60b6771dRafael Espindola// CHECK:       # Symbol 1
351f52dfe69ee7d0a49a6bfe6dfec6aeb8e416e313Rafael Espindola// CHECK-NEXT:  (('st_name', 0x00000005) # 'bar'
36d7c278326f333f41d8ec8d19f817a117e3f11190Rafael Espindola// CHECK-NEXT:   ('st_bind', 0x0)
3771a8f5ca12e8536e6050cc7a09fa2a87ea629cfaRafael Espindola// CHECK-NEXT:   ('st_type', 0x0)
3867ac0c0d630aa823f31632beecef520df1d7c48bRafael Espindola// CHECK-NEXT:   ('st_other', 0x00)
39251a2bbfb00ceb254d7ac1d35ae975ad9e2145cfRafael Espindola// CHECK-NEXT:   ('st_shndx', 0x0001)
401ae3c165f7f6dd265f136d975f255c18de53a960Roman Divacky// CHECK-NEXT:   ('st_value', 0x0000000000000000)
411ae3c165f7f6dd265f136d975f255c18de53a960Roman Divacky// CHECK-NEXT:   ('st_size', 0x0000000000000000)
421f52dfe69ee7d0a49a6bfe6dfec6aeb8e416e313Rafael Espindola// CHECK-NEXT:  ),
431f52dfe69ee7d0a49a6bfe6dfec6aeb8e416e313Rafael Espindola
4465ad8dc807174b53615181a8170befdf60b6771dRafael Espindola// CHECK:      # Symbol 6
4594ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola// CHECK-NEXT: (('st_name', 0x0000000e) # 'bar2'
46d7c278326f333f41d8ec8d19f817a117e3f11190Rafael Espindola// CHECK-NEXT:  ('st_bind', 0x2)
4771a8f5ca12e8536e6050cc7a09fa2a87ea629cfaRafael Espindola// CHECK-NEXT:  ('st_type', 0x0)
4867ac0c0d630aa823f31632beecef520df1d7c48bRafael Espindola// CHECK-NEXT:  ('st_other', 0x00)
49251a2bbfb00ceb254d7ac1d35ae975ad9e2145cfRafael Espindola// CHECK-NEXT:  ('st_shndx', 0x0004)
501ae3c165f7f6dd265f136d975f255c18de53a960Roman Divacky// CHECK-NEXT:  ('st_value', 0x0000000000000005)
511ae3c165f7f6dd265f136d975f255c18de53a960Roman Divacky// CHECK-NEXT:  ('st_size', 0x0000000000000000)
5294ed5fca3f5ab5acb74e70b8393b837131e7110cRafael Espindola// CHECK-NEXT: ),
53