[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 02/42] target-ppc: add helper macros for later patch
From: |
Nathan Froyd |
Subject: |
[Qemu-devel] [PATCH 02/42] target-ppc: add helper macros for later patches. |
Date: |
Sun, 14 Dec 2008 18:14:35 -0800 |
Signed-off-by: Nathan Froyd <address@hidden>
---
target-ppc/op_helper.c | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/target-ppc/op_helper.c b/target-ppc/op_helper.c
index 2d665e8..c597632 100644
--- a/target-ppc/op_helper.c
+++ b/target-ppc/op_helper.c
@@ -2007,6 +2007,39 @@ target_ulong helper_dlmzb (target_ulong high,
target_ulong low, uint32_t update_
}
/*****************************************************************************/
+/* Altivec extension helpers */
+#if defined(WORDS_BIGENDIAN)
+#define HI_IDX 0
+#define LO_IDX 1
+#else
+#define HI_IDX 1
+#define LO_IDX 0
+#endif
+
+#define N_ELEMS(element) (sizeof (r->element) / sizeof (r->element[0]))
+
+#define VECTOR_FOR(element) \
+ int i; \
+ VECTOR_FOR_I(i, element)
+
+#define VECTOR_FOR_I(index, element) \
+ for (index = 0; index < N_ELEMS(element); index++)
+
+#if defined(WORDS_BIGENDIAN)
+#define VECTOR_FOR_INORDER_I(index, element) VECTOR_FOR_I(index, element)
+#else
+#define VECTOR_FOR_INORDER_I(index, element) \
+ for (index = N_ELEMS(element)-1; index >= 0; index--)
+#endif
+
+#undef VECTOR_FOR
+#undef VECTOR_FOR_I
+#undef VECTOR_FOR_INORDER_I
+#undef N_ELEMS
+#undef HI_IDX
+#undef LO_IDX
+
+/*****************************************************************************/
/* SPE extension helpers */
/* Use a table to make this quicker */
static uint8_t hbrev[16] = {
--
1.6.0.5
- [Qemu-devel] [PATCH 14/42] target-ppc: add vsr{, a}{b, h, w} instructions., (continued)
- [Qemu-devel] [PATCH 14/42] target-ppc: add vsr{, a}{b, h, w} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 17/42] target-ppc: add v{add, sub}cuw instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 18/42] target-ppc: add lvs{l,r} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 19/42] target-ppc: add m{f, t}vscr instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 23/42] target-ppc: add vsldoi instruction., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 28/42] target-ppc: add GEN_VXFORM_NOA macro for subsequent instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 31/42] target-ppc: add GEN_VAFORM_PAIRED macro for subsequent instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 35/42] target-ppc: add vpks{h, w}{s, u}s, vpku{h, w}us, and vpku{h, w}um instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 39/42] target-ppc: add vmsumsh{m, s} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 42/42] target-ppc: add vsumsws, vsum2sws, and vsum4{sbs, shs, ubs} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 02/42] target-ppc: add helper macros for later patches.,
Nathan Froyd <=
- [Qemu-devel] [PATCH 08/42] target-ppc: add v{min, max}{s, u}{b, h, w} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 13/42] target-ppc: add vmul{e, o}{s, u}{b, h} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 21/42] target-ppc: add vrl{b, h, w} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 26/42] target-ppc: add GEN_VXFORM_UIMM macro for subsequent instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 30/42] target-ppc: add vupk{h, l}s{b, h} instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 34/42] target-ppc: add saturating arithmetic conversion functions for subsequent instructions., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 36/42] target-ppc: add vpkpx instruction., Nathan Froyd, 2008/12/14
- [Qemu-devel] [PATCH 04/42] target-ppc: add GEN_VXFORM macro for subsequent instructions., Nathan Froyd, 2008/12/14
- Prev by Date:
[Qemu-devel] [PATCH 42/42] target-ppc: add vsumsws, vsum2sws, and vsum4{sbs, shs, ubs} instructions.
- Next by Date:
[Qemu-devel] [PATCH 08/42] target-ppc: add v{min, max}{s, u}{b, h, w} instructions.
- Previous by thread:
[Qemu-devel] [PATCH 42/42] target-ppc: add vsumsws, vsum2sws, and vsum4{sbs, shs, ubs} instructions.
- Next by thread:
Re: [Qemu-devel] [PATCH 02/42] target-ppc: add helper macros for later patches.
- Index(es):