1010// RUN: -emit-llvm -o - %s \
1111// RUN: | opt -S -passes=instcombine,mem2reg,simplifycfg -o %t.ll
1212// RUN: FileCheck --check-prefix=LLVM --input-file=%t.ll %s
13- // XFAIL: *
1413
1514// REQUIRES: aarch64-registered-target || arm-registered-target
1615#include <arm_neon.h>
@@ -44,11 +43,7 @@ float32x2_t test_vrnda_f32(float32x2_t a) {
4443}
4544
4645// CIR: cir.func internal private dso_local @vrnda_f32(%arg0: !cir.vector<!cir.float x 2>
47- // CIR: cir.store %arg0, [[ARG_SAVE:%.*]] : !cir.vector<!cir.float x 2>, !cir.ptr<!cir.vector<!cir.float x 2>>
48- // CIR: [[INTRIN_ARG:%.*]] = cir.load{{.*}} [[ARG_SAVE]] : !cir.ptr<!cir.vector<!cir.float x 2>>, !cir.vector<!cir.float x 2>
49- // CIR: [[INTRIN_ARG_CAST:%.*]] = cir.cast(bitcast, [[INTRIN_ARG]] : !cir.vector<!cir.float x 2>), !cir.vector<!s8i x 8>
50- // CIR: [[INTRIN_ARG_BACK:%.*]] = cir.cast(bitcast, [[INTRIN_ARG_CAST]] : !cir.vector<!s8i x 8>), !cir.vector<!cir.float x 2>
51- // CIR: {{%.*}} = cir.round [[INTRIN_ARG_BACK]] : !cir.vector<!cir.float x 2>
46+ // CIR: {{%.*}} = cir.round {{.*}} : !cir.vector<!cir.float x 2>
5247// CIR: cir.return {{%.*}} : !cir.vector<!cir.float x 2>
5348
5449// CIR-LABEL: test_vrnda_f32
@@ -69,10 +64,7 @@ float32x4_t test_vrndaq_f32(float32x4_t a) {
6964
7065// CIR: cir.func internal private dso_local @vrndaq_f32(%arg0: !cir.vector<!cir.float x 4>
7166// CIR: cir.store %arg0, [[ARG_SAVE:%.*]] : !cir.vector<!cir.float x 4>, !cir.ptr<!cir.vector<!cir.float x 4>>
72- // CIR: [[INTRIN_ARG:%.*]] = cir.load{{.*}} [[ARG_SAVE]] : !cir.ptr<!cir.vector<!cir.float x 4>>, !cir.vector<!cir.float x 4>
73- // CIR: [[INTRIN_ARG_CAST:%.*]] = cir.cast(bitcast, [[INTRIN_ARG]] : !cir.vector<!cir.float x 4>), !cir.vector<!s8i x 16>
74- // CIR: [[INTRIN_ARG_BACK:%.*]] = cir.cast(bitcast, [[INTRIN_ARG_CAST]] : !cir.vector<!s8i x 16>), !cir.vector<!cir.float x 4>
75- // CIR: {{%.*}} = cir.round [[INTRIN_ARG_BACK]] : !cir.vector<!cir.float x 4>
67+ // CIR: {{%.*}} = cir.round {{.*}} : !cir.vector<!cir.float x 4>
7668// CIR: cir.return {{%.*}} : !cir.vector<!cir.float x 4>
7769
7870// LLVM: {{.*}}test_vrndaq_f32(<4 x float>{{.*}}[[ARG:%.*]])
0 commit comments