Lines Matching refs:funct3
19 class LR_r<bit aq, bit rl, bits<3> funct3, string opcodestr>
20 : RVInstRAtomic<0b00010, aq, rl, funct3, OPC_AMO,
26 multiclass LR_r_aq_rl<bits<3> funct3, string opcodestr> {
27 def "" : LR_r<0, 0, funct3, opcodestr>;
28 def _AQ : LR_r<1, 0, funct3, opcodestr # ".aq">;
29 def _RL : LR_r<0, 1, funct3, opcodestr # ".rl">;
30 def _AQ_RL : LR_r<1, 1, funct3, opcodestr # ".aqrl">;
34 class SC_r<bit aq, bit rl, bits<3> funct3, string opcodestr>
35 : RVInstRAtomic<0b00011, aq, rl, funct3, OPC_AMO,
39 multiclass SC_r_aq_rl<bits<3> funct3, string opcodestr> {
40 def "" : SC_r<0, 0, funct3, opcodestr>;
41 def _AQ : SC_r<1, 0, funct3, opcodestr # ".aq">;
42 def _RL : SC_r<0, 1, funct3, opcodestr # ".rl">;
43 def _AQ_RL : SC_r<1, 1, funct3, opcodestr # ".aqrl">;
47 class AMO_rr<bits<5> funct5, bit aq, bit rl, bits<3> funct3, string opcodestr>
48 : RVInstRAtomic<funct5, aq, rl, funct3, OPC_AMO,
52 multiclass AMO_rr_aq_rl<bits<5> funct5, bits<3> funct3, string opcodestr> {
53 def "" : AMO_rr<funct5, 0, 0, funct3, opcodestr>;
54 def _AQ : AMO_rr<funct5, 1, 0, funct3, opcodestr # ".aq">;
55 def _RL : AMO_rr<funct5, 0, 1, funct3, opcodestr # ".rl">;
56 def _AQ_RL : AMO_rr<funct5, 1, 1, funct3, opcodestr # ".aqrl">;