On 2/5/26 8:21 PM, Pierrick Bouvier wrote:
target_long is used to represent a pc diff. Checked all call sites to
make sure we were already passing signed values, so extending works as
expected.
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Pierrick Bouvier <[email protected]>
---
target/arm/tcg/translate-a32.h | 2 +-
target/arm/tcg/translate.h | 12 ++++++------
target/arm/tcg/translate.c | 18 +++++++++---------
3 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/target/arm/tcg/translate-a32.h b/target/arm/tcg/translate-a32.h
index 0b1fa57965c..a8df364171b 100644
--- a/target/arm/tcg/translate-a32.h
+++ b/target/arm/tcg/translate-a32.h
@@ -40,7 +40,7 @@ void write_neon_element64(TCGv_i64 src, int reg, int ele,
MemOp memop);
TCGv_i32 add_reg_for_lit(DisasContext *s, int reg, int ofs);
void gen_set_cpsr(TCGv_i32 var, uint32_t mask);
void gen_set_condexec(DisasContext *s);
-void gen_update_pc(DisasContext *s, target_long diff);
+void gen_update_pc(DisasContext *s, int64_t diff);
void gen_lookup_tb(DisasContext *s);
long vfp_reg_offset(bool dp, unsigned reg);
long neon_full_reg_offset(unsigned reg);
diff --git a/target/arm/tcg/translate.h b/target/arm/tcg/translate.h
index 2c8358dd7fa..1f455e4c434 100644
--- a/target/arm/tcg/translate.h
+++ b/target/arm/tcg/translate.h
@@ -27,8 +27,8 @@ typedef struct DisasLabel {
typedef struct DisasDelayException {
struct DisasDelayException *next;
TCGLabel *lab;
- target_long pc_curr;
- target_long pc_save;
+ int64_t pc_curr;
+ int64_t pc_save;
An amend mistake changed my branch, so this commit was not updated
correctly when sending the series. It has vaddr has requested on v1.
I'll update for v3.
Regards,
Pierrick