mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[ARM] Add data gathering hint instruction
Summary: This patch upstreams support the optional ARMv8.0 Data Gathering Hint (DGH) extension, which adds the Data Gathering Hint instruction to the hint space. See ARMv8.0-DGH in the Arm Architecture Reference Manual Armv8 for more information. Reviewers: t.p.northover, rengolin, SjoerdMeijer, ab, danielkiss, samparker Reviewed By: SjoerdMeijer Subscribers: LukeGeeson, ostannard, kristof.beyls, hiraditya, danielkiss, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77097
This commit is contained in:
parent
cf2bc6f40e
commit
89cccc020b
@ -711,6 +711,7 @@ def : InstAlias<"wfe", (HINT 0b010)>;
|
|||||||
def : InstAlias<"wfi", (HINT 0b011)>;
|
def : InstAlias<"wfi", (HINT 0b011)>;
|
||||||
def : InstAlias<"sev", (HINT 0b100)>;
|
def : InstAlias<"sev", (HINT 0b100)>;
|
||||||
def : InstAlias<"sevl", (HINT 0b101)>;
|
def : InstAlias<"sevl", (HINT 0b101)>;
|
||||||
|
def : InstAlias<"dgh", (HINT 0b110)>;
|
||||||
def : InstAlias<"esb", (HINT 0b10000)>, Requires<[HasRAS]>;
|
def : InstAlias<"esb", (HINT 0b10000)>, Requires<[HasRAS]>;
|
||||||
def : InstAlias<"csdb", (HINT 20)>;
|
def : InstAlias<"csdb", (HINT 20)>;
|
||||||
def : InstAlias<"bti", (HINT 32)>, Requires<[HasBTI]>;
|
def : InstAlias<"bti", (HINT 32)>, Requires<[HasBTI]>;
|
||||||
|
@ -3465,12 +3465,14 @@ _func:
|
|||||||
wfi
|
wfi
|
||||||
sev
|
sev
|
||||||
sevl
|
sevl
|
||||||
|
dgh
|
||||||
// CHECK: nop // encoding: [0x1f,0x20,0x03,0xd5]
|
// CHECK: nop // encoding: [0x1f,0x20,0x03,0xd5]
|
||||||
// CHECK: yield // encoding: [0x3f,0x20,0x03,0xd5]
|
// CHECK: yield // encoding: [0x3f,0x20,0x03,0xd5]
|
||||||
// CHECK: wfe // encoding: [0x5f,0x20,0x03,0xd5]
|
// CHECK: wfe // encoding: [0x5f,0x20,0x03,0xd5]
|
||||||
// CHECK: wfi // encoding: [0x7f,0x20,0x03,0xd5]
|
// CHECK: wfi // encoding: [0x7f,0x20,0x03,0xd5]
|
||||||
// CHECK: sev // encoding: [0x9f,0x20,0x03,0xd5]
|
// CHECK: sev // encoding: [0x9f,0x20,0x03,0xd5]
|
||||||
// CHECK: sevl // encoding: [0xbf,0x20,0x03,0xd5]
|
// CHECK: sevl // encoding: [0xbf,0x20,0x03,0xd5]
|
||||||
|
// CHECK: dgh // encoding: [0xdf,0x20,0x03,0xd5]
|
||||||
|
|
||||||
clrex
|
clrex
|
||||||
clrex #0
|
clrex #0
|
||||||
|
@ -3033,6 +3033,7 @@
|
|||||||
# CHECK: wfi
|
# CHECK: wfi
|
||||||
# CHECK: sev
|
# CHECK: sev
|
||||||
# CHECK: sevl
|
# CHECK: sevl
|
||||||
|
# CHECK: dgh
|
||||||
0x1f 0x20 0x3 0xd5
|
0x1f 0x20 0x3 0xd5
|
||||||
0xff 0x2f 0x3 0xd5
|
0xff 0x2f 0x3 0xd5
|
||||||
0x1f 0x20 0x3 0xd5
|
0x1f 0x20 0x3 0xd5
|
||||||
@ -3041,6 +3042,7 @@
|
|||||||
0x7f 0x20 0x3 0xd5
|
0x7f 0x20 0x3 0xd5
|
||||||
0x9f 0x20 0x3 0xd5
|
0x9f 0x20 0x3 0xd5
|
||||||
0xbf 0x20 0x3 0xd5
|
0xbf 0x20 0x3 0xd5
|
||||||
|
0xdf,0x20,0x3,0xd5
|
||||||
|
|
||||||
# CHECK: clrex
|
# CHECK: clrex
|
||||||
# CHECK: clrex #0
|
# CHECK: clrex #0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user