You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/target/arm/tcg
Stephen Longfield b2ba5ff272 target/arm: Use uint32_t in t32_expandimm_imm()
In t32_expandimm_imm(), we take an 8 bit value XY and construct a
32-bit value which might be of the form XY, 00XY00XY, XY00XY00, or
XYXYXYXY.  We do this with multiplications, and we use an 'int' type.
For the cases where we're setting the high byte of the 32-bit value
to XY, this means that we do an integer multiplication that might
overflow, and rely on the -fwrapv semantics to keep this from being
undefined behaviour.

It's clearer to use an unsigned type here, because we're really
doing operations on the value considered as a set of bits. The
result is the same.

The return value from the function remains 'int', because this
is a decodetree !function function, and follows the API for those
functions.

Signed-off-by: Stephen Longfield <slongfield@google.com>
Signed-off-by: Roque Arcudia Hernandez <roqueh@google.com>
Message-id: 20250219165534.3387376-1-slongfield@google.com
[PMM: Rewrote the commit message]
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 days ago
..
a32-uncond.decode
a32.decode
a64.decode target/arm: Add decodetree entry for DSB nXS variant 2 months ago
arith_helper.c target/arm: Move minor arithmetic helpers out of helper.c 1 month ago
arm_ldst.h target/arm: Move translate-a32.h, arm_ldst.h, sve_ldst_internal.h to tcg/ 2 years ago
cpu-v7m.c accel/tcg: Move gen_intermediate_code to TCGCPUOps.translate_core 2 months ago
cpu32.c target/arm: deprecate the pxa2xx CPUs and iwMMXt emulation 2 weeks ago
cpu64.c target/arm: Enable FEAT_RPRES for -cpu max 2 weeks ago
crypto_helper.c crypto: Create sm4_subword 1 year ago
gengvec.c target/arm: Introduce gen_gvec_urecpe, gen_gvec_ursqrte 2 months ago
gengvec64.c target/arm: Inline scalar SUQADD and USQADD 9 months ago
helper-a64.c target/arm: Handle FPCR.AH in FRECPS and FRSQRTS scalar insns 2 weeks ago
helper-a64.h target/arm: Handle FPCR.AH in FRECPS and FRSQRTS scalar insns 2 weeks ago
helper-mve.h target/arm: Move helper-{a64,mve,sme,sve}.h to tcg/ 2 years ago
helper-sme.h target/arm: Convert sme_helper.c to fpst alias 2 months ago
helper-sve.h target/arm: Handle FPCR.AH in negation step in SVE FMLS (vector) 2 weeks ago
hflags.c target/arm: Add FPCR.NEP to TBFLAGS 2 weeks ago
iwmmxt_helper.c
m-nocp.decode
m_helper.c target/arm: Pass MemOp to get_phys_addr 4 months ago
meson.build target/arm: Move minor arithmetic helpers out of helper.c 1 month ago
mte_helper.c user: Move various declarations out of 'exec/exec-all.h' 2 months ago
mte_helper.h target/arm: Make some MTE helpers widely available 8 months ago
mve.decode
mve_helper.c target/arm: Simplify fp_status indexing in mve_helper.c 2 weeks ago
neon-dp.decode target/arm: Convert VQSHL, VQSHLU to gvec 5 months ago
neon-ls.decode
neon-shared.decode
neon_helper.c target/arm: Convert neon_helper.c to use env alias 2 months ago
op_addsub.c.inc target/arm: Move minor arithmetic helpers out of helper.c 1 month ago
op_helper.c target/arm: Correct errors in WFI/WFE trapping 3 days ago
pauth_helper.c target/arm: Move feature test functions to their own header 1 year ago
psci.c include: Rename sysemu/ -> system/ 2 months ago
sme-fa64.decode
sme.decode
sme_helper.c target/arm: Remove fp_status_a64 2 weeks ago
sve.decode target/arm: Demultiplex AESE and AESMC 2 years ago
sve_helper.c target/arm: Handle FPCR.AH in SVE FCMLA 2 weeks ago
sve_ldst_internal.h target/arm: Move translate-a32.h, arm_ldst.h, sve_ldst_internal.h to tcg/ 2 years ago
t16.decode
t32.decode target/arm: Use PLD, PLDW, PLI not NOP for t32 9 months ago
tlb-insns.c target/arm: Add ARM_CP_ADD_TLBI_NXS type flag to TLBI insns 2 months ago
tlb_helper.c target/arm: Implement TCGCPUOps.tlb_fill_align 4 months ago
translate-a32.h target/arm: Implement store_cpu_field_low32() macro 8 months ago
translate-a64.c target/arm: Plumb FEAT_RPRES frecpe and frsqrte through to new helper 2 weeks ago
translate-a64.h target/arm: Use FPST_FPCR_AH for FRECPE, FRECPS, FRECPX, FRSQRTE, FRSQRTS 2 weeks ago
translate-m-nocp.c target/arm: Rename FPCR_ QC, NZCV macros to FPSR_ 8 months ago
translate-mve.c tcg: Rename cpu_env to tcg_env 1 year ago
translate-neon.c target/arm: Introduce gen_gvec_urecpe, gen_gvec_ursqrte 2 months ago
translate-sme.c target/arm: Use FPST_A64 in A64 decoder 4 weeks ago
translate-sve.c target/arm: Plumb FEAT_RPRES frecpe and frsqrte through to new helper 2 weeks ago
translate-vfp.c target/arm: Use FPST_A32_F16 in A32 decoder 4 weeks ago
translate.c target/arm: Use uint32_t in t32_expandimm_imm() 3 days ago
translate.h target/arm: Introduce CPUARMState.vfp.fp_status[] 2 weeks ago
vec_helper.c target/arm: Sink fp_status and fpcr access into do_fmlal* 2 weeks ago
vec_internal.h target/arm: Handle FPCR.AH in FRECPS and FRSQRTS scalar insns 2 weeks ago
vfp-uncond.decode
vfp.decode target/arm: Correct names of VFP VFNMA and VFNMS insns 6 months ago