From c8196921610abdf83eadb294945fd63bddfbf87f Mon Sep 17 00:00:00 2001 From: Christophe Lyon Date: Tue, 18 Nov 2014 11:19:52 +0000 Subject: [PATCH] neon-testgen.ml (emit_prologue): Handle new compile_test_optim argument. 2014-11-18 Christophe Lyon gcc/ * config/arm/neon-testgen.ml (emit_prologue): Handle new compile_test_optim argument. (emit_automatics): Rename to emit_variables. Support variable indentation of its output. (compile_test_optim): New function. (test_intrinsic): Call compile_test_optim. * config/arm/neon.ml (features): Add Compiler_optim. (ops): Add Compiler_optim feature to Vbic and Vorn. (type_in_crypto_only): Replace 'or' by '||'. (reinterp): Likewise. (reinterpq): Likewise. testsuite/ * gcc.target/arm/neon/vbicQs16.c: Regenerate. * gcc.target/arm/neon/vbicQs32.c: Likewise. * gcc.target/arm/neon/vbicQs64.c: Likewise. * gcc.target/arm/neon/vbicQs8.c: Likewise. * gcc.target/arm/neon/vbicQu16.c: Likewise. * gcc.target/arm/neon/vbicQu32.c: Likewise. * gcc.target/arm/neon/vbicQu64.c: Likewise. * gcc.target/arm/neon/vbicQu8.c: Likewise. * gcc.target/arm/neon/vbics16.c: Likewise. * gcc.target/arm/neon/vbics32.c: Likewise. * gcc.target/arm/neon/vbics64.c: Likewise. * gcc.target/arm/neon/vbics8.c: Likewise. * gcc.target/arm/neon/vbicu16.c: Likewise. * gcc.target/arm/neon/vbicu32.c: Likewise. * gcc.target/arm/neon/vbicu64.c: Likewise. * gcc.target/arm/neon/vbicu8.c: Likewise. * gcc.target/arm/neon/vornQs16.c: Likewise. * gcc.target/arm/neon/vornQs32.c: Likewise. * gcc.target/arm/neon/vornQs64.c: Likewise. * gcc.target/arm/neon/vornQs8.c: Likewise. * gcc.target/arm/neon/vornQu16.c: Likewise. * gcc.target/arm/neon/vornQu32.c: Likewise. * gcc.target/arm/neon/vornQu64.c: Likewise. * gcc.target/arm/neon/vornQu8.c: Likewise. * gcc.target/arm/neon/vorns16.c: Likewise. * gcc.target/arm/neon/vorns32.c: Likewise. * gcc.target/arm/neon/vorns64.c: Likewise. * gcc.target/arm/neon/vorns8.c: Likewise. * gcc.target/arm/neon/vornu16.c: Likewise. * gcc.target/arm/neon/vornu32.c: Likewise. * gcc.target/arm/neon/vornu64.c: Likewise. * gcc.target/arm/neon/vornu8.c: Likewise. From-SVN: r217707 --- gcc/ChangeLog | 14 +++++ gcc/config/arm/neon-testgen.ml | 54 ++++++++++++++------ gcc/config/arm/neon.ml | 20 ++++---- gcc/testsuite/ChangeLog | 35 +++++++++++++ gcc/testsuite/gcc.target/arm/neon/vbicQs16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicQs32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicQs64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicQs8.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicQu16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicQu32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicQu64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicQu8.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbics16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbics32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbics64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbics8.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicu16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicu32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicu64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vbicu8.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQs16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQs32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQs64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQs8.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQu16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQu32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQu64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornQu8.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vorns16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vorns32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vorns64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vorns8.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornu16.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornu32.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornu64.c | 8 +-- gcc/testsuite/gcc.target/arm/neon/vornu8.c | 8 +-- 36 files changed, 225 insertions(+), 154 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d3205b27515..1dc082d3b11 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +2014-11-18 Christophe Lyon + + * config/arm/neon-testgen.ml (emit_prologue): Handle new + compile_test_optim argument. + (emit_automatics): Rename to emit_variables. Support variable + indentation of its output. + (compile_test_optim): New function. + (test_intrinsic): Call compile_test_optim. + * config/arm/neon.ml (features): Add Compiler_optim. + (ops): Add Compiler_optim feature to Vbic and Vorn. + (type_in_crypto_only): Replace 'or' by '||'. + (reinterp): Likewise. + (reinterpq): Likewise. + 2014-11-18 Alan Lawrence * config/aarch64/arm_neon.h (vld1_dup_f32, vld1_dup_f64, vld1_dup_p8, diff --git a/gcc/config/arm/neon-testgen.ml b/gcc/config/arm/neon-testgen.ml index df429f59e27..f3898193835 100644 --- a/gcc/config/arm/neon-testgen.ml +++ b/gcc/config/arm/neon-testgen.ml @@ -46,20 +46,19 @@ let open_test_file dir name = failwith ("Could not create test source file " ^ name ^ ": " ^ str) (* Emit prologue code to a test source file. *) -let emit_prologue chan test_name effective_target = +let emit_prologue chan test_name effective_target compile_test_optim = Printf.fprintf chan "/* Test the `%s' ARM Neon intrinsic. */\n" test_name; Printf.fprintf chan "/* This file was autogenerated by neon-testgen. */\n\n"; Printf.fprintf chan "/* { dg-do assemble } */\n"; Printf.fprintf chan "/* { dg-require-effective-target %s_ok } */\n" effective_target; - Printf.fprintf chan "/* { dg-options \"-save-temps -O0\" } */\n"; + Printf.fprintf chan "/* { dg-options \"-save-temps %s\" } */\n" compile_test_optim; Printf.fprintf chan "/* { dg-add-options %s } */\n" effective_target; - Printf.fprintf chan "\n#include \"arm_neon.h\"\n\n"; - Printf.fprintf chan "void test_%s (void)\n{\n" test_name + Printf.fprintf chan "\n#include \"arm_neon.h\"\n\n" -(* Emit declarations of local variables that are going to be passed +(* Emit declarations of variables that are going to be passed to an intrinsic, together with one to take a returned value if needed. *) -let emit_automatics chan c_types features = +let emit_variables chan c_types features spaces = let emit () = ignore ( List.fold_left (fun arg_number -> fun (flags, ty) -> @@ -69,8 +68,8 @@ let emit_automatics chan c_types features = (* Const arguments to builtins are directly written in as constants. *) if not (List.mem Const flags) then - Printf.fprintf chan " %s %sarg%d_%s;\n" - ty pointer_bit arg_number ty; + Printf.fprintf chan "%s%s %sarg%d_%s;\n" + spaces ty pointer_bit arg_number ty; arg_number + 1) 0 (List.tl c_types)) in @@ -81,13 +80,13 @@ let emit_automatics chan c_types features = allocation for vget_low tests or they fail because of copy elimination. *) ((if List.mem Fixed_vector_reg features then - Printf.fprintf chan " register %s out_%s asm (\"d18\");\n" - return_ty return_ty + Printf.fprintf chan "%sregister %s out_%s asm (\"d18\");\n" + spaces return_ty return_ty else if List.mem Fixed_core_reg features then - Printf.fprintf chan " register %s out_%s asm (\"r0\");\n" - return_ty return_ty + Printf.fprintf chan "%sregister %s out_%s asm (\"r0\");\n" + spaces return_ty return_ty else - Printf.fprintf chan " %s out_%s;\n" return_ty return_ty); + Printf.fprintf chan "%s%s out_%s;\n" spaces return_ty return_ty); emit ()) end else (* The intrinsic does not return a value. *) @@ -173,6 +172,17 @@ let effective_target features = | _ -> assert false with Not_found -> "arm_neon" +(* Work out what the testcase optimization level should be, default to -O0. *) +let compile_test_optim features = + try + match List.find (fun feature -> + match feature with Compiler_optim _ -> true + | _ -> false) + features with + Compiler_optim opt -> opt + | _ -> assert false + with Not_found -> "-O0" + (* Given an intrinsic shape, produce a regexp that will match the right-hand sides of instructions generated by an intrinsic of that shape. *) @@ -280,12 +290,22 @@ let test_intrinsic dir opcode features shape name munge elt_ty = "!?\\(\\[ \t\\]+@\\[a-zA-Z0-9 \\]+\\)?\\n") (analyze_all_shapes features shape analyze_shape) in - let effective_target = effective_target features + let effective_target = effective_target features in + let compile_test_optim = compile_test_optim features in (* Emit file and function prologues. *) - emit_prologue chan test_name effective_target; - (* Emit local variable declarations. *) - emit_automatics chan c_types features; + emit_prologue chan test_name effective_target compile_test_optim; + + if (compare compile_test_optim "-O0") <> 0 then + (* Emit variable declarations. *) + emit_variables chan c_types features ""; + + Printf.fprintf chan "void test_%s (void)\n{\n" test_name; + + if compare compile_test_optim "-O0" = 0 then + (* Emit variable declarations. *) + emit_variables chan c_types features " "; + Printf.fprintf chan "\n"; (* Emit the call to the intrinsic. *) emit_call chan const_valuator c_types name elt_ty; diff --git a/gcc/config/arm/neon.ml b/gcc/config/arm/neon.ml index 4289b8ce005..e16e2b063e9 100644 --- a/gcc/config/arm/neon.ml +++ b/gcc/config/arm/neon.ml @@ -294,6 +294,8 @@ type features = (* Mark that the intrinsic requires a particular bit in __ARM_FP to be set. *) | Requires_FP_bit of int + (* Compiler optimization level for the test. *) + | Compiler_optim of string exception MixedMode of elts * elts @@ -1941,18 +1943,18 @@ let ops = Veor, [], All (3, Qreg), "veorQ", notype_2, su_8_64; (* Bic (And-not). *) - Vbic, [], All (3, Dreg), "vbic", notype_2, su_8_32; - Vbic, [No_op], All (3, Dreg), "vbic", notype_2, [S64; U64]; - Vbic, [], All (3, Qreg), "vbicQ", notype_2, su_8_64; + Vbic, [Compiler_optim "-O2"], All (3, Dreg), "vbic", notype_2, su_8_32; + Vbic, [No_op; Compiler_optim "-O2"], All (3, Dreg), "vbic", notype_2, [S64; U64]; + Vbic, [Compiler_optim "-O2"], All (3, Qreg), "vbicQ", notype_2, su_8_64; (* Or-not. *) - Vorn, [], All (3, Dreg), "vorn", notype_2, su_8_32; - Vorn, [No_op], All (3, Dreg), "vorn", notype_2, [S64; U64]; - Vorn, [], All (3, Qreg), "vornQ", notype_2, su_8_64; + Vorn, [Compiler_optim "-O2"], All (3, Dreg), "vorn", notype_2, su_8_32; + Vorn, [No_op; Compiler_optim "-O2"], All (3, Dreg), "vorn", notype_2, [S64; U64]; + Vorn, [Compiler_optim "-O2"], All (3, Qreg), "vornQ", notype_2, su_8_64; ] let type_in_crypto_only t - = (t == P64) or (t == P128) + = (t == P64) || (t == P128) let cross_product s1 s2 = List.filter (fun (e, e') -> e <> e') @@ -1963,7 +1965,7 @@ let reinterp = let casts = cross_product elems elems in List.map (fun (convto, convfrom) -> - Vreinterp, (if (type_in_crypto_only convto) or (type_in_crypto_only convfrom) + Vreinterp, (if (type_in_crypto_only convto) || (type_in_crypto_only convfrom) then [Requires_feature "CRYPTO"] else []) @ [No_op], Use_operands [| Dreg; Dreg |], "vreinterpret", conv_1, [Cast (convto, convfrom)]) casts @@ -1973,7 +1975,7 @@ let reinterpq = let casts = cross_product elems elems in List.map (fun (convto, convfrom) -> - Vreinterp, (if (type_in_crypto_only convto) or (type_in_crypto_only convfrom) + Vreinterp, (if (type_in_crypto_only convto) || (type_in_crypto_only convfrom) then [Requires_feature "CRYPTO"] else []) @ [No_op], Use_operands [| Qreg; Qreg |], "vreinterpretQ", conv_1, [Cast (convto, convfrom)]) casts diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 477ca771642..80f5519aeb6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,38 @@ +2014-11-18 Christophe Lyon + + * gcc.target/arm/neon/vbicQs16.c: Regenerate. + * gcc.target/arm/neon/vbicQs32.c: Likewise. + * gcc.target/arm/neon/vbicQs64.c: Likewise. + * gcc.target/arm/neon/vbicQs8.c: Likewise. + * gcc.target/arm/neon/vbicQu16.c: Likewise. + * gcc.target/arm/neon/vbicQu32.c: Likewise. + * gcc.target/arm/neon/vbicQu64.c: Likewise. + * gcc.target/arm/neon/vbicQu8.c: Likewise. + * gcc.target/arm/neon/vbics16.c: Likewise. + * gcc.target/arm/neon/vbics32.c: Likewise. + * gcc.target/arm/neon/vbics64.c: Likewise. + * gcc.target/arm/neon/vbics8.c: Likewise. + * gcc.target/arm/neon/vbicu16.c: Likewise. + * gcc.target/arm/neon/vbicu32.c: Likewise. + * gcc.target/arm/neon/vbicu64.c: Likewise. + * gcc.target/arm/neon/vbicu8.c: Likewise. + * gcc.target/arm/neon/vornQs16.c: Likewise. + * gcc.target/arm/neon/vornQs32.c: Likewise. + * gcc.target/arm/neon/vornQs64.c: Likewise. + * gcc.target/arm/neon/vornQs8.c: Likewise. + * gcc.target/arm/neon/vornQu16.c: Likewise. + * gcc.target/arm/neon/vornQu32.c: Likewise. + * gcc.target/arm/neon/vornQu64.c: Likewise. + * gcc.target/arm/neon/vornQu8.c: Likewise. + * gcc.target/arm/neon/vorns16.c: Likewise. + * gcc.target/arm/neon/vorns32.c: Likewise. + * gcc.target/arm/neon/vorns64.c: Likewise. + * gcc.target/arm/neon/vorns8.c: Likewise. + * gcc.target/arm/neon/vornu16.c: Likewise. + * gcc.target/arm/neon/vornu32.c: Likewise. + * gcc.target/arm/neon/vornu64.c: Likewise. + * gcc.target/arm/neon/vornu8.c: Likewise. + 2014-11-18 Christophe Lyon * gcc.target/aarch64/advsimd-intrinsics/vcls.c: New test. diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQs16.c b/gcc/testsuite/gcc.target/arm/neon/vbicQs16.c index e15a260ef11..c8c026f015f 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQs16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQs16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int16x8_t out_int16x8_t; +int16x8_t arg0_int16x8_t; +int16x8_t arg1_int16x8_t; void test_vbicQs16 (void) { - int16x8_t out_int16x8_t; - int16x8_t arg0_int16x8_t; - int16x8_t arg1_int16x8_t; out_int16x8_t = vbicq_s16 (arg0_int16x8_t, arg1_int16x8_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQs32.c b/gcc/testsuite/gcc.target/arm/neon/vbicQs32.c index f376bf077ca..3b858576ac1 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQs32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQs32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int32x4_t out_int32x4_t; +int32x4_t arg0_int32x4_t; +int32x4_t arg1_int32x4_t; void test_vbicQs32 (void) { - int32x4_t out_int32x4_t; - int32x4_t arg0_int32x4_t; - int32x4_t arg1_int32x4_t; out_int32x4_t = vbicq_s32 (arg0_int32x4_t, arg1_int32x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQs64.c b/gcc/testsuite/gcc.target/arm/neon/vbicQs64.c index 87049f129dc..d71da8737a5 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQs64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQs64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int64x2_t out_int64x2_t; +int64x2_t arg0_int64x2_t; +int64x2_t arg1_int64x2_t; void test_vbicQs64 (void) { - int64x2_t out_int64x2_t; - int64x2_t arg0_int64x2_t; - int64x2_t arg1_int64x2_t; out_int64x2_t = vbicq_s64 (arg0_int64x2_t, arg1_int64x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQs8.c b/gcc/testsuite/gcc.target/arm/neon/vbicQs8.c index 4f64e881782..4cbfe9fde64 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQs8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQs8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int8x16_t out_int8x16_t; +int8x16_t arg0_int8x16_t; +int8x16_t arg1_int8x16_t; void test_vbicQs8 (void) { - int8x16_t out_int8x16_t; - int8x16_t arg0_int8x16_t; - int8x16_t arg1_int8x16_t; out_int8x16_t = vbicq_s8 (arg0_int8x16_t, arg1_int8x16_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQu16.c b/gcc/testsuite/gcc.target/arm/neon/vbicQu16.c index f92f9b38498..6661c510d80 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQu16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQu16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint16x8_t out_uint16x8_t; +uint16x8_t arg0_uint16x8_t; +uint16x8_t arg1_uint16x8_t; void test_vbicQu16 (void) { - uint16x8_t out_uint16x8_t; - uint16x8_t arg0_uint16x8_t; - uint16x8_t arg1_uint16x8_t; out_uint16x8_t = vbicq_u16 (arg0_uint16x8_t, arg1_uint16x8_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQu32.c b/gcc/testsuite/gcc.target/arm/neon/vbicQu32.c index 06d10da2355..ca8391e9248 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQu32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQu32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint32x4_t out_uint32x4_t; +uint32x4_t arg0_uint32x4_t; +uint32x4_t arg1_uint32x4_t; void test_vbicQu32 (void) { - uint32x4_t out_uint32x4_t; - uint32x4_t arg0_uint32x4_t; - uint32x4_t arg1_uint32x4_t; out_uint32x4_t = vbicq_u32 (arg0_uint32x4_t, arg1_uint32x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQu64.c b/gcc/testsuite/gcc.target/arm/neon/vbicQu64.c index 7cd63c0358c..d565333d6ec 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQu64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQu64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint64x2_t out_uint64x2_t; +uint64x2_t arg0_uint64x2_t; +uint64x2_t arg1_uint64x2_t; void test_vbicQu64 (void) { - uint64x2_t out_uint64x2_t; - uint64x2_t arg0_uint64x2_t; - uint64x2_t arg1_uint64x2_t; out_uint64x2_t = vbicq_u64 (arg0_uint64x2_t, arg1_uint64x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicQu8.c b/gcc/testsuite/gcc.target/arm/neon/vbicQu8.c index 3f44418d704..d9f18edb490 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicQu8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicQu8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint8x16_t out_uint8x16_t; +uint8x16_t arg0_uint8x16_t; +uint8x16_t arg1_uint8x16_t; void test_vbicQu8 (void) { - uint8x16_t out_uint8x16_t; - uint8x16_t arg0_uint8x16_t; - uint8x16_t arg1_uint8x16_t; out_uint8x16_t = vbicq_u8 (arg0_uint8x16_t, arg1_uint8x16_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbics16.c b/gcc/testsuite/gcc.target/arm/neon/vbics16.c index 943e3053417..7247878fa70 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbics16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbics16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int16x4_t out_int16x4_t; +int16x4_t arg0_int16x4_t; +int16x4_t arg1_int16x4_t; void test_vbics16 (void) { - int16x4_t out_int16x4_t; - int16x4_t arg0_int16x4_t; - int16x4_t arg1_int16x4_t; out_int16x4_t = vbic_s16 (arg0_int16x4_t, arg1_int16x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbics32.c b/gcc/testsuite/gcc.target/arm/neon/vbics32.c index 30df639e305..585d2ef16dc 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbics32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbics32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int32x2_t out_int32x2_t; +int32x2_t arg0_int32x2_t; +int32x2_t arg1_int32x2_t; void test_vbics32 (void) { - int32x2_t out_int32x2_t; - int32x2_t arg0_int32x2_t; - int32x2_t arg1_int32x2_t; out_int32x2_t = vbic_s32 (arg0_int32x2_t, arg1_int32x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbics64.c b/gcc/testsuite/gcc.target/arm/neon/vbics64.c index 379db45f4db..8932a287138 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbics64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbics64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int64x1_t out_int64x1_t; +int64x1_t arg0_int64x1_t; +int64x1_t arg1_int64x1_t; void test_vbics64 (void) { - int64x1_t out_int64x1_t; - int64x1_t arg0_int64x1_t; - int64x1_t arg1_int64x1_t; out_int64x1_t = vbic_s64 (arg0_int64x1_t, arg1_int64x1_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbics8.c b/gcc/testsuite/gcc.target/arm/neon/vbics8.c index 3b4bc8a8d87..9a1839a1c8a 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbics8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbics8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int8x8_t out_int8x8_t; +int8x8_t arg0_int8x8_t; +int8x8_t arg1_int8x8_t; void test_vbics8 (void) { - int8x8_t out_int8x8_t; - int8x8_t arg0_int8x8_t; - int8x8_t arg1_int8x8_t; out_int8x8_t = vbic_s8 (arg0_int8x8_t, arg1_int8x8_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicu16.c b/gcc/testsuite/gcc.target/arm/neon/vbicu16.c index e9952bc52c4..3f3002b7af7 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicu16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicu16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint16x4_t out_uint16x4_t; +uint16x4_t arg0_uint16x4_t; +uint16x4_t arg1_uint16x4_t; void test_vbicu16 (void) { - uint16x4_t out_uint16x4_t; - uint16x4_t arg0_uint16x4_t; - uint16x4_t arg1_uint16x4_t; out_uint16x4_t = vbic_u16 (arg0_uint16x4_t, arg1_uint16x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicu32.c b/gcc/testsuite/gcc.target/arm/neon/vbicu32.c index 9334f403f64..0653d6df038 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicu32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicu32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint32x2_t out_uint32x2_t; +uint32x2_t arg0_uint32x2_t; +uint32x2_t arg1_uint32x2_t; void test_vbicu32 (void) { - uint32x2_t out_uint32x2_t; - uint32x2_t arg0_uint32x2_t; - uint32x2_t arg1_uint32x2_t; out_uint32x2_t = vbic_u32 (arg0_uint32x2_t, arg1_uint32x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicu64.c b/gcc/testsuite/gcc.target/arm/neon/vbicu64.c index c276d65ebe3..7d0571388a5 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicu64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicu64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint64x1_t out_uint64x1_t; +uint64x1_t arg0_uint64x1_t; +uint64x1_t arg1_uint64x1_t; void test_vbicu64 (void) { - uint64x1_t out_uint64x1_t; - uint64x1_t arg0_uint64x1_t; - uint64x1_t arg1_uint64x1_t; out_uint64x1_t = vbic_u64 (arg0_uint64x1_t, arg1_uint64x1_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vbicu8.c b/gcc/testsuite/gcc.target/arm/neon/vbicu8.c index 5e42c52374f..10c70b0b0eb 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vbicu8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vbicu8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint8x8_t out_uint8x8_t; +uint8x8_t arg0_uint8x8_t; +uint8x8_t arg1_uint8x8_t; void test_vbicu8 (void) { - uint8x8_t out_uint8x8_t; - uint8x8_t arg0_uint8x8_t; - uint8x8_t arg1_uint8x8_t; out_uint8x8_t = vbic_u8 (arg0_uint8x8_t, arg1_uint8x8_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQs16.c b/gcc/testsuite/gcc.target/arm/neon/vornQs16.c index 519da3cccb0..2e635643785 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQs16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQs16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int16x8_t out_int16x8_t; +int16x8_t arg0_int16x8_t; +int16x8_t arg1_int16x8_t; void test_vornQs16 (void) { - int16x8_t out_int16x8_t; - int16x8_t arg0_int16x8_t; - int16x8_t arg1_int16x8_t; out_int16x8_t = vornq_s16 (arg0_int16x8_t, arg1_int16x8_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQs32.c b/gcc/testsuite/gcc.target/arm/neon/vornQs32.c index cec659911a3..339514b7c88 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQs32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQs32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int32x4_t out_int32x4_t; +int32x4_t arg0_int32x4_t; +int32x4_t arg1_int32x4_t; void test_vornQs32 (void) { - int32x4_t out_int32x4_t; - int32x4_t arg0_int32x4_t; - int32x4_t arg1_int32x4_t; out_int32x4_t = vornq_s32 (arg0_int32x4_t, arg1_int32x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQs64.c b/gcc/testsuite/gcc.target/arm/neon/vornQs64.c index 05166ba4e8d..64d62698f3e 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQs64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQs64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int64x2_t out_int64x2_t; +int64x2_t arg0_int64x2_t; +int64x2_t arg1_int64x2_t; void test_vornQs64 (void) { - int64x2_t out_int64x2_t; - int64x2_t arg0_int64x2_t; - int64x2_t arg1_int64x2_t; out_int64x2_t = vornq_s64 (arg0_int64x2_t, arg1_int64x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQs8.c b/gcc/testsuite/gcc.target/arm/neon/vornQs8.c index 99982aefdb2..c8b1ed2624d 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQs8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQs8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int8x16_t out_int8x16_t; +int8x16_t arg0_int8x16_t; +int8x16_t arg1_int8x16_t; void test_vornQs8 (void) { - int8x16_t out_int8x16_t; - int8x16_t arg0_int8x16_t; - int8x16_t arg1_int8x16_t; out_int8x16_t = vornq_s8 (arg0_int8x16_t, arg1_int8x16_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQu16.c b/gcc/testsuite/gcc.target/arm/neon/vornQu16.c index 761e72d7b26..c0663672087 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQu16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQu16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint16x8_t out_uint16x8_t; +uint16x8_t arg0_uint16x8_t; +uint16x8_t arg1_uint16x8_t; void test_vornQu16 (void) { - uint16x8_t out_uint16x8_t; - uint16x8_t arg0_uint16x8_t; - uint16x8_t arg1_uint16x8_t; out_uint16x8_t = vornq_u16 (arg0_uint16x8_t, arg1_uint16x8_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQu32.c b/gcc/testsuite/gcc.target/arm/neon/vornQu32.c index 18a9685397f..7a278e07b00 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQu32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQu32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint32x4_t out_uint32x4_t; +uint32x4_t arg0_uint32x4_t; +uint32x4_t arg1_uint32x4_t; void test_vornQu32 (void) { - uint32x4_t out_uint32x4_t; - uint32x4_t arg0_uint32x4_t; - uint32x4_t arg1_uint32x4_t; out_uint32x4_t = vornq_u32 (arg0_uint32x4_t, arg1_uint32x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQu64.c b/gcc/testsuite/gcc.target/arm/neon/vornQu64.c index 84c9f895db5..7948e10e290 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQu64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQu64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint64x2_t out_uint64x2_t; +uint64x2_t arg0_uint64x2_t; +uint64x2_t arg1_uint64x2_t; void test_vornQu64 (void) { - uint64x2_t out_uint64x2_t; - uint64x2_t arg0_uint64x2_t; - uint64x2_t arg1_uint64x2_t; out_uint64x2_t = vornq_u64 (arg0_uint64x2_t, arg1_uint64x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornQu8.c b/gcc/testsuite/gcc.target/arm/neon/vornQu8.c index ffe6766d468..31aa62cbd22 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornQu8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornQu8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint8x16_t out_uint8x16_t; +uint8x16_t arg0_uint8x16_t; +uint8x16_t arg1_uint8x16_t; void test_vornQu8 (void) { - uint8x16_t out_uint8x16_t; - uint8x16_t arg0_uint8x16_t; - uint8x16_t arg1_uint8x16_t; out_uint8x16_t = vornq_u8 (arg0_uint8x16_t, arg1_uint8x16_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vorns16.c b/gcc/testsuite/gcc.target/arm/neon/vorns16.c index b860142dc68..375a0e99761 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vorns16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vorns16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int16x4_t out_int16x4_t; +int16x4_t arg0_int16x4_t; +int16x4_t arg1_int16x4_t; void test_vorns16 (void) { - int16x4_t out_int16x4_t; - int16x4_t arg0_int16x4_t; - int16x4_t arg1_int16x4_t; out_int16x4_t = vorn_s16 (arg0_int16x4_t, arg1_int16x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vorns32.c b/gcc/testsuite/gcc.target/arm/neon/vorns32.c index 826e0d28864..502b9acfbf5 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vorns32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vorns32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int32x2_t out_int32x2_t; +int32x2_t arg0_int32x2_t; +int32x2_t arg1_int32x2_t; void test_vorns32 (void) { - int32x2_t out_int32x2_t; - int32x2_t arg0_int32x2_t; - int32x2_t arg1_int32x2_t; out_int32x2_t = vorn_s32 (arg0_int32x2_t, arg1_int32x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vorns64.c b/gcc/testsuite/gcc.target/arm/neon/vorns64.c index d7b8e60d208..090e9d44fab 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vorns64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vorns64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int64x1_t out_int64x1_t; +int64x1_t arg0_int64x1_t; +int64x1_t arg1_int64x1_t; void test_vorns64 (void) { - int64x1_t out_int64x1_t; - int64x1_t arg0_int64x1_t; - int64x1_t arg1_int64x1_t; out_int64x1_t = vorn_s64 (arg0_int64x1_t, arg1_int64x1_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vorns8.c b/gcc/testsuite/gcc.target/arm/neon/vorns8.c index c71a6bb0a3e..d50afc8a263 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vorns8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vorns8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +int8x8_t out_int8x8_t; +int8x8_t arg0_int8x8_t; +int8x8_t arg1_int8x8_t; void test_vorns8 (void) { - int8x8_t out_int8x8_t; - int8x8_t arg0_int8x8_t; - int8x8_t arg1_int8x8_t; out_int8x8_t = vorn_s8 (arg0_int8x8_t, arg1_int8x8_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornu16.c b/gcc/testsuite/gcc.target/arm/neon/vornu16.c index d4983eebfea..d20bffc272e 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornu16.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornu16.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint16x4_t out_uint16x4_t; +uint16x4_t arg0_uint16x4_t; +uint16x4_t arg1_uint16x4_t; void test_vornu16 (void) { - uint16x4_t out_uint16x4_t; - uint16x4_t arg0_uint16x4_t; - uint16x4_t arg1_uint16x4_t; out_uint16x4_t = vorn_u16 (arg0_uint16x4_t, arg1_uint16x4_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornu32.c b/gcc/testsuite/gcc.target/arm/neon/vornu32.c index aba68841a47..f17394f5bb8 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornu32.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornu32.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint32x2_t out_uint32x2_t; +uint32x2_t arg0_uint32x2_t; +uint32x2_t arg1_uint32x2_t; void test_vornu32 (void) { - uint32x2_t out_uint32x2_t; - uint32x2_t arg0_uint32x2_t; - uint32x2_t arg1_uint32x2_t; out_uint32x2_t = vorn_u32 (arg0_uint32x2_t, arg1_uint32x2_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornu64.c b/gcc/testsuite/gcc.target/arm/neon/vornu64.c index 6fb3a9502a6..86af5c56f9b 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornu64.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornu64.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint64x1_t out_uint64x1_t; +uint64x1_t arg0_uint64x1_t; +uint64x1_t arg1_uint64x1_t; void test_vornu64 (void) { - uint64x1_t out_uint64x1_t; - uint64x1_t arg0_uint64x1_t; - uint64x1_t arg1_uint64x1_t; out_uint64x1_t = vorn_u64 (arg0_uint64x1_t, arg1_uint64x1_t); } diff --git a/gcc/testsuite/gcc.target/arm/neon/vornu8.c b/gcc/testsuite/gcc.target/arm/neon/vornu8.c index 6fdb7331c0b..347f9c8fc93 100644 --- a/gcc/testsuite/gcc.target/arm/neon/vornu8.c +++ b/gcc/testsuite/gcc.target/arm/neon/vornu8.c @@ -3,16 +3,16 @@ /* { dg-do assemble } */ /* { dg-require-effective-target arm_neon_ok } */ -/* { dg-options "-save-temps -O0" } */ +/* { dg-options "-save-temps -O2" } */ /* { dg-add-options arm_neon } */ #include "arm_neon.h" +uint8x8_t out_uint8x8_t; +uint8x8_t arg0_uint8x8_t; +uint8x8_t arg1_uint8x8_t; void test_vornu8 (void) { - uint8x8_t out_uint8x8_t; - uint8x8_t arg0_uint8x8_t; - uint8x8_t arg1_uint8x8_t; out_uint8x8_t = vorn_u8 (arg0_uint8x8_t, arg1_uint8x8_t); } -- 2.30.2