| # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py |
| # RUN: llvm-mca -mtriple=riscv64 -mcpu=sifive-p670 -iterations=1 -instruction-tables=full %p/../Inputs/atomic.s | FileCheck %s |
| |
| # CHECK: Resources: |
| # CHECK-NEXT: [0] - SiFiveP600Branch:2 SiFiveP600IEXQ2, SiFiveP600IEXQ3 |
| # CHECK-NEXT: [1] - SiFiveP600Div:1 |
| # CHECK-NEXT: [2] - SiFiveP600FEXQ0:1 |
| # CHECK-NEXT: [3] - SiFiveP600FEXQ1:1 |
| # CHECK-NEXT: [4] - SiFiveP600FloatArith:2 SiFiveP600FEXQ0, SiFiveP600FEXQ1 |
| # CHECK-NEXT: [5] - SiFiveP600FloatDiv:1 |
| # CHECK-NEXT: [6] - SiFiveP600IEXQ0:1 |
| # CHECK-NEXT: [7] - SiFiveP600IEXQ1:1 |
| # CHECK-NEXT: [8] - SiFiveP600IEXQ2:1 |
| # CHECK-NEXT: [9] - SiFiveP600IEXQ3:1 |
| # CHECK-NEXT: [10] - SiFiveP600IntArith:4 SiFiveP600IEXQ0, SiFiveP600IEXQ1, SiFiveP600IEXQ2, SiFiveP600IEXQ3 |
| # CHECK-NEXT: [11] - SiFiveP600LDST:2 |
| # CHECK-NEXT: [12] - SiFiveP600VDiv:1 |
| # CHECK-NEXT: [13] - SiFiveP600VEXQ0:1 |
| # CHECK-NEXT: [14] - SiFiveP600VEXQ1:1 |
| # CHECK-NEXT: [15] - SiFiveP600VFloatDiv:1 |
| # CHECK-NEXT: [16] - SiFiveP600VLD:1 |
| # CHECK-NEXT: [17] - SiFiveP600VST:1 |
| # CHECK-NEXT: [18] - SiFiveP600VectorArith:2 SiFiveP600VEXQ0, SiFiveP600VEXQ1 |
| |
| # CHECK: Instruction Info: |
| # CHECK-NEXT: [1]: #uOps |
| # CHECK-NEXT: [2]: Latency |
| # CHECK-NEXT: [3]: RThroughput |
| # CHECK-NEXT: [4]: MayLoad |
| # CHECK-NEXT: [5]: MayStore |
| # CHECK-NEXT: [6]: HasSideEffects (U) |
| # CHECK-NEXT: [7]: Bypass Latency |
| # CHECK-NEXT: [8]: Resources (<Name> | <Name>[<ReleaseAtCycle>] | <Name>[<AcquireAtCycle>,<ReleaseAtCycle]) |
| # CHECK-NEXT: [9]: LLVM Opcode Name |
| |
| # CHECK: [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_W lr.w t0, (t1) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_W_AQ lr.w.aq t1, (t2) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_W_RL lr.w.rl t2, (t3) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_W_AQRL lr.w.aqrl t3, (t4) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_W sc.w t6, t5, (t4) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_W_AQ sc.w.aq t5, t4, (t3) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_W_RL sc.w.rl t4, t3, (t2) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_W_AQRL sc.w.aqrl t3, t2, (t1) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_D lr.d t0, (t1) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_D_AQ lr.d.aq t1, (t2) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_D_RL lr.d.rl t2, (t3) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST LR_D_AQRL lr.d.aqrl t3, (t4) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_D sc.d t6, t5, (t4) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_D_AQ sc.d.aq t5, t4, (t3) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_D_RL sc.d.rl t4, t3, (t2) |
| # CHECK-NEXT: 1 3 0.50 * 3 SiFiveP600LDST SC_D_AQRL sc.d.aqrl t3, t2, (t1) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_W amoswap.w a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_W amoadd.w a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_W amoxor.w a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_W amoand.w a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_W amoor.w a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_W amomin.w a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_W amomax.w s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_W amominu.w s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_W amomaxu.w s5, s4, (s3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_W_AQ amoswap.w.aq a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_W_AQ amoadd.w.aq a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_W_AQ amoxor.w.aq a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_W_AQ amoand.w.aq a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_W_AQ amoor.w.aq a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_W_AQ amomin.w.aq a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_W_AQ amomax.w.aq s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_W_AQ amominu.w.aq s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_W_AQ amomaxu.w.aq s5, s4, (s3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_W_RL amoswap.w.rl a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_W_RL amoadd.w.rl a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_W_RL amoxor.w.rl a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_W_RL amoand.w.rl a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_W_RL amoor.w.rl a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_W_RL amomin.w.rl a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_W_RL amomax.w.rl s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_W_RL amominu.w.rl s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_W_RL amomaxu.w.rl s5, s4, (s3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_W_AQRL amoswap.w.aqrl a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_W_AQRL amoadd.w.aqrl a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_W_AQRL amoxor.w.aqrl a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_W_AQRL amoand.w.aqrl a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_W_AQRL amoor.w.aqrl a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_W_AQRL amomin.w.aqrl a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_W_AQRL amomax.w.aqrl s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_W_AQRL amominu.w.aqrl s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_W_AQRL amomaxu.w.aqrl s5, s4, (s3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_D amoswap.d a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_D amoadd.d a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_D amoxor.d a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_D amoand.d a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_D amoor.d a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_D amomin.d a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_D amomax.d s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_D amominu.d s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_D amomaxu.d s5, s4, (s3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_D_AQ amoswap.d.aq a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_D_AQ amoadd.d.aq a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_D_AQ amoxor.d.aq a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_D_AQ amoand.d.aq a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_D_AQ amoor.d.aq a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_D_AQ amomin.d.aq a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_D_AQ amomax.d.aq s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_D_AQ amominu.d.aq s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_D_AQ amomaxu.d.aq s5, s4, (s3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_D_RL amoswap.d.rl a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_D_RL amoadd.d.rl a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_D_RL amoxor.d.rl a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_D_RL amoand.d.rl a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_D_RL amoor.d.rl a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_D_RL amomin.d.rl a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_D_RL amomax.d.rl s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_D_RL amominu.d.rl s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_D_RL amomaxu.d.rl s5, s4, (s3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOSWAP_D_AQRL amoswap.d.aqrl a4, ra, (s0) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOADD_D_AQRL amoadd.d.aqrl a1, a2, (a3) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOXOR_D_AQRL amoxor.d.aqrl a2, a3, (a4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOAND_D_AQRL amoand.d.aqrl a3, a4, (a5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOOR_D_AQRL amoor.d.aqrl a4, a5, (a6) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMIN_D_AQRL amomin.d.aqrl a5, a6, (a7) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAX_D_AQRL amomax.d.aqrl s7, s6, (s5) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMINU_D_AQRL amominu.d.aqrl s6, s5, (s4) |
| # CHECK-NEXT: 1 3 0.50 * * 3 SiFiveP600LDST AMOMAXU_D_AQRL amomaxu.d.aqrl s5, s4, (s3) |
| |
| # CHECK: Resources: |
| # CHECK-NEXT: [0] - SiFiveP600Div |
| # CHECK-NEXT: [1] - SiFiveP600FEXQ0 |
| # CHECK-NEXT: [2] - SiFiveP600FEXQ1 |
| # CHECK-NEXT: [3] - SiFiveP600FloatDiv |
| # CHECK-NEXT: [4] - SiFiveP600IEXQ0 |
| # CHECK-NEXT: [5] - SiFiveP600IEXQ1 |
| # CHECK-NEXT: [6] - SiFiveP600IEXQ2 |
| # CHECK-NEXT: [7] - SiFiveP600IEXQ3 |
| # CHECK-NEXT: [8.0] - SiFiveP600LDST |
| # CHECK-NEXT: [8.1] - SiFiveP600LDST |
| # CHECK-NEXT: [9] - SiFiveP600VDiv |
| # CHECK-NEXT: [10] - SiFiveP600VEXQ0 |
| # CHECK-NEXT: [11] - SiFiveP600VEXQ1 |
| # CHECK-NEXT: [12] - SiFiveP600VFloatDiv |
| # CHECK-NEXT: [13] - SiFiveP600VLD |
| # CHECK-NEXT: [14] - SiFiveP600VST |
| |
| # CHECK: Resource pressure per iteration: |
| # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [9] [10] [11] [12] [13] [14] |
| # CHECK-NEXT: - - - - - - - - 44.00 44.00 - - - - - - |
| |
| # CHECK: Resource pressure by instruction: |
| # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8.0] [8.1] [9] [10] [11] [12] [13] [14] Instructions: |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.w t0, (t1) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.w.aq t1, (t2) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.w.rl t2, (t3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.w.aqrl t3, (t4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.w t6, t5, (t4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.w.aq t5, t4, (t3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.w.rl t4, t3, (t2) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.w.aqrl t3, t2, (t1) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.d t0, (t1) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.d.aq t1, (t2) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.d.rl t2, (t3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - lr.d.aqrl t3, (t4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.d t6, t5, (t4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.d.aq t5, t4, (t3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.d.rl t4, t3, (t2) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - sc.d.aqrl t3, t2, (t1) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.w a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.w a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.w a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.w a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.w a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.w a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.w s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.w s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.w s5, s4, (s3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.w.aq a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.w.aq a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.w.aq a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.w.aq a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.w.aq a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.w.aq a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.w.aq s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.w.aq s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.w.aq s5, s4, (s3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.w.rl a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.w.rl a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.w.rl a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.w.rl a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.w.rl a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.w.rl a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.w.rl s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.w.rl s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.w.rl s5, s4, (s3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.w.aqrl a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.w.aqrl a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.w.aqrl a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.w.aqrl a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.w.aqrl a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.w.aqrl a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.w.aqrl s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.w.aqrl s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.w.aqrl s5, s4, (s3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.d a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.d a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.d a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.d a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.d a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.d a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.d s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.d s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.d s5, s4, (s3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.d.aq a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.d.aq a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.d.aq a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.d.aq a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.d.aq a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.d.aq a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.d.aq s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.d.aq s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.d.aq s5, s4, (s3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.d.rl a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.d.rl a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.d.rl a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.d.rl a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.d.rl a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.d.rl a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.d.rl s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.d.rl s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.d.rl s5, s4, (s3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoswap.d.aqrl a4, ra, (s0) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoadd.d.aqrl a1, a2, (a3) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoxor.d.aqrl a2, a3, (a4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoand.d.aqrl a3, a4, (a5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amoor.d.aqrl a4, a5, (a6) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomin.d.aqrl a5, a6, (a7) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomax.d.aqrl s7, s6, (s5) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amominu.d.aqrl s6, s5, (s4) |
| # CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - amomaxu.d.aqrl s5, s4, (s3) |