File tree 2 files changed +5
-0
lines changed
lib/Dialect/ArmSME/Transforms
2 files changed +5
-0
lines changed Original file line number Diff line number Diff line change @@ -59,6 +59,8 @@ void mlir::configureArmSMELegalizeForExportTarget(
59
59
// 2. the 'arm_za' function attribute is present and the first op in the
60
60
// function is an 'arm_sme::aarch64_sme_za_enable' intrinsic.
61
61
target.addDynamicallyLegalOp <func::FuncOp>([&](func::FuncOp funcOp) {
62
+ if (funcOp.isDeclaration ())
63
+ return true ;
62
64
auto firstOp = funcOp.getBody ().front ().begin ();
63
65
return !funcOp->hasAttr (" arm_za" ) ||
64
66
isa<arm_sme::aarch64_sme_za_enable>(firstOp);
Original file line number Diff line number Diff line change 2
2
// RUN: mlir-opt %s -enable-arm-streaming -convert-vector-to-llvm="enable-arm-sme" | FileCheck %s -check-prefix=DISABLE-ZA
3
3
// RUN: mlir-opt %s -convert-vector-to-llvm="enable-arm-sme" | FileCheck %s -check-prefix=NO-ARM-STREAMING
4
4
5
+ // CHECK-LABEL: @declaration
6
+ func.func private @declaration ()
7
+
5
8
// CHECK-LABEL: @arm_za
6
9
func.func @arm_za () {
7
10
// ENABLE-ZA: arm_sme.intr.za.enable
You can’t perform that action at this time.
0 commit comments