brintos

brintos / llvm-project-archived public Read only

0
0
Text · 8.8 KiB · 2b1b1e0 Raw
236 lines · plain
1# RUN: llvm-mc %s -triple=riscv32 -mattr=+a,+zabha -M no-aliases -show-encoding \2# RUN:     | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s3# RUN: llvm-mc %s -triple=riscv64 -mattr=+a,+zabha -M no-aliases -show-encoding \4# RUN:     | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s5# RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+a,+zabha < %s \6# RUN:     | llvm-objdump --mattr=+a,+zabha -M no-aliases -d -r - \7# RUN:     | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s8# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+a,+zabha < %s \9# RUN:     | llvm-objdump --mattr=+a,+zabha -M no-aliases -d -r - \10# RUN:     | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s11 12# CHECK-ASM-AND-OBJ: amoswap.b a4, ra, (s0)13# CHECK-ASM: encoding: [0x2f,0x07,0x14,0x08]14amoswap.b a4, ra, (s0)15# CHECK-ASM-AND-OBJ: amoadd.b a1, a2, (a3)16# CHECK-ASM: encoding: [0xaf,0x85,0xc6,0x00]17amoadd.b a1, a2, (a3)18# CHECK-ASM-AND-OBJ: amoxor.b a2, a3, (a4)19# CHECK-ASM: encoding: [0x2f,0x06,0xd7,0x20]20amoxor.b a2, a3, (a4)21# CHECK-ASM-AND-OBJ: amoand.b a3, a4, (a5)22# CHECK-ASM: encoding: [0xaf,0x86,0xe7,0x60]23amoand.b a3, a4, (a5)24# CHECK-ASM-AND-OBJ: amoor.b a4, a5, (a6)25# CHECK-ASM: encoding: [0x2f,0x07,0xf8,0x40]26amoor.b a4, a5, (a6)27# CHECK-ASM-AND-OBJ: amomin.b a5, a6, (a7)28# CHECK-ASM: encoding: [0xaf,0x87,0x08,0x81]29amomin.b a5, a6, (a7)30# CHECK-ASM-AND-OBJ: amomax.b s7, s6, (s5)31# CHECK-ASM: encoding: [0xaf,0x8b,0x6a,0xa1]32amomax.b s7, s6, (s5)33# CHECK-ASM-AND-OBJ: amominu.b s6, s5, (s4)34# CHECK-ASM: encoding: [0x2f,0x0b,0x5a,0xc1]35amominu.b s6, s5, (s4)36# CHECK-ASM-AND-OBJ: amomaxu.b s5, s4, (s3)37# CHECK-ASM: encoding: [0xaf,0x8a,0x49,0xe1]38amomaxu.b s5, s4, (s3)39 40# CHECK-ASM-AND-OBJ: amoswap.b.aq a4, ra, (s0)41# CHECK-ASM: encoding: [0x2f,0x07,0x14,0x0c]42amoswap.b.aq a4, ra, (s0)43# CHECK-ASM-AND-OBJ: amoadd.b.aq a1, a2, (a3)44# CHECK-ASM: encoding: [0xaf,0x85,0xc6,0x04]45amoadd.b.aq a1, a2, (a3)46# CHECK-ASM-AND-OBJ: amoxor.b.aq a2, a3, (a4)47# CHECK-ASM: encoding: [0x2f,0x06,0xd7,0x24]48amoxor.b.aq a2, a3, (a4)49# CHECK-ASM-AND-OBJ: amoand.b.aq a3, a4, (a5)50# CHECK-ASM: encoding: [0xaf,0x86,0xe7,0x64]51amoand.b.aq a3, a4, (a5)52# CHECK-ASM-AND-OBJ: amoor.b.aq a4, a5, (a6)53# CHECK-ASM: encoding: [0x2f,0x07,0xf8,0x44]54amoor.b.aq a4, a5, (a6)55# CHECK-ASM-AND-OBJ: amomin.b.aq a5, a6, (a7)56# CHECK-ASM: encoding: [0xaf,0x87,0x08,0x85]57amomin.b.aq a5, a6, (a7)58# CHECK-ASM-AND-OBJ: amomax.b.aq s7, s6, (s5)59# CHECK-ASM: encoding: [0xaf,0x8b,0x6a,0xa5]60amomax.b.aq s7, s6, (s5)61# CHECK-ASM-AND-OBJ: amominu.b.aq s6, s5, (s4)62# CHECK-ASM: encoding: [0x2f,0x0b,0x5a,0xc5]63amominu.b.aq s6, s5, (s4)64# CHECK-ASM-AND-OBJ: amomaxu.b.aq s5, s4, (s3)65# CHECK-ASM: encoding: [0xaf,0x8a,0x49,0xe5]66amomaxu.b.aq s5, s4, (s3)67 68# CHECK-ASM-AND-OBJ: amoswap.b.rl a4, ra, (s0)69# CHECK-ASM: encoding: [0x2f,0x07,0x14,0x0a]70amoswap.b.rl a4, ra, (s0)71# CHECK-ASM-AND-OBJ: amoadd.b.rl a1, a2, (a3)72# CHECK-ASM: encoding: [0xaf,0x85,0xc6,0x02]73amoadd.b.rl a1, a2, (a3)74# CHECK-ASM-AND-OBJ: amoxor.b.rl a2, a3, (a4)75# CHECK-ASM: encoding: [0x2f,0x06,0xd7,0x22]76amoxor.b.rl a2, a3, (a4)77# CHECK-ASM-AND-OBJ: amoand.b.rl a3, a4, (a5)78# CHECK-ASM: encoding: [0xaf,0x86,0xe7,0x62]79amoand.b.rl a3, a4, (a5)80# CHECK-ASM-AND-OBJ: amoor.b.rl a4, a5, (a6)81# CHECK-ASM: encoding: [0x2f,0x07,0xf8,0x42]82amoor.b.rl a4, a5, (a6)83# CHECK-ASM-AND-OBJ: amomin.b.rl a5, a6, (a7)84# CHECK-ASM: encoding: [0xaf,0x87,0x08,0x83]85amomin.b.rl a5, a6, (a7)86# CHECK-ASM-AND-OBJ: amomax.b.rl s7, s6, (s5)87# CHECK-ASM: encoding: [0xaf,0x8b,0x6a,0xa3]88amomax.b.rl s7, s6, (s5)89# CHECK-ASM-AND-OBJ: amominu.b.rl s6, s5, (s4)90# CHECK-ASM: encoding: [0x2f,0x0b,0x5a,0xc3]91amominu.b.rl s6, s5, (s4)92# CHECK-ASM-AND-OBJ: amomaxu.b.rl s5, s4, (s3)93# CHECK-ASM: encoding: [0xaf,0x8a,0x49,0xe3]94amomaxu.b.rl s5, s4, (s3)95 96# CHECK-ASM-AND-OBJ: amoswap.b.aqrl a4, ra, (s0)97# CHECK-ASM: encoding: [0x2f,0x07,0x14,0x0e]98amoswap.b.aqrl a4, ra, (s0)99# CHECK-ASM-AND-OBJ: amoadd.b.aqrl a1, a2, (a3)100# CHECK-ASM: encoding: [0xaf,0x85,0xc6,0x06]101amoadd.b.aqrl a1, a2, (a3)102# CHECK-ASM-AND-OBJ: amoxor.b.aqrl a2, a3, (a4)103# CHECK-ASM: encoding: [0x2f,0x06,0xd7,0x26]104amoxor.b.aqrl a2, a3, (a4)105# CHECK-ASM-AND-OBJ: amoand.b.aqrl a3, a4, (a5)106# CHECK-ASM: encoding: [0xaf,0x86,0xe7,0x66]107amoand.b.aqrl a3, a4, (a5)108# CHECK-ASM-AND-OBJ: amoor.b.aqrl a4, a5, (a6)109# CHECK-ASM: encoding: [0x2f,0x07,0xf8,0x46]110amoor.b.aqrl a4, a5, (a6)111# CHECK-ASM-AND-OBJ: amomin.b.aqrl a5, a6, (a7)112# CHECK-ASM: encoding: [0xaf,0x87,0x08,0x87]113amomin.b.aqrl a5, a6, (a7)114# CHECK-ASM-AND-OBJ: amomax.b.aqrl s7, s6, (s5)115# CHECK-ASM: encoding: [0xaf,0x8b,0x6a,0xa7]116amomax.b.aqrl s7, s6, (s5)117# CHECK-ASM-AND-OBJ: amominu.b.aqrl s6, s5, (s4)118# CHECK-ASM: encoding: [0x2f,0x0b,0x5a,0xc7]119amominu.b.aqrl s6, s5, (s4)120# CHECK-ASM-AND-OBJ: amomaxu.b.aqrl s5, s4, (s3)121# CHECK-ASM: encoding: [0xaf,0x8a,0x49,0xe7]122amomaxu.b.aqrl s5, s4, (s3)123 124 125# CHECK-ASM-AND-OBJ: amoswap.h a4, ra, (s0)126# CHECK-ASM: encoding: [0x2f,0x17,0x14,0x08]127amoswap.h a4, ra, (s0)128# CHECK-ASM-AND-OBJ: amoadd.h a1, a2, (a3)129# CHECK-ASM: encoding: [0xaf,0x95,0xc6,0x00]130amoadd.h a1, a2, (a3)131# CHECK-ASM-AND-OBJ: amoxor.h a2, a3, (a4)132# CHECK-ASM: encoding: [0x2f,0x16,0xd7,0x20]133amoxor.h a2, a3, (a4)134# CHECK-ASM-AND-OBJ: amoand.h a3, a4, (a5)135# CHECK-ASM: encoding: [0xaf,0x96,0xe7,0x60]136amoand.h a3, a4, (a5)137# CHECK-ASM-AND-OBJ: amoor.h a4, a5, (a6)138# CHECK-ASM: encoding: [0x2f,0x17,0xf8,0x40]139amoor.h a4, a5, (a6)140# CHECK-ASM-AND-OBJ: amomin.h a5, a6, (a7)141# CHECK-ASM: encoding: [0xaf,0x97,0x08,0x81]142amomin.h a5, a6, (a7)143# CHECK-ASM-AND-OBJ: amomax.h s7, s6, (s5)144# CHECK-ASM: encoding: [0xaf,0x9b,0x6a,0xa1]145amomax.h s7, s6, (s5)146# CHECK-ASM-AND-OBJ: amominu.h s6, s5, (s4)147# CHECK-ASM: encoding: [0x2f,0x1b,0x5a,0xc1]148amominu.h s6, s5, (s4)149# CHECK-ASM-AND-OBJ: amomaxu.h s5, s4, (s3)150# CHECK-ASM: encoding: [0xaf,0x9a,0x49,0xe1]151amomaxu.h s5, s4, (s3)152 153# CHECK-ASM-AND-OBJ: amoswap.h.aq a4, ra, (s0)154# CHECK-ASM: encoding: [0x2f,0x17,0x14,0x0c]155amoswap.h.aq a4, ra, (s0)156# CHECK-ASM-AND-OBJ: amoadd.h.aq a1, a2, (a3)157# CHECK-ASM: encoding: [0xaf,0x95,0xc6,0x04]158amoadd.h.aq a1, a2, (a3)159# CHECK-ASM-AND-OBJ: amoxor.h.aq a2, a3, (a4)160# CHECK-ASM: encoding: [0x2f,0x16,0xd7,0x24]161amoxor.h.aq a2, a3, (a4)162# CHECK-ASM-AND-OBJ: amoand.h.aq a3, a4, (a5)163# CHECK-ASM: encoding: [0xaf,0x96,0xe7,0x64]164amoand.h.aq a3, a4, (a5)165# CHECK-ASM-AND-OBJ: amoor.h.aq a4, a5, (a6)166# CHECK-ASM: encoding: [0x2f,0x17,0xf8,0x44]167amoor.h.aq a4, a5, (a6)168# CHECK-ASM-AND-OBJ: amomin.h.aq a5, a6, (a7)169# CHECK-ASM: encoding: [0xaf,0x97,0x08,0x85]170amomin.h.aq a5, a6, (a7)171# CHECK-ASM-AND-OBJ: amomax.h.aq s7, s6, (s5)172# CHECK-ASM: encoding: [0xaf,0x9b,0x6a,0xa5]173amomax.h.aq s7, s6, (s5)174# CHECK-ASM-AND-OBJ: amominu.h.aq s6, s5, (s4)175# CHECK-ASM: encoding: [0x2f,0x1b,0x5a,0xc5]176amominu.h.aq s6, s5, (s4)177# CHECK-ASM-AND-OBJ: amomaxu.h.aq s5, s4, (s3)178# CHECK-ASM: encoding: [0xaf,0x9a,0x49,0xe5]179amomaxu.h.aq s5, s4, (s3)180 181# CHECK-ASM-AND-OBJ: amoswap.h.rl a4, ra, (s0)182# CHECK-ASM: encoding: [0x2f,0x17,0x14,0x0a]183amoswap.h.rl a4, ra, (s0)184# CHECK-ASM-AND-OBJ: amoadd.h.rl a1, a2, (a3)185# CHECK-ASM: encoding: [0xaf,0x95,0xc6,0x02]186amoadd.h.rl a1, a2, (a3)187# CHECK-ASM-AND-OBJ: amoxor.h.rl a2, a3, (a4)188# CHECK-ASM: encoding: [0x2f,0x16,0xd7,0x22]189amoxor.h.rl a2, a3, (a4)190# CHECK-ASM-AND-OBJ: amoand.h.rl a3, a4, (a5)191# CHECK-ASM: encoding: [0xaf,0x96,0xe7,0x62]192amoand.h.rl a3, a4, (a5)193# CHECK-ASM-AND-OBJ: amoor.h.rl a4, a5, (a6)194# CHECK-ASM: encoding: [0x2f,0x17,0xf8,0x42]195amoor.h.rl a4, a5, (a6)196# CHECK-ASM-AND-OBJ: amomin.h.rl a5, a6, (a7)197# CHECK-ASM: encoding: [0xaf,0x97,0x08,0x83]198amomin.h.rl a5, a6, (a7)199# CHECK-ASM-AND-OBJ: amomax.h.rl s7, s6, (s5)200# CHECK-ASM: encoding: [0xaf,0x9b,0x6a,0xa3]201amomax.h.rl s7, s6, (s5)202# CHECK-ASM-AND-OBJ: amominu.h.rl s6, s5, (s4)203# CHECK-ASM: encoding: [0x2f,0x1b,0x5a,0xc3]204amominu.h.rl s6, s5, (s4)205# CHECK-ASM-AND-OBJ: amomaxu.h.rl s5, s4, (s3)206# CHECK-ASM: encoding: [0xaf,0x9a,0x49,0xe3]207amomaxu.h.rl s5, s4, (s3)208 209# CHECK-ASM-AND-OBJ: amoswap.h.aqrl a4, ra, (s0)210# CHECK-ASM: encoding: [0x2f,0x17,0x14,0x0e]211amoswap.h.aqrl a4, ra, (s0)212# CHECK-ASM-AND-OBJ: amoadd.h.aqrl a1, a2, (a3)213# CHECK-ASM: encoding: [0xaf,0x95,0xc6,0x06]214amoadd.h.aqrl a1, a2, (a3)215# CHECK-ASM-AND-OBJ: amoxor.h.aqrl a2, a3, (a4)216# CHECK-ASM: encoding: [0x2f,0x16,0xd7,0x26]217amoxor.h.aqrl a2, a3, (a4)218# CHECK-ASM-AND-OBJ: amoand.h.aqrl a3, a4, (a5)219# CHECK-ASM: encoding: [0xaf,0x96,0xe7,0x66]220amoand.h.aqrl a3, a4, (a5)221# CHECK-ASM-AND-OBJ: amoor.h.aqrl a4, a5, (a6)222# CHECK-ASM: encoding: [0x2f,0x17,0xf8,0x46]223amoor.h.aqrl a4, a5, (a6)224# CHECK-ASM-AND-OBJ: amomin.h.aqrl a5, a6, (a7)225# CHECK-ASM: encoding: [0xaf,0x97,0x08,0x87]226amomin.h.aqrl a5, a6, (a7)227# CHECK-ASM-AND-OBJ: amomax.h.aqrl s7, s6, (s5)228# CHECK-ASM: encoding: [0xaf,0x9b,0x6a,0xa7]229amomax.h.aqrl s7, s6, (s5)230# CHECK-ASM-AND-OBJ: amominu.h.aqrl s6, s5, (s4)231# CHECK-ASM: encoding: [0x2f,0x1b,0x5a,0xc7]232amominu.h.aqrl s6, s5, (s4)233# CHECK-ASM-AND-OBJ: amomaxu.h.aqrl s5, s4, (s3)234# CHECK-ASM: encoding: [0xaf,0x9a,0x49,0xe7]235amomaxu.h.aqrl s5, s4, (s3)236