[PATCH 3/3] Loongarch: Add ifunc support for strncmp{aligned, lsx}

dengjianbo dengjianbo@loongson.cn
Tue Aug 22 06:37:42 GMT 2023


On 2023-08-22 11:56, Richard Henderson wrote:
>> +L(magic_num):
>> +    .align          6
>> +    .dword          0x0706050403020100
>> +    .dword          0x0f0e0d0c0b0a0908
>> +ENTRY_NO_ALIGN(STRNCMP)
>> +    beqz            a2, L(ret0)
>> +    pcaddi          t0, -5
>> +    andi            a3, a0, 0xf
>> +    vld             vr2, t0, 0
>
> Why is the data not in .rodata or a mergable constant section?
>
> You can use pcalau12i and %pc_lo12 with vld to place this data anywhere.
>
>
> r~ 

Putting the data here is due to the performance. When the vld
instruction is executed, the data will be in the cache, it can
speed up the data loading.



More information about the Libc-alpha mailing list