brintos

brintos / llvm-project-archived public Read only

0
0
Text · 11.6 KiB · 6fb9861 Raw
458 lines · plain
1# RUN: llvm-mc %s -triple=riscv32 -M no-aliases -show-encoding \2# RUN:     | FileCheck -check-prefixes=CHECK-INST,CHECK-ENC %s3# RUN: llvm-mc -filetype=obj -triple riscv32 < %s \4# RUN:     | llvm-objdump -d - \5# RUN:     | FileCheck -check-prefix=CHECK-INST-ALIAS %s6 7##################################8# User Counter and Timers9##################################10 11# cycleh12# name13# CHECK-INST: csrrs t1, cycleh, zero14# CHECK-ENC:  encoding: [0x73,0x23,0x00,0xc8]15# CHECK-INST-ALIAS: rdcycleh t116# uimm1217# CHECK-INST: csrrs t2, cycleh, zero18# CHECK-ENC:  encoding: [0xf3,0x23,0x00,0xc8]19# CHECK-INST-ALIAS: rdcycleh t220# name21csrrs t1, cycleh, zero22# uimm1223csrrs t2, 0xC80, zero24 25# timeh26# name27# CHECK-INST: csrrs t1, timeh, zero28# CHECK-ENC:  encoding: [0x73,0x23,0x10,0xc8]29# CHECK-INST-ALIAS: rdtimeh t130# uimm1231# CHECK-INST: csrrs t2, timeh, zero32# CHECK-ENC:  encoding: [0xf3,0x23,0x10,0xc8]33# CHECK-INST-ALIAS: rdtimeh t234# name35csrrs t1, timeh, zero36# uimm1237csrrs t2, 0xC81, zero38 39# instreth40# name41# CHECK-INST: csrrs t1, instreth, zero42# CHECK-ENC:  encoding: [0x73,0x23,0x20,0xc8]43# CHECK-INST-ALIAS: rdinstreth t144# uimm1245# CHECK-INST: csrrs t2, instreth, zero46# CHECK-ENC:  encoding: [0xf3,0x23,0x20,0xc8]47# CHECK-INST-ALIAS: rdinstreth t248# name49csrrs t1, instreth, zero50# uimm1251csrrs t2, 0xC82, zero52 53# hpmcounter3h54# name55# CHECK-INST: csrrs t1, hpmcounter3h, zero56# CHECK-ENC:  encoding: [0x73,0x23,0x30,0xc8]57# CHECK-INST-ALIAS: csrr t1, hpmcounter3h58# uimm1259# CHECK-INST: csrrs t2, hpmcounter3h, zero60# CHECK-ENC:  encoding: [0xf3,0x23,0x30,0xc8]61# CHECK-INST-ALIAS: csrr t2, hpmcounter3h62# name63csrrs t1, hpmcounter3h, zero64# uimm1265csrrs t2, 0xC83, zero66 67# hpmcounter4h68# name69# CHECK-INST: csrrs t1, hpmcounter4h, zero70# CHECK-ENC:  encoding: [0x73,0x23,0x40,0xc8]71# CHECK-INST-ALIAS: csrr t1, hpmcounter4h72# uimm1273# CHECK-INST: csrrs t2, hpmcounter4h, zero74# CHECK-ENC:  encoding: [0xf3,0x23,0x40,0xc8]75# CHECK-INST-ALIAS: csrr t2, hpmcounter4h76# name77csrrs t1, hpmcounter4h, zero78# uimm1279csrrs t2, 0xC84, zero80 81# hpmcounter5h82# name83# CHECK-INST: csrrs t1, hpmcounter5h, zero84# CHECK-ENC:  encoding: [0x73,0x23,0x50,0xc8]85# CHECK-INST-ALIAS: csrr t1, hpmcounter5h86# uimm1287# CHECK-INST: csrrs t2, hpmcounter5h, zero88# CHECK-ENC:  encoding: [0xf3,0x23,0x50,0xc8]89# CHECK-INST-ALIAS: csrr t2, hpmcounter5h90# name91csrrs t1, hpmcounter5h, zero92# uimm1293csrrs t2, 0xC85, zero94 95# hpmcounter6h96# name97# CHECK-INST: csrrs t1, hpmcounter6h, zero98# CHECK-ENC:  encoding: [0x73,0x23,0x60,0xc8]99# CHECK-INST-ALIAS: csrr t1, hpmcounter6h100# uimm12101# CHECK-INST: csrrs t2, hpmcounter6h, zero102# CHECK-ENC:  encoding: [0xf3,0x23,0x60,0xc8]103# CHECK-INST-ALIAS: csrr t2, hpmcounter6h104# name105csrrs t1, hpmcounter6h, zero106# uimm12107csrrs t2, 0xC86, zero108 109# hpmcounter7h110# name111# CHECK-INST: csrrs t1, hpmcounter7h, zero112# CHECK-ENC:  encoding: [0x73,0x23,0x70,0xc8]113# CHECK-INST-ALIAS: csrr t1, hpmcounter7h114# uimm12115# CHECK-INST: csrrs t2, hpmcounter7h, zero116# CHECK-ENC:  encoding: [0xf3,0x23,0x70,0xc8]117# CHECK-INST-ALIAS: csrr t2, hpmcounter7h118# name119csrrs t1, hpmcounter7h, zero120# uimm12121csrrs t2, 0xC87, zero122 123# hpmcounter8h124# name125# CHECK-INST: csrrs t1, hpmcounter8h, zero126# CHECK-ENC:  encoding: [0x73,0x23,0x80,0xc8]127# CHECK-INST-ALIAS: csrr t1, hpmcounter8h128# uimm12129# CHECK-INST: csrrs t2, hpmcounter8h, zero130# CHECK-ENC:  encoding: [0xf3,0x23,0x80,0xc8]131# CHECK-INST-ALIAS: csrr t2, hpmcounter8h132# name133csrrs t1, hpmcounter8h, zero134# uimm12135csrrs t2, 0xC88, zero136 137# hpmcounter9h138# name139# CHECK-INST: csrrs t1, hpmcounter9h, zero140# CHECK-ENC:  encoding: [0x73,0x23,0x90,0xc8]141# CHECK-INST-ALIAS: csrr t1, hpmcounter9h142# uimm12143# CHECK-INST: csrrs t2, hpmcounter9h, zero144# CHECK-ENC:  encoding: [0xf3,0x23,0x90,0xc8]145# CHECK-INST-ALIAS: csrr t2, hpmcounter9h146# name147csrrs t1, hpmcounter9h, zero148# uimm12149csrrs t2, 0xC89, zero150 151# hpmcounter10h152# name153# CHECK-INST: csrrs t1, hpmcounter10h, zero154# CHECK-ENC:  encoding: [0x73,0x23,0xa0,0xc8]155# CHECK-INST-ALIAS: csrr t1, hpmcounter10h156# uimm12157# CHECK-INST: csrrs t2, hpmcounter10h, zero158# CHECK-ENC:  encoding: [0xf3,0x23,0xa0,0xc8]159# CHECK-INST-ALIAS: csrr t2, hpmcounter10h160# name161csrrs t1, hpmcounter10h, zero162# uimm12163csrrs t2, 0xC8A, zero164 165# hpmcounter11h166# name167# CHECK-INST: csrrs t1, hpmcounter11h, zero168# CHECK-ENC:  encoding: [0x73,0x23,0xb0,0xc8]169# CHECK-INST-ALIAS: csrr t1, hpmcounter11h170# uimm12171# CHECK-INST: csrrs t2, hpmcounter11h, zero172# CHECK-ENC:  encoding: [0xf3,0x23,0xb0,0xc8]173# CHECK-INST-ALIAS: csrr t2, hpmcounter11h174# name175csrrs t1, hpmcounter11h, zero176# uimm12177csrrs t2, 0xC8B, zero178 179# hpmcounter12h180# name181# CHECK-INST: csrrs t1, hpmcounter12h, zero182# CHECK-ENC:  encoding: [0x73,0x23,0xc0,0xc8]183# CHECK-INST-ALIAS: csrr t1, hpmcounter12h184# uimm12185# CHECK-INST: csrrs t2, hpmcounter12h, zero186# CHECK-ENC:  encoding: [0xf3,0x23,0xc0,0xc8]187# CHECK-INST-ALIAS: csrr t2, hpmcounter12h188# name189csrrs t1, hpmcounter12h, zero190# uimm12191csrrs t2, 0xC8C, zero192 193# hpmcounter13h194# name195# CHECK-INST: csrrs t1, hpmcounter13h, zero196# CHECK-ENC:  encoding: [0x73,0x23,0xd0,0xc8]197# CHECK-INST-ALIAS: csrr t1, hpmcounter13h198# uimm12199# CHECK-INST: csrrs t2, hpmcounter13h, zero200# CHECK-ENC:  encoding: [0xf3,0x23,0xd0,0xc8]201# CHECK-INST-ALIAS: csrr t2, hpmcounter13h202# name203csrrs t1, hpmcounter13h, zero204# uimm12205csrrs t2, 0xC8D, zero206 207# hpmcounter14h208# name209# CHECK-INST: csrrs t1, hpmcounter14h, zero210# CHECK-ENC:  encoding: [0x73,0x23,0xe0,0xc8]211# CHECK-INST-ALIAS: csrr t1, hpmcounter14h212# uimm12213# CHECK-INST: csrrs t2, hpmcounter14h, zero214# CHECK-ENC:  encoding: [0xf3,0x23,0xe0,0xc8]215# CHECK-INST-ALIAS: csrr t2, hpmcounter14h216# name217csrrs t1, hpmcounter14h, zero218# uimm12219csrrs t2, 0xC8E, zero220 221# hpmcounter15h222# name223# CHECK-INST: csrrs t1, hpmcounter15h, zero224# CHECK-ENC:  encoding: [0x73,0x23,0xf0,0xc8]225# CHECK-INST-ALIAS: csrr t1, hpmcounter15h226# uimm12227# CHECK-INST: csrrs t2, hpmcounter15h, zero228# CHECK-ENC:  encoding: [0xf3,0x23,0xf0,0xc8]229# CHECK-INST-ALIAS: csrr t2, hpmcounter15h230# name231csrrs t1, hpmcounter15h, zero232# uimm12233csrrs t2, 0xC8F, zero234 235# hpmcounter16h236# name237# CHECK-INST: csrrs t1, hpmcounter16h, zero238# CHECK-ENC:  encoding: [0x73,0x23,0x00,0xc9]239# CHECK-INST-ALIAS: csrr t1, hpmcounter16h240# uimm12241# CHECK-INST: csrrs t2, hpmcounter16h, zero242# CHECK-ENC:  encoding: [0xf3,0x23,0x00,0xc9]243# CHECK-INST-ALIAS: csrr t2, hpmcounter16h244# name245csrrs t1, hpmcounter16h, zero246# uimm12247csrrs t2, 0xC90, zero248 249# hpmcounter17h250# name251# CHECK-INST: csrrs t1, hpmcounter17h, zero252# CHECK-ENC:  encoding: [0x73,0x23,0x10,0xc9]253# CHECK-INST-ALIAS: csrr t1, hpmcounter17h254# uimm12255# CHECK-INST: csrrs t2, hpmcounter17h, zero256# CHECK-ENC:  encoding: [0xf3,0x23,0x10,0xc9]257# CHECK-INST-ALIAS: csrr t2, hpmcounter17h258# name259csrrs t1, hpmcounter17h, zero260# uimm12261csrrs t2, 0xC91, zero262 263# hpmcounter18h264# name265# CHECK-INST: csrrs t1, hpmcounter18h, zero266# CHECK-ENC:  encoding: [0x73,0x23,0x20,0xc9]267# CHECK-INST-ALIAS: csrr t1, hpmcounter18h268# uimm12269# CHECK-INST: csrrs t2, hpmcounter18h, zero270# CHECK-ENC:  encoding: [0xf3,0x23,0x20,0xc9]271# CHECK-INST-ALIAS: csrr t2, hpmcounter18h272# name273csrrs t1, hpmcounter18h, zero274# uimm12275csrrs t2, 0xC92, zero276 277# hpmcounter19h278# name279# CHECK-INST: csrrs t1, hpmcounter19h, zero280# CHECK-ENC:  encoding: [0x73,0x23,0x30,0xc9]281# CHECK-INST-ALIAS: csrr t1, hpmcounter19h282# uimm12283# CHECK-INST: csrrs t2, hpmcounter19h, zero284# CHECK-ENC:  encoding: [0xf3,0x23,0x30,0xc9]285# CHECK-INST-ALIAS: csrr t2, hpmcounter19h286# name287csrrs t1, hpmcounter19h, zero288# uimm12289csrrs t2, 0xC93, zero290 291# hpmcounter20h292# name293# CHECK-INST: csrrs t1, hpmcounter20h, zero294# CHECK-ENC:  encoding: [0x73,0x23,0x40,0xc9]295# CHECK-INST-ALIAS: csrr t1, hpmcounter20h296# uimm12297# CHECK-INST: csrrs t2, hpmcounter20h, zero298# CHECK-ENC:  encoding: [0xf3,0x23,0x40,0xc9]299# CHECK-INST-ALIAS: csrr t2, hpmcounter20h300# name301csrrs t1, hpmcounter20h, zero302# uimm12303csrrs t2, 0xC94, zero304 305# hpmcounter21h306# name307# CHECK-INST: csrrs t1, hpmcounter21h, zero308# CHECK-ENC:  encoding: [0x73,0x23,0x50,0xc9]309# CHECK-INST-ALIAS: csrr t1, hpmcounter21h310# uimm12311# CHECK-INST: csrrs t2, hpmcounter21h, zero312# CHECK-ENC:  encoding: [0xf3,0x23,0x50,0xc9]313# CHECK-INST-ALIAS: csrr t2, hpmcounter21h314# name315csrrs t1, hpmcounter21h, zero316# uimm12317csrrs t2, 0xC95, zero318 319# hpmcounter22h320# name321# CHECK-INST: csrrs t1, hpmcounter22h, zero322# CHECK-ENC:  encoding: [0x73,0x23,0x60,0xc9]323# CHECK-INST-ALIAS: csrr t1, hpmcounter22h324# uimm12325# CHECK-INST: csrrs t2, hpmcounter22h, zero326# CHECK-ENC:  encoding: [0xf3,0x23,0x60,0xc9]327# CHECK-INST-ALIAS: csrr t2, hpmcounter22h328# name329csrrs t1, hpmcounter22h, zero330# uimm12331csrrs t2, 0xC96, zero332 333# hpmcounter23h334# name335# CHECK-INST: csrrs t1, hpmcounter23h, zero336# CHECK-ENC:  encoding: [0x73,0x23,0x70,0xc9]337# CHECK-INST-ALIAS: csrr t1, hpmcounter23h338# uimm12339# CHECK-INST: csrrs t2, hpmcounter23h, zero340# CHECK-ENC:  encoding: [0xf3,0x23,0x70,0xc9]341# CHECK-INST-ALIAS: csrr t2, hpmcounter23h342# name343csrrs t1, hpmcounter23h, zero344# uimm12345csrrs t2, 0xC97, zero346 347# hpmcounter24h348# name349# CHECK-INST: csrrs t1, hpmcounter24h, zero350# CHECK-ENC:  encoding: [0x73,0x23,0x80,0xc9]351# CHECK-INST-ALIAS: csrr t1, hpmcounter24h352# uimm12353# CHECK-INST: csrrs t2, hpmcounter24h, zero354# CHECK-ENC:  encoding: [0xf3,0x23,0x80,0xc9]355# CHECK-INST-ALIAS: csrr t2, hpmcounter24h356# name357csrrs t1, hpmcounter24h, zero358# uimm12359csrrs t2, 0xC98, zero360 361# hpmcounter25h362# name363# CHECK-INST: csrrs t1, hpmcounter25h, zero364# CHECK-ENC:  encoding: [0x73,0x23,0x90,0xc9]365# CHECK-INST-ALIAS: csrr t1, hpmcounter25h366# uimm12367# CHECK-INST: csrrs t2, hpmcounter25h, zero368# CHECK-ENC:  encoding: [0xf3,0x23,0x90,0xc9]369# CHECK-INST-ALIAS: csrr t2, hpmcounter25h370# name371csrrs t1, hpmcounter25h, zero372# uimm12373csrrs t2, 0xC99, zero374 375# hpmcounter26h376# name377# CHECK-INST: csrrs t1, hpmcounter26h, zero378# CHECK-ENC:  encoding: [0x73,0x23,0xa0,0xc9]379# CHECK-INST-ALIAS: csrr t1, hpmcounter26h380# uimm12381# CHECK-INST: csrrs t2, hpmcounter26h, zero382# CHECK-ENC:  encoding: [0xf3,0x23,0xa0,0xc9]383# CHECK-INST-ALIAS: csrr t2, hpmcounter26h384# name385csrrs t1, hpmcounter26h, zero386# uimm12387csrrs t2, 0xC9A, zero388 389# hpmcounter27h390# name391# CHECK-INST: csrrs t1, hpmcounter27h, zero392# CHECK-ENC:  encoding: [0x73,0x23,0xb0,0xc9]393# CHECK-INST-ALIAS: csrr t1, hpmcounter27h394# uimm12395# CHECK-INST: csrrs t2, hpmcounter27h, zero396# CHECK-ENC:  encoding: [0xf3,0x23,0xb0,0xc9]397# CHECK-INST-ALIAS: csrr t2, hpmcounter27h398# name399csrrs t1, hpmcounter27h, zero400# uimm12401csrrs t2, 0xC9B, zero402 403# hpmcounter28h404# name405# CHECK-INST: csrrs t1, hpmcounter28h, zero406# CHECK-ENC:  encoding: [0x73,0x23,0xc0,0xc9]407# CHECK-INST-ALIAS: csrr t1, hpmcounter28h408# uimm12409# CHECK-INST: csrrs t2, hpmcounter28h, zero410# CHECK-ENC:  encoding: [0xf3,0x23,0xc0,0xc9]411# CHECK-INST-ALIAS: csrr t2, hpmcounter28h412# name413csrrs t1, hpmcounter28h, zero414# uimm12415csrrs t2, 0xC9C, zero416 417# hpmcounter29h418# name419# CHECK-INST: csrrs t1, hpmcounter29h, zero420# CHECK-ENC:  encoding: [0x73,0x23,0xd0,0xc9]421# CHECK-INST-ALIAS: csrr t1, hpmcounter29h422# uimm12423# CHECK-INST: csrrs t2, hpmcounter29h, zero424# CHECK-ENC:  encoding: [0xf3,0x23,0xd0,0xc9]425# CHECK-INST-ALIAS: csrr t2, hpmcounter29h426# name427csrrs t1, hpmcounter29h, zero428# uimm12429csrrs t2, 0xC9D, zero430 431# hpmcounter30h432# name433# CHECK-INST: csrrs t1, hpmcounter30h, zero434# CHECK-ENC:  encoding: [0x73,0x23,0xe0,0xc9]435# CHECK-INST-ALIAS: csrr t1, hpmcounter30h436# uimm12437# CHECK-INST: csrrs t2, hpmcounter30h, zero438# CHECK-ENC:  encoding: [0xf3,0x23,0xe0,0xc9]439# CHECK-INST-ALIAS: csrr t2, hpmcounter30h440# name441csrrs t1, hpmcounter30h, zero442# uimm12443csrrs t2, 0xC9E, zero444 445# hpmcounter31h446# name447# CHECK-INST: csrrs t1, hpmcounter31h, zero448# CHECK-ENC:  encoding: [0x73,0x23,0xf0,0xc9]449# CHECK-INST-ALIAS: csrr t1, hpmcounter31h450# uimm12451# CHECK-INST: csrrs t2, hpmcounter31h, zero452# CHECK-ENC:  encoding: [0xf3,0x23,0xf0,0xc9]453# CHECK-INST-ALIAS: csrr t2, hpmcounter31h454# name455csrrs t1, hpmcounter31h, zero456# uimm12457csrrs t2, 0xC9F, zero458