[llvm-commits] LLD Add x86 relocation reference code

Sean Silva silvas at purdue.edu
Mon Oct 22 15:08:10 PDT 2012


>> +  std::map<int32_t,
>> +           int (*)(uint8_t *location, uint64_t fixupAddress,
>> +                   uint64_t targetAddress, uint64_t addend)> _fixupHandler;
>
> This should probably use std::function.

That would cause a heap allocation for each one...

-- Sean Silva

On Mon, Oct 22, 2012 at 5:39 PM, Michael Spencer <bigcheesegs at gmail.com> wrote:
> On Fri, Oct 19, 2012 at 3:15 PM, Sid Manning <sidneym at codeaurora.org> wrote:
>>
>> This attached change does the following:
>>   * Moves x86 content from ReferenceKinds.cpp to a new file,
>> x86Reference.cpp
>>   * Adds support for R_386_32 and R_386_PC32 relocs
>>   * Includes simple testcase
>>
>>
>> --
>> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by
>> The Linux Foundation
>
> The filename should be X86Reference.cpp.
>
> Also the class should be X86KindHandler (arch name goes first
> everywhere else in llvm).
>
> The relocation handlers should be named relocNONE, relocPC32, etc...
>
>> +  std::map<int32_t,
>> +           int (*)(uint8_t *location, uint64_t fixupAddress,
>> +                   uint64_t targetAddress, uint64_t addend)> _fixupHandler;
>
> This should probably use std::function.
>
> - Michael Spencer
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits



More information about the llvm-commits mailing list