Skip to content

Commit e0b9cce

Browse files
authored
[SPARC][IAS] Add movr(n)e alias for movr(n)z
This adds the alternate mnemonics for movrz and movrnz. Reviewers: s-barannikov, jrtc27, brad0, rorth Reviewed By: s-barannikov Pull Request: #94252
1 parent 2bc36af commit e0b9cce

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

llvm/lib/Target/Sparc/SparcInstrAliases.td

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -400,9 +400,11 @@ defm : cp_cond_alias<"012", 0b1111>;
400400
let EmitPriority = 0 in defm : cp_cond_alias<"", 0b1000>; // same as a; gnu asm, not in manual
401401

402402
defm : reg_cond_alias<"z", 0b001>;
403+
defm : reg_cond_alias<"e", 0b001>;
403404
defm : reg_cond_alias<"lez", 0b010>;
404405
defm : reg_cond_alias<"lz", 0b011>;
405406
defm : reg_cond_alias<"nz", 0b101>;
407+
defm : reg_cond_alias<"ne", 0b101>;
406408
defm : reg_cond_alias<"gz", 0b110>;
407409
defm : reg_cond_alias<"gez", 0b111>;
408410

llvm/test/MC/Sparc/sparc64-ctrl-instructions.s

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1190,29 +1190,37 @@
11901190
! CHECK-NEXT: ! fixup A - offset: 0, value: .BB0, kind: fixup_sparc_br16
11911191
brz,a,pn %g1, .BB0
11921192

1193+
! CHECK: movrz %g1, %g2, %g3 ! encoding: [0x87,0x78,0x44,0x02]
11931194
! CHECK: movrz %g1, %g2, %g3 ! encoding: [0x87,0x78,0x44,0x02]
11941195
! CHECK: movrlez %g1, %g2, %g3 ! encoding: [0x87,0x78,0x48,0x02]
11951196
! CHECK: movrlz %g1, %g2, %g3 ! encoding: [0x87,0x78,0x4c,0x02]
11961197
! CHECK: movrnz %g1, %g2, %g3 ! encoding: [0x87,0x78,0x54,0x02]
1198+
! CHECK: movrnz %g1, %g2, %g3 ! encoding: [0x87,0x78,0x54,0x02]
11971199
! CHECK: movrgz %g1, %g2, %g3 ! encoding: [0x87,0x78,0x58,0x02]
11981200
! CHECK: movrgez %g1, %g2, %g3 ! encoding: [0x87,0x78,0x5c,0x02]
11991201
movrz %g1, %g2, %g3
1202+
movre %g1, %g2, %g3
12001203
movrlez %g1, %g2, %g3
12011204
movrlz %g1, %g2, %g3
12021205
movrnz %g1, %g2, %g3
1206+
movrne %g1, %g2, %g3
12031207
movrgz %g1, %g2, %g3
12041208
movrgez %g1, %g2, %g3
12051209

1210+
! CHECK: movrz %g1, 2, %g3 ! encoding: [0x87,0x78,0x64,0x02]
12061211
! CHECK: movrz %g1, 2, %g3 ! encoding: [0x87,0x78,0x64,0x02]
12071212
! CHECK: movrlez %g1, 2, %g3 ! encoding: [0x87,0x78,0x68,0x02]
12081213
! CHECK: movrlz %g1, 2, %g3 ! encoding: [0x87,0x78,0x6c,0x02]
12091214
! CHECK: movrnz %g1, 2, %g3 ! encoding: [0x87,0x78,0x74,0x02]
1215+
! CHECK: movrnz %g1, 2, %g3 ! encoding: [0x87,0x78,0x74,0x02]
12101216
! CHECK: movrgz %g1, 2, %g3 ! encoding: [0x87,0x78,0x78,0x02]
12111217
! CHECK: movrgez %g1, 2, %g3 ! encoding: [0x87,0x78,0x7c,0x02]
12121218
movrz %g1, 2, %g3
1219+
movre %g1, 2, %g3
12131220
movrlez %g1, 2, %g3
12141221
movrlz %g1, 2, %g3
12151222
movrnz %g1, 2, %g3
1223+
movrne %g1, 2, %g3
12161224
movrgz %g1, 2, %g3
12171225
movrgez %g1, 2, %g3
12181226

0 commit comments

Comments
 (0)