Index: llvm/trunk/lib/MC/MCExpr.cpp =================================================================== --- llvm/trunk/lib/MC/MCExpr.cpp +++ llvm/trunk/lib/MC/MCExpr.cpp @@ -353,6 +353,7 @@ .Case("got@h", VK_PPC_GOT_HI) .Case("GOT@HA", VK_PPC_GOT_HA) .Case("got@ha", VK_PPC_GOT_HA) + .Case("local", VK_PPC_LOCAL) .Case("TOCBASE", VK_PPC_TOCBASE) .Case("tocbase", VK_PPC_TOCBASE) .Case("TOC", VK_PPC_TOC) Index: llvm/trunk/test/MC/PowerPC/ppc-reloc.s =================================================================== --- llvm/trunk/test/MC/PowerPC/ppc-reloc.s +++ llvm/trunk/test/MC/PowerPC/ppc-reloc.s @@ -7,11 +7,13 @@ .align 2 foo: bl printf@plt + bl _GLOBAL_OFFSET_TABLE_@local-4 .LC1: .size foo, . - foo # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rela.text { # CHECK-NEXT: 0x0 R_PPC_PLTREL24 printf 0x0 +# CHECK-NEXT: 0x4 R_PPC_LOCAL24PC _GLOBAL_OFFSET_TABLE_ 0xFFFFFFFC # CHECK-NEXT: } # CHECK-NEXT: ]