You do not have permission to delete messages in this group
Copy link
Report message
Sign in to report message
Show original message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Kito Cheng, RISC-V SW Dev (sw-dev@groups.riscv.org)
Hi Kito,
I vaguely remember seeing the use of t3 in the PLT and didn't see a change to the PLT in binutils. Maybe it was changed already. Does the binutils change make the unavailable registers emit errors so the test will pick up any code that emits registers >15?
Sure it's like RV32E is static however the PLT can be made to work (assuming it still uses t3).
Michael
P.S. Andrew's strict operands change in binutils took this approach and helped us find a case where gcc wasn't emitting the strict ISA manual subset of instructions, due to the strict checking in the assembler. The same can be done for RV32E registers I guess.
You do not have permission to delete messages in this group
Copy link
Report message
Sign in to report message
Show original message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Michael Clark, RISC-V SW Dev (sw-dev@groups.riscv.org), Andrew Waterman
Hi Michael:
Thanks for your review,
For PLT issue: yes , PLT still using t3 to make PLT header and entry,
it's make RV32E can't generate correct PIC/PIE code in bare metal
environment now.
For reg > 15: Binutils have check register is valid for RV32E during
assemble time[1].