According to the LoongArch manual, ldle/ldgt/stle/stgt and
fldle/fldgt/fstle/fstgt perform unsigned address comparison, while
asrtle/asrtgt perform signed address comparison.

Currently all of them use unsigned integer comparison. Add unsigned
comparison helpers asrtle_du()/asrtgt_du() for the unsigned cases, and
change asrtle_d()/asrtgt_d() to perform signed integer comparison.

Bibo Mao (2):
  target/loongarch: Add asrtle_du()/asrtgt_du() helpers
  target/loongarch: Change asrtle_d()/asrtgt_d() for signed integer
    comparison

 target/loongarch/tcg/helper.h                 |  2 ++
 .../tcg/insn_trans/trans_fmemory.c.inc        |  8 +++----
 .../tcg/insn_trans/trans_memory.c.inc         |  8 +++----
 target/loongarch/tcg/op_helper.c              | 22 ++++++++++++++++++-
 4 files changed, 31 insertions(+), 9 deletions(-)


base-commit: 73294d096cc591e122fde9e63db4739de6d84f2b
-- 
2.54.0


Reply via email to