diff options
author | Lulu Cai <cailulu@loongson.cn> | 2024-01-24 17:43:20 +0800 |
---|---|---|
committer | liuzhensong <liuzhensong@loongson.cn> | 2024-03-06 14:47:03 +0800 |
commit | 0e45942b2cad90e32c13b4c8c2c1aea9ba08c497 (patch) | |
tree | 55c94c483ba0e8ac2a3621fbd0f8c65455d236fc /gdb/infcmd.c | |
parent | 55e01dbd7623941373ee500032119a124fd2d673 (diff) | |
download | gdb-0e45942b2cad90e32c13b4c8c2c1aea9ba08c497.zip gdb-0e45942b2cad90e32c13b4c8c2c1aea9ba08c497.tar.gz gdb-0e45942b2cad90e32c13b4c8c2c1aea9ba08c497.tar.bz2 |
LoongArch: Delete extra instructions when TLS type transition
This modification mainly changes the timing of type transition,
adds relaxation to the old LE instruction sequence, and fixes
bugs in extreme code models.
We strictly distinguish between type transition and relaxation.
Type transition is from one type to another, while relaxation
is the removal of instructions under the same TLS type. Detailed
instructions are as follows:
1. For type transition, only the normal code model of DESC/IE
does type transition, and each relocation is accompanied by a
RELAX relocation. Neither abs nor extreme will do type transition,
and no RELAX relocation will be generated.
The extra instructions when DESC transitions to other TLS types
will be deleted during the type transition.
2. Implemented relaxation for the old LE instruction sequence.
The first two instructions of LE's 32-bit and 64-bit models
use the same relocations and cannot be distinguished based on
relocations. Therefore, for LE's instruction sequence, any code
model will try to relax.
3. Some function names have been adjusted to facilitate understanding,
parameters have been adjusted, and unused macros have been deleted.
Diffstat (limited to 'gdb/infcmd.c')
0 files changed, 0 insertions, 0 deletions