[riscv-port] RFR: 8278041: riscv: Use t2 as the dedicated machine flags register in C2

Yadong Wang yadongwang at openjdk.java.net
Wed Dec 1 08:02:11 UTC 2021


There are non-allocatable registers t0 and t1 in C2, frequently used as temporary registers for common code snipptes. Meanwhile, C2 use t1 as the flags register, so that many instructs using t1 as a temporary register must declare the data flow effect of t1 which is not part of a match rule. So we can reserve t2 and use it as the machine flags register in C2 instead, to reduce the probability of misuse of t1 without declaring the data flow effect.

-------------

Commit messages:
 - 8278041: riscv: Use t2 as the dedicated machine flags register in C2

Changes: https://git.openjdk.java.net/riscv-port/pull/21/files
 Webrev: https://webrevs.openjdk.java.net/?repo=riscv-port&pr=21&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8278041
  Stats: 144 lines in 4 files changed: 3 ins; 24 del; 117 mod
  Patch: https://git.openjdk.java.net/riscv-port/pull/21.diff
  Fetch: git fetch https://git.openjdk.java.net/riscv-port pull/21/head:pull/21

PR: https://git.openjdk.java.net/riscv-port/pull/21


More information about the riscv-port-dev mailing list