aboutsummaryrefslogtreecommitdiff
path: root/src/core/NEON/kernels/arm_conv/pooling/kernels/sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst/generic.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/NEON/kernels/arm_conv/pooling/kernels/sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst/generic.cpp')
-rw-r--r--src/core/NEON/kernels/arm_conv/pooling/kernels/sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst/generic.cpp54
1 files changed, 27 insertions, 27 deletions
diff --git a/src/core/NEON/kernels/arm_conv/pooling/kernels/sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst/generic.cpp b/src/core/NEON/kernels/arm_conv/pooling/kernels/sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst/generic.cpp
index 9f267d76ea..9088cbde89 100644
--- a/src/core/NEON/kernels/arm_conv/pooling/kernels/sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst/generic.cpp
+++ b/src/core/NEON/kernels/arm_conv/pooling/kernels/sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst/generic.cpp
@@ -26,7 +26,7 @@
#include <cstddef>
#include <cstdint>
-#if defined(__ARM_FEATURE_SVE) && defined(ARM_COMPUTE_ENABLE_SME)
+#if defined(ARM_COMPUTE_ENABLE_SME)
namespace arm_conv {
namespace pooling {
@@ -70,23 +70,23 @@ void sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst_impl(
"ldr x20, [%x[args], %[offsetof_inptrs]]\n"
"mov x14, #0x0\n"
"ldr x13, [%x[args], %[offsetof_n_channels]]\n"
- "whilelt p1.b, x15, x13\n"
+ "whilelt p0.b, x15, x13\n"
"ldp x12, x11, [x21, #0x0]\n"
"ldp x10, x9, [x21, #0x10]\n"
"ldp x28, x27, [x20, #0x0]\n"
- "ld1b { z30.b }, p1/Z, [x27, x15]\n"
+ "ld1b { z30.b }, p0/Z, [x27, x15]\n"
"ldp x26, x25, [x20, #0x10]\n"
- "ld1b { z29.b }, p1/Z, [x25, x15]\n"
+ "ld1b { z29.b }, p0/Z, [x25, x15]\n"
"ldp x24, x23, [x20, #0x20]\n"
- "ld1b { z28.b }, p1/Z, [x24, x15]\n"
+ "ld1b { z28.b }, p0/Z, [x24, x15]\n"
"ldp x22, x21, [x20, #0x30]\n"
- "ld1b { z27.b }, p1/Z, [x21, x15]\n"
+ "ld1b { z27.b }, p0/Z, [x21, x15]\n"
"ldr x20, [x20, #0x40]\n"
- "ld1b { z26.b }, p1/Z, [x28, x15]\n"
- "ld1b { z25.b }, p1/Z, [x26, x15]\n"
- "ld1b { z24.b }, p1/Z, [x23, x15]\n"
- "ld1b { z23.b }, p1/Z, [x22, x15]\n"
- "ld1b { z19.b }, p1/Z, [x20, x15]\n"
+ "ld1b { z26.b }, p0/Z, [x28, x15]\n"
+ "ld1b { z25.b }, p0/Z, [x26, x15]\n"
+ "ld1b { z24.b }, p0/Z, [x23, x15]\n"
+ "ld1b { z19.b }, p0/Z, [x22, x15]\n"
+ "ld1b { z23.b }, p0/Z, [x20, x15]\n"
"incw x15\n"
"whilelt p1.b, x15, x13\n"
"b.none 2f\n"
@@ -95,25 +95,25 @@ void sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst_impl(
"movprfx z21, z28\n umax z21.b, p2/M, z21.b, z27.b\n"
"ld1b { z30.b }, p1/Z, [x27, x15]\n"
"whilelt p0.b, x14, x13\n"
- "movprfx z20, z29\n umax z20.b, p2/M, z20.b, z26.b\n"
- "movprfx z18, z25\n umax z18.b, p2/M, z18.b, z24.b\n"
+ "movprfx z18, z29\n umax z18.b, p2/M, z18.b, z26.b\n"
+ "movprfx z17, z25\n umax z17.b, p2/M, z17.b, z24.b\n"
"ld1b { z28.b }, p1/Z, [x24, x15]\n"
- "movprfx z17, z29\n umax z17.b, p2/M, z17.b, z23.b\n"
- "movprfx z16, z24\n umax z16.b, p2/M, z16.b, z19.b\n"
+ "movprfx z16, z29\n umax z16.b, p2/M, z16.b, z19.b\n"
+ "movprfx z20, z24\n umax z20.b, p2/M, z20.b, z23.b\n"
"ld1b { z27.b }, p1/Z, [x21, x15]\n"
"ld1b { z29.b }, p1/Z, [x25, x15]\n"
- "movprfx z19, z22\n umax z19.b, p2/M, z19.b, z20.b\n"
- "umax z18.b, p2/M, z18.b, z22.b\n"
+ "movprfx z19, z22\n umax z19.b, p2/M, z19.b, z18.b\n"
+ "movprfx z18, z17\n umax z18.b, p2/M, z18.b, z22.b\n"
"ld1b { z26.b }, p1/Z, [x28, x15]\n"
- "umax z17.b, p2/M, z17.b, z21.b\n"
- "umax z16.b, p2/M, z16.b, z21.b\n"
+ "movprfx z17, z16\n umax z17.b, p2/M, z17.b, z21.b\n"
+ "movprfx z16, z21\n umax z16.b, p2/M, z16.b, z20.b\n"
"ld1b { z25.b }, p1/Z, [x26, x15]\n"
"st1b { z19.b }, p0, [x12, x14]\n"
"ld1b { z24.b }, p1/Z, [x23, x15]\n"
"st1b { z18.b }, p0, [x11, x14]\n"
- "ld1b { z23.b }, p1/Z, [x22, x15]\n"
+ "ld1b { z19.b }, p1/Z, [x22, x15]\n"
"st1b { z17.b }, p0, [x10, x14]\n"
- "ld1b { z19.b }, p1/Z, [x20, x15]\n"
+ "ld1b { z23.b }, p1/Z, [x20, x15]\n"
"incw x15\n"
"whilelt p1.b, x15, x13\n"
"st1b { z16.b }, p0, [x9, x14]\n"
@@ -125,13 +125,13 @@ void sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst_impl(
"whilelt p0.b, x14, x13\n"
"movprfx z20, z29\n umax z20.b, p2/M, z20.b, z26.b\n"
"movprfx z18, z25\n umax z18.b, p2/M, z18.b, z24.b\n"
- "movprfx z17, z29\n umax z17.b, p2/M, z17.b, z23.b\n"
- "movprfx z16, z24\n umax z16.b, p2/M, z16.b, z19.b\n"
- "movprfx z19, z22\n umax z19.b, p2/M, z19.b, z20.b\n"
+ "movprfx z17, z29\n umax z17.b, p2/M, z17.b, z19.b\n"
+ "movprfx z19, z24\n umax z19.b, p2/M, z19.b, z23.b\n"
+ "movprfx z16, z22\n umax z16.b, p2/M, z16.b, z20.b\n"
"umax z18.b, p2/M, z18.b, z22.b\n"
- "st1b { z19.b }, p0, [x12, x14]\n"
+ "st1b { z16.b }, p0, [x12, x14]\n"
"umax z17.b, p2/M, z17.b, z21.b\n"
- "umax z16.b, p2/M, z16.b, z21.b\n"
+ "movprfx z16, z21\n umax z16.b, p2/M, z16.b, z19.b\n"
"st1b { z18.b }, p0, [x11, x14]\n"
"st1b { z17.b }, p0, [x10, x14]\n"
"st1b { z16.b }, p0, [x9, x14]\n"
@@ -145,4 +145,4 @@ void sme_u8_nhwc_max_2x2_s1_output2x2_depthfirst_impl(
} // namespace pooling
} // namespace arm_conv
-#endif // defined(__ARM_FEATURE_SVE) && defined(ARM_COMPUTE_ENABLE_SME)
+#endif // defined(ARM_COMPUTE_ENABLE_SME)