From f4747d560105af9d837852e335d4fa6b263cea90 Mon Sep 17 00:00:00 2001 From: Christophe Lyon Date: Thu, 28 Mar 2013 13:00:53 +0100 Subject: Change output format of vget_lane, for better readability. --- compute_ref.axf | Bin 3039216 -> 3039216 bytes compute_ref.gccarm | Bin 3967293 -> 4062944 bytes compute_ref.gccarm-rvct | Bin 4436200 -> 4432060 bytes ref-rvct-neon.txt | 20 +++++++++++++++++++- ref-rvct.txt | 20 +++++++++++++++++++- ref_vget_lane.c | 4 ++-- 6 files changed, 40 insertions(+), 4 deletions(-) diff --git a/compute_ref.axf b/compute_ref.axf index f195b9f..ccce337 100644 Binary files a/compute_ref.axf and b/compute_ref.axf differ diff --git a/compute_ref.gccarm b/compute_ref.gccarm index 72d22a9..5384166 100755 Binary files a/compute_ref.gccarm and b/compute_ref.gccarm differ diff --git a/compute_ref.gccarm-rvct b/compute_ref.gccarm-rvct index 5aa78f3..9500185 100644 Binary files a/compute_ref.gccarm-rvct and b/compute_ref.gccarm-rvct differ diff --git a/ref-rvct-neon.txt b/ref-rvct-neon.txt index 8ef013c..93f1a76 100644 --- a/ref-rvct-neon.txt +++ b/ref-rvct-neon.txt @@ -748,7 +748,25 @@ VSET_LANE/VSET_LANEQ:16:result_uint64x2 [] = { fffffffffffffff0, 11, } VSET_LANE/VSET_LANEQ:17:result_float32x4 [] = { c1800000 -0x1.0000000p+4 -16, c1700000 -0x1.e000000p+3 -15, c1600000 -0x1.c000000p+3 -14, 41333333 0x1.6666660p+3 11.2, } VGET_LANE/VGETQ_LANE output: -fffffff7, fffffff3, fffffff1, fffffffffffffff0, f6, fff2, fffffff1, fffffffffffffff0, c1700000, ffffffff, fffffff5, fffffff3, fffffffffffffff1, fe, fff6, fffffff2, fffffffffffffff1, c1500000, +vget_lane_s8: fffffff7 +vget_lane_s16: fffffff3 +vget_lane_s32: fffffff1 +vget_lane_s64: fffffffffffffff0 +vget_lane_u8: f6 +vget_lane_u16: fff2 +vget_lane_u32: fffffff1 +vget_lane_u64: fffffffffffffff0 +vget_lane_f32: c1700000 +vgetq_lane_s8: ffffffff +vgetq_lane_s16: fffffff5 +vgetq_lane_s32: fffffff3 +vgetq_lane_s64: fffffffffffffff1 +vgetq_lane_u8: fe +vgetq_lane_u16: fff6 +vgetq_lane_u32: fffffff2 +vgetq_lane_u64: fffffffffffffff1 +vgetq_lane_f32: c1500000 + VQSUB/VQSUBQ overflow output: VQSUB/VQSUBQ:0:vqsub_s8 Neon overflow 0 diff --git a/ref-rvct.txt b/ref-rvct.txt index 6aafe88..4855998 100644 --- a/ref-rvct.txt +++ b/ref-rvct.txt @@ -748,7 +748,25 @@ VSET_LANE/VSET_LANEQ:16:result_uint64x2 [] = { fffffffffffffff0, 11, } VSET_LANE/VSET_LANEQ:17:result_float32x4 [] = { c1800000 -0x1.0000000p+4 -16, c1700000 -0x1.e000000p+3 -15, c1600000 -0x1.c000000p+3 -14, 41333333 0x1.6666660p+3 11.2, } VGET_LANE/VGETQ_LANE output: -fffffff7, fffffff3, fffffff1, fffffffffffffff0, f6, fff2, fffffff1, fffffffffffffff0, c1700000, ffffffff, fffffff5, fffffff3, fffffffffffffff1, fe, fff6, fffffff2, fffffffffffffff1, c1500000, +vget_lane_s8: fffffff7 +vget_lane_s16: fffffff3 +vget_lane_s32: fffffff1 +vget_lane_s64: fffffffffffffff0 +vget_lane_u8: f6 +vget_lane_u16: fff2 +vget_lane_u32: fffffff1 +vget_lane_u64: fffffffffffffff0 +vget_lane_f32: c1700000 +vgetq_lane_s8: ffffffff +vgetq_lane_s16: fffffff5 +vgetq_lane_s32: fffffff3 +vgetq_lane_s64: fffffffffffffff1 +vgetq_lane_u8: fe +vgetq_lane_u16: fff6 +vgetq_lane_u32: fffffff2 +vgetq_lane_u64: fffffffffffffff1 +vgetq_lane_f32: c1500000 + VQSUB/VQSUBQ overflow output: VQSUB/VQSUBQ:0:vqsub_s8 Neon overflow 0 diff --git a/ref_vget_lane.c b/ref_vget_lane.c index a1ab6a9..9743529 100644 --- a/ref_vget_lane.c +++ b/ref_vget_lane.c @@ -37,7 +37,7 @@ void exec_vget_lane (void) #define TEST_VGET_LANE(Q, T1, T2, W, N, L) \ VAR(var, T1, W) = vget##Q##_lane_##T2##W(VECT_VAR(vector, T1, W, N), L); \ vst1##Q##_##T2##W(VECT_VAR(result, T1, W, N), VECT_VAR(vector, T1, W, N)); \ - fprintf(ref_file, "%" PRIx##W ", ", VAR(var, T1, W)) + fprintf(ref_file, "%s: %" PRIx##W "\n", "vget"STR(Q)"_lane_"STR(T2##W), VAR(var, T1, W)) /* Special variant for floating-point */ union { @@ -49,7 +49,7 @@ void exec_vget_lane (void) VAR(var, T1, W) = vget##Q##_lane_##T2##W(VECT_VAR(vector, T1, W, N), L); \ vst1##Q##_##T2##W(VECT_VAR(result, T1, W, N), VECT_VAR(vector, T1, W, N)); \ var_int##W##_float##W.var_float##W = VAR(var, T1, W); \ - fprintf(ref_file, "%" PRIx##W ", ", var_int##W##_float##W.var_int##W) + fprintf(ref_file, "%s: %" PRIx##W "\n", "vget"STR(Q)"_lane_"STR(T2##W), var_int##W##_float##W.var_int##W) /* With ARM RVCT, we need to declare variables before any executable statement */ -- cgit v1.2.3