brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.8 KiB · 7b33407 Raw
213 lines · plain
1# RUN: llvm-mc %s -triple=riscv32 -mattr=+a -M no-aliases \2# RUN:     | FileCheck -check-prefixes=CHECK-S-NOALIAS,CHECK-S-OBJ-NOALIAS %s3# RUN: llvm-mc %s -triple=riscv32 -mattr=+a \4# RUN:     | FileCheck -check-prefixes=CHECK-S,CHECK-S-OBJ %s5# RUN: llvm-mc %s -triple=riscv64 -mattr=+a -M no-aliases\6# RUN:     | FileCheck -check-prefixes=CHECK-S-NOALIAS,CHECK-S-OBJ-NOALIAS %s7# RUN: llvm-mc %s -triple=riscv64 -mattr=+a \8# RUN:     | FileCheck -check-prefixes=CHECK-S,CHECK-S-OBJ %s9# RUN: llvm-mc -filetype=obj -triple riscv32 -mattr=+a < %s \10# RUN:     | llvm-objdump -d --mattr=+a -M no-aliases - \11# RUN:     | FileCheck -check-prefixes=CHECK-OBJ-NOALIAS,CHECK-S-OBJ-NOALIAS %s12# RUN: llvm-mc -filetype=obj -triple riscv32 -mattr=+a < %s \13# RUN:     | llvm-objdump -d --mattr=+a - \14# RUN:     | FileCheck --check-prefix=CHECK-S-OBJ %s15# RUN: llvm-mc -filetype=obj -triple riscv64 -mattr=+a < %s \16# RUN:     | llvm-objdump -d --mattr=+a -M no-aliases - \17# RUN:     | FileCheck -check-prefixes=CHECK-OBJ-NOALIAS,CHECK-S-OBJ-NOALIAS %s18# RUN: llvm-mc -filetype=obj -triple riscv64 -mattr=+a < %s \19# RUN:     | llvm-objdump -d --mattr=+a - \20# RUN:     | FileCheck --check-prefix=CHECK-S-OBJ %s21 22# The following check prefixes are used in this test:23# CHECK-S                 Match the .s output with aliases enabled24# CHECK-S-NOALIAS         Match the .s output with aliases disabled25# CHECK-OBJ               Match the objdumped object output with aliases enabled26# CHECK-OBJ-NOALIAS       Match the objdumped object output with aliases enabled27# CHECK-S-OBJ             Match both the .s and objdumped object output with28#                         aliases enabled29# CHECK-S-OBJ-NOALIAS     Match both the .s and objdumped object output with30#                         aliases disabled31 32# The below tests for lr.w, sc.w and amo*.w, using `0(reg)` are actually33# implemented using a custom parser, but we test them as if they're aliases.34# CHECK-S: {{^}}35# CHECK-S-NOALIAS: {{^}}36# CHECK-OBJ-NOALIAS: {{^}}37 38# CHECK-S-OBJ: lr.w a1, (a0)39# CHECK-S-OBJ-NOALIAS: lr.w a1, (a0)40lr.w a1, 0(a0)41 42# CHECK-S-OBJ: lr.w.aq a1, (a0)43# CHECK-S-OBJ-NOALIAS: lr.w.aq a1, (a0)44lr.w.aq a1, 0(a0)45 46# CHECK-S-OBJ: lr.w.rl a1, (a0)47# CHECK-S-OBJ-NOALIAS: lr.w.rl a1, (a0)48lr.w.rl a1, 0(a0)49 50# CHECK-S-OBJ: lr.w.aqrl a1, (a0)51# CHECK-S-OBJ-NOALIAS: lr.w.aqrl a1, (a0)52lr.w.aqrl a1, 0(a0)53 54# CHECK-S-OBJ: sc.w a2, a1, (a0)55# CHECK-S-OBJ-NOALIAS: sc.w a2, a1, (a0)56sc.w a2, a1, 0(a0)57 58# CHECK-S-OBJ: sc.w.aq a2, a1, (a0)59# CHECK-S-OBJ-NOALIAS: sc.w.aq a2, a1, (a0)60sc.w.aq a2, a1, 0(a0)61 62# CHECK-S-OBJ: sc.w.rl a2, a1, (a0)63# CHECK-S-OBJ-NOALIAS: sc.w.rl a2, a1, (a0)64sc.w.rl a2, a1, 0(a0)65 66# CHECK-S-OBJ: sc.w.aqrl a2, a1, (a0)67# CHECK-S-OBJ-NOALIAS: sc.w.aqrl a2, a1, (a0)68sc.w.aqrl a2, a1, 0(a0)69 70# CHECK-S-OBJ: amoswap.w a2, a1, (a0)71# CHECK-S-OBJ-NOALIAS: amoswap.w a2, a1, (a0)72amoswap.w a2, a1, 0(a0)73 74# CHECK-S-OBJ: amoswap.w.aq a2, a1, (a0)75# CHECK-S-OBJ-NOALIAS: amoswap.w.aq a2, a1, (a0)76amoswap.w.aq a2, a1, 0(a0)77 78# CHECK-S-OBJ: amoswap.w.rl a2, a1, (a0)79# CHECK-S-OBJ-NOALIAS: amoswap.w.rl a2, a1, (a0)80amoswap.w.rl a2, a1, 0(a0)81 82# CHECK-S-OBJ: amoswap.w.aqrl a2, a1, (a0)83# CHECK-S-OBJ-NOALIAS: amoswap.w.aqrl a2, a1, (a0)84amoswap.w.aqrl a2, a1, 0(a0)85 86# CHECK-S-OBJ: amoadd.w a2, a1, (a0)87# CHECK-S-OBJ-NOALIAS: amoadd.w a2, a1, (a0)88amoadd.w a2, a1, 0(a0)89 90# CHECK-S-OBJ: amoadd.w.aq a2, a1, (a0)91# CHECK-S-OBJ-NOALIAS: amoadd.w.aq a2, a1, (a0)92amoadd.w.aq a2, a1, 0(a0)93 94# CHECK-S-OBJ: amoadd.w.rl a2, a1, (a0)95# CHECK-S-OBJ-NOALIAS: amoadd.w.rl a2, a1, (a0)96amoadd.w.rl a2, a1, 0(a0)97 98# CHECK-S-OBJ: amoadd.w.aqrl a2, a1, (a0)99# CHECK-S-OBJ-NOALIAS: amoadd.w.aqrl a2, a1, (a0)100amoadd.w.aqrl a2, a1, 0(a0)101 102# CHECK-S-OBJ: amoxor.w a2, a1, (a0)103# CHECK-S-OBJ-NOALIAS: amoxor.w a2, a1, (a0)104amoxor.w a2, a1, 0(a0)105 106# CHECK-S-OBJ: amoxor.w.aq a2, a1, (a0)107# CHECK-S-OBJ-NOALIAS: amoxor.w.aq a2, a1, (a0)108amoxor.w.aq a2, a1, 0(a0)109 110# CHECK-S-OBJ: amoxor.w.rl a2, a1, (a0)111# CHECK-S-OBJ-NOALIAS: amoxor.w.rl a2, a1, (a0)112amoxor.w.rl a2, a1, 0(a0)113 114# CHECK-S-OBJ: amoxor.w.aqrl a2, a1, (a0)115# CHECK-S-OBJ-NOALIAS: amoxor.w.aqrl a2, a1, (a0)116amoxor.w.aqrl a2, a1, 0(a0)117 118# CHECK-S-OBJ: amoand.w a2, a1, (a0)119# CHECK-S-OBJ-NOALIAS: amoand.w a2, a1, (a0)120amoand.w a2, a1, 0(a0)121 122# CHECK-S-OBJ: amoand.w.aq a2, a1, (a0)123# CHECK-S-OBJ-NOALIAS: amoand.w.aq a2, a1, (a0)124amoand.w.aq a2, a1, 0(a0)125 126# CHECK-S-OBJ: amoand.w.rl a2, a1, (a0)127# CHECK-S-OBJ-NOALIAS: amoand.w.rl a2, a1, (a0)128amoand.w.rl a2, a1, 0(a0)129 130# CHECK-S-OBJ: amoand.w.aqrl a2, a1, (a0)131# CHECK-S-OBJ-NOALIAS: amoand.w.aqrl a2, a1, (a0)132amoand.w.aqrl a2, a1, 0(a0)133 134# CHECK-S-OBJ: amoor.w a2, a1, (a0)135# CHECK-S-OBJ-NOALIAS: amoor.w a2, a1, (a0)136amoor.w a2, a1, 0(a0)137 138# CHECK-S-OBJ: amoor.w.aq a2, a1, (a0)139# CHECK-S-OBJ-NOALIAS: amoor.w.aq a2, a1, (a0)140amoor.w.aq a2, a1, 0(a0)141 142# CHECK-S-OBJ: amoor.w.rl a2, a1, (a0)143# CHECK-S-OBJ-NOALIAS: amoor.w.rl a2, a1, (a0)144amoor.w.rl a2, a1, 0(a0)145 146# CHECK-S-OBJ: amoor.w.aqrl a2, a1, (a0)147# CHECK-S-OBJ-NOALIAS: amoor.w.aqrl a2, a1, (a0)148amoor.w.aqrl a2, a1, 0(a0)149 150# CHECK-S-OBJ: amomin.w a2, a1, (a0)151# CHECK-S-OBJ-NOALIAS: amomin.w a2, a1, (a0)152amomin.w a2, a1, 0(a0)153 154# CHECK-S-OBJ: amomin.w.aq a2, a1, (a0)155# CHECK-S-OBJ-NOALIAS: amomin.w.aq a2, a1, (a0)156amomin.w.aq a2, a1, 0(a0)157 158# CHECK-S-OBJ: amomin.w.rl a2, a1, (a0)159# CHECK-S-OBJ-NOALIAS: amomin.w.rl a2, a1, (a0)160amomin.w.rl a2, a1, 0(a0)161 162# CHECK-S-OBJ: amomin.w.aqrl a2, a1, (a0)163# CHECK-S-OBJ-NOALIAS: amomin.w.aqrl a2, a1, (a0)164amomin.w.aqrl a2, a1, 0(a0)165 166# CHECK-S-OBJ: amomax.w a2, a1, (a0)167# CHECK-S-OBJ-NOALIAS: amomax.w a2, a1, (a0)168amomax.w a2, a1, 0(a0)169 170# CHECK-S-OBJ: amomax.w.aq a2, a1, (a0)171# CHECK-S-OBJ-NOALIAS: amomax.w.aq a2, a1, (a0)172amomax.w.aq a2, a1, 0(a0)173 174# CHECK-S-OBJ: amomax.w.rl a2, a1, (a0)175# CHECK-S-OBJ-NOALIAS: amomax.w.rl a2, a1, (a0)176amomax.w.rl a2, a1, 0(a0)177 178# CHECK-S-OBJ: amomax.w.aqrl a2, a1, (a0)179# CHECK-S-OBJ-NOALIAS: amomax.w.aqrl a2, a1, (a0)180amomax.w.aqrl a2, a1, 0(a0)181 182# CHECK-S-OBJ: amominu.w a2, a1, (a0)183# CHECK-S-OBJ-NOALIAS: amominu.w a2, a1, (a0)184amominu.w a2, a1, 0(a0)185 186# CHECK-S-OBJ: amominu.w.aq a2, a1, (a0)187# CHECK-S-OBJ-NOALIAS: amominu.w.aq a2, a1, (a0)188amominu.w.aq a2, a1, 0(a0)189 190# CHECK-S-OBJ: amominu.w.rl a2, a1, (a0)191# CHECK-S-OBJ-NOALIAS: amominu.w.rl a2, a1, (a0)192amominu.w.rl a2, a1, 0(a0)193 194# CHECK-S-OBJ: amominu.w.aqrl a2, a1, (a0)195# CHECK-S-OBJ-NOALIAS: amominu.w.aqrl a2, a1, (a0)196amominu.w.aqrl a2, a1, 0(a0)197 198# CHECK-S-OBJ: amomaxu.w a2, a1, (a0)199# CHECK-S-OBJ-NOALIAS: amomaxu.w a2, a1, (a0)200amomaxu.w a2, a1, 0(a0)201 202# CHECK-S-OBJ: amomaxu.w.aq a2, a1, (a0)203# CHECK-S-OBJ-NOALIAS: amomaxu.w.aq a2, a1, (a0)204amomaxu.w.aq a2, a1, 0(a0)205 206# CHECK-S-OBJ: amomaxu.w.rl a2, a1, (a0)207# CHECK-S-OBJ-NOALIAS: amomaxu.w.rl a2, a1, (a0)208amomaxu.w.rl a2, a1, 0(a0)209 210# CHECK-S-OBJ: amomaxu.w.aqrl a2, a1, (a0)211# CHECK-S-OBJ-NOALIAS: amomaxu.w.aqrl a2, a1, (a0)212amomaxu.w.aqrl a2, a1, 0(a0)213