1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 20:12:56 +02:00

Recognize leavel and leaveq aliases for leave.

Validate encoding of leave in 64bit mode.

llvm-svn: 125795
This commit is contained in:
Joerg Sonnenberger 2011-02-17 23:36:39 +00:00
parent b6f55191b3
commit 9f8f3a2c59
3 changed files with 17 additions and 0 deletions

View File

@ -1293,6 +1293,9 @@ def : MnemonicAlias<"cdqe", "cltq">;
// lret maps to lretl, it is not ambiguous with lretq.
def : MnemonicAlias<"lret", "lretl">;
def : MnemonicAlias<"leavel", "leave">, Requires<[In32BitMode]>;
def : MnemonicAlias<"leaveq", "leave">, Requires<[In64BitMode]>;
def : MnemonicAlias<"pop", "popl">, Requires<[In32BitMode]>;
def : MnemonicAlias<"pop", "popq">, Requires<[In64BitMode]>;
def : MnemonicAlias<"popf", "popfl">, Requires<[In32BitMode]>;

View File

@ -267,6 +267,9 @@
// CHECK: leave
leave
// CHECK: leave
leavel
// CHECK: seto %bl
seto %bl
@ -3330,6 +3333,10 @@
// CHECK: encoding: [0xc9]
leave
// CHECK: leave
// CHECK: encoding: [0xc9]
leavel
// CHECK: seto %bl
// CHECK: encoding: [0x0f,0x90,0xc3]
seto %bl

View File

@ -148,3 +148,10 @@ pshufb CPI1_0(%rip), %xmm1
// CHECK: encoding: [0x48,0x0f,0xae,0x08]
fxrstorq (%rax)
// CHECK: leave
// CHECK: encoding: [0xc9]
leave
// CHECK: leave
// CHECK: encoding: [0xc9]
leaveq