We only build the SPARC targets using big endianness order,
therefore the cpu_ld/st_data*() definitions expand to the big
endian declarations. Use the explicit big-endian variants.
Mechanical change running:
$ tgt=sparc; \
end=be; \
for op in data mmuidx_ra; do \
for ac in uw sw l q; do \
sed -i -e "s/cpu_ld${ac}_${op}/cpu_ld${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
for ac in w l q; do \
sed -i -e "s/cpu_st${ac}_${op}/cpu_st${ac}_${end}_${op}/" \
$(git grep -l cpu_ target/${tgt}/); \
done;
done
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <
20251126202200.23100-10-philmd@linaro.org>
ret = cpu_ldub_data(env, addr);
break;
case 2:
- ret = cpu_lduw_data(env, addr);
+ ret = cpu_lduw_be_data(env, addr);
break;
case 4:
- ret = cpu_ldl_data(env, addr);
+ ret = cpu_ldl_be_data(env, addr);
break;
case 8:
- ret = cpu_ldq_data(env, addr);
+ ret = cpu_ldq_be_data(env, addr);
break;
default:
g_assert_not_reached();