summaryrefslogtreecommitdiffstats
path: root/target/arm/translate-neon.c.inc
diff options
context:
space:
mode:
authorRichard Henderson2020-11-02 17:52:13 +0100
committerPeter Maydell2020-11-02 17:52:13 +0100
commit7ec85c02833f4264840c6ed78b749443a7b4ffe0 (patch)
treefef187c2967dfa47af68010d14a5eb318d691061 /target/arm/translate-neon.c.inc
parenttarget/arm: Introduce neon_full_reg_offset (diff)
downloadqemu-7ec85c02833f4264840c6ed78b749443a7b4ffe0.tar.gz
qemu-7ec85c02833f4264840c6ed78b749443a7b4ffe0.tar.xz
qemu-7ec85c02833f4264840c6ed78b749443a7b4ffe0.zip
target/arm: Move neon_element_offset to translate.c
This will shortly have users outside of translate-neon.c.inc. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20201030022618.785675-3-richard.henderson@linaro.org Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target/arm/translate-neon.c.inc')
-rw-r--r--target/arm/translate-neon.c.inc19
1 files changed, 0 insertions, 19 deletions
diff --git a/target/arm/translate-neon.c.inc b/target/arm/translate-neon.c.inc
index e259e24c05..96ab2248fc 100644
--- a/target/arm/translate-neon.c.inc
+++ b/target/arm/translate-neon.c.inc
@@ -60,25 +60,6 @@ static inline int neon_3same_fp_size(DisasContext *s, int x)
#include "decode-neon-ls.c.inc"
#include "decode-neon-shared.c.inc"
-/* Return the offset of a 2**SIZE piece of a NEON register, at index ELE,
- * where 0 is the least significant end of the register.
- */
-static inline long
-neon_element_offset(int reg, int element, MemOp size)
-{
- int element_size = 1 << size;
- int ofs = element * element_size;
-#ifdef HOST_WORDS_BIGENDIAN
- /* Calculate the offset assuming fully little-endian,
- * then XOR to account for the order of the 8-byte units.
- */
- if (element_size < 8) {
- ofs ^= 8 - element_size;
- }
-#endif
- return neon_full_reg_offset(reg) + ofs;
-}
-
static void neon_load_element(TCGv_i32 var, int reg, int ele, MemOp mop)
{
long offset = neon_element_offset(reg, ele, mop & MO_SIZE);