@@ -5601,6 +5601,7 @@ class sme2_bf16_fp32_quarter_tile_outer_product<bit M, bit N, bit S, string mnem
56015601 let Inst{1-0} = ZAda;
56025602
56035603 let Constraints = "$ZAda = $_ZAda";
5604+ let Uses = [FPCR];
56045605}
56055606
56065607multiclass sme2_bfmop4as_widening<bit S, string mnemonic, string op> {
@@ -5764,6 +5765,7 @@ class sme2_fp16_quarter_tile_outer_product<bit M, bit N, bit S, string mnemonic,
57645765 let Inst{0} = ZAda;
57655766
57665767 let Constraints = "$ZAda = $_ZAda";
5768+ let Uses = [FPCR];
57675769}
57685770
57695771multiclass sme2_fmop4as_fp16_non_widening<bit S, string mnemonic, string op> {
@@ -5869,6 +5871,7 @@ class sme2_bf16_fp16_quarter_tile_outer_product<bit M, bit N, bit S, string mnem
58695871 let Inst{0} = ZAda;
58705872
58715873 let Constraints = "$ZAda = $_ZAda";
5874+ let Uses = [FPCR];
58725875}
58735876
58745877multiclass sme2_bfmop4as_non_widening<bit S, string mnemonic, string op> {
@@ -5922,6 +5925,7 @@ class sme2_fp32_quarter_tile_outer_product<bit M, bit N, bit S, string mnemonic,
59225925 let Inst{1-0} = ZAda;
59235926
59245927 let Constraints = "$ZAda = $_ZAda";
5928+ let Uses = [FPCR];
59255929}
59265930
59275931multiclass sme2_fmop4as_fp32_non_widening<bit S, string mnemonic, string op> {
@@ -5975,6 +5979,7 @@ class sme2_fp64_quarter_tile_outer_product<bit M, bit N, bit S, string mnemonic,
59755979 let Inst{2-0} = ZAda;
59765980
59775981 let Constraints = "$ZAda = $_ZAda";
5982+ let Uses = [FPCR];
59785983}
59795984
59805985multiclass sme2_fmop4as_fp64_non_widening<bit S, string mnemonic, string op> {
@@ -6028,6 +6033,7 @@ class sme2_fp16_fp32_quarter_tile_outer_product<bit M, bit N, bit S, string mnem
60286033 let Inst{1-0} = ZAda;
60296034
60306035 let Constraints = "$ZAda = $_ZAda";
6036+ let Uses = [FPCR];
60316037}
60326038
60336039multiclass sme2_fmop4as_fp16_fp32_widening<bit S, string mnemonic, string op> {
0 commit comments