[lld] r289072 - Make function names shorter. NFC.

Sean Silva via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 8 21:52:36 PST 2016


I really don't like this change. These helpers are not generic; they are
closely tied to AArch64 instruction encoding and this patch loses the clear
connection from the names of the helpers. I strongly prefer the original
names.

-- Sean Silva

On Thu, Dec 8, 2016 at 9:18 AM, Rui Ueyama via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: ruiu
> Date: Thu Dec  8 11:18:09 2016
> New Revision: 289072
>
> URL: http://llvm.org/viewvc/llvm-project?rev=289072&view=rev
> Log:
> Make function names shorter. NFC.
>
> Modified:
>     lld/trunk/ELF/Target.cpp
>
> Modified: lld/trunk/ELF/Target.cpp
> URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Target.
> cpp?rev=289072&r1=289071&r2=289072&view=diff
> ============================================================
> ==================
> --- lld/trunk/ELF/Target.cpp (original)
> +++ lld/trunk/ELF/Target.cpp Thu Dec  8 11:18:09 2016
> @@ -1320,7 +1320,7 @@ void AArch64TargetInfo::writePlt(uint8_t
>    relocateOne(Buf + 8, R_AARCH64_ADD_ABS_LO12_NC, GotEntryAddr);
>  }
>
> -static void updateAArch64Addr(uint8_t *L, uint64_t Imm) {
> +static void write32addr(uint8_t *L, uint64_t Imm) {
>    uint32_t ImmLo = (Imm & 0x3) << 29;
>    uint32_t ImmHi = (Imm & 0x1FFFFC) << 3;
>    uint64_t Mask = (0x3 << 29) | (0x1FFFFC << 3);
> @@ -1334,8 +1334,8 @@ static uint64_t getBits(uint64_t Val, in
>    return (Val >> Start) & Mask;
>  }
>
> -// Update the immediate field in a ldr, str, and add instruction.
> -static inline void updateAArch64LdStrAdd(uint8_t *L, uint64_t Imm) {
> +// Update the immediate field in a AARCH64 ldr, str, and add instruction.
> +static void or32imm(uint8_t *L, uint64_t Imm) {
>    or32le(L, (Imm & 0xFFF) << 10);
>  }
>
> @@ -1358,18 +1358,18 @@ void AArch64TargetInfo::relocateOne(uint
>      write64le(Loc, Val);
>      break;
>    case R_AARCH64_ADD_ABS_LO12_NC:
> -    updateAArch64LdStrAdd(Loc, Val);
> +    or32imm(Loc, Val);
>      break;
>    case R_AARCH64_ADR_GOT_PAGE:
>    case R_AARCH64_ADR_PREL_PG_HI21:
>    case R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21:
>    case R_AARCH64_TLSDESC_ADR_PAGE21:
>      checkInt<33>(Loc, Val, Type);
> -    updateAArch64Addr(Loc, Val >> 12);
> +    write32addr(Loc, Val >> 12);
>      break;
>    case R_AARCH64_ADR_PREL_LO21:
>      checkInt<21>(Loc, Val, Type);
> -    updateAArch64Addr(Loc, Val);
> +    write32addr(Loc, Val);
>      break;
>    case R_AARCH64_CALL26:
>    case R_AARCH64_JUMP26:
> @@ -1387,19 +1387,19 @@ void AArch64TargetInfo::relocateOne(uint
>      or32le(Loc, (Val & 0xFF8) << 7);
>      break;
>    case R_AARCH64_LDST8_ABS_LO12_NC:
> -    updateAArch64LdStrAdd(Loc, getBits(Val, 0, 11));
> +    or32imm(Loc, getBits(Val, 0, 11));
>      break;
>    case R_AARCH64_LDST16_ABS_LO12_NC:
> -    updateAArch64LdStrAdd(Loc, getBits(Val, 1, 11));
> +    or32imm(Loc, getBits(Val, 1, 11));
>      break;
>    case R_AARCH64_LDST32_ABS_LO12_NC:
> -    updateAArch64LdStrAdd(Loc, getBits(Val, 2, 11));
> +    or32imm(Loc, getBits(Val, 2, 11));
>      break;
>    case R_AARCH64_LDST64_ABS_LO12_NC:
> -    updateAArch64LdStrAdd(Loc, getBits(Val, 3, 11));
> +    or32imm(Loc, getBits(Val, 3, 11));
>      break;
>    case R_AARCH64_LDST128_ABS_LO12_NC:
> -    updateAArch64LdStrAdd(Loc, getBits(Val, 4, 11));
> +    or32imm(Loc, getBits(Val, 4, 11));
>      break;
>    case R_AARCH64_MOVW_UABS_G0_NC:
>      or32le(Loc, (Val & 0xFFFF) << 5);
> @@ -1419,11 +1419,11 @@ void AArch64TargetInfo::relocateOne(uint
>      break;
>    case R_AARCH64_TLSLE_ADD_TPREL_HI12:
>      checkInt<24>(Loc, Val, Type);
> -    updateAArch64LdStrAdd(Loc, Val >> 12);
> +    or32imm(Loc, Val >> 12);
>      break;
>    case R_AARCH64_TLSLE_ADD_TPREL_LO12_NC:
>    case R_AARCH64_TLSDESC_ADD_LO12_NC:
> -    updateAArch64LdStrAdd(Loc, Val);
> +    or32imm(Loc, Val);
>      break;
>    default:
>      fatal(getErrorLocation(Loc) + "unrecognized reloc " + Twine(Type));
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161208/e7efd3c4/attachment.html>


More information about the llvm-commits mailing list