[llvm] r329626 - [X86] Added missing AAD/AAM immediate schedule tests
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 9 14:46:57 PDT 2018
Author: rksimon
Date: Mon Apr 9 14:46:57 2018
New Revision: 329626
URL: http://llvm.org/viewvc/llvm-project?rev=329626&view=rev
Log:
[X86] Added missing AAD/AAM immediate schedule tests
Added some more TODOs for missing instructions
Modified:
llvm/trunk/test/CodeGen/X86/schedule-x86_32.ll
llvm/trunk/test/CodeGen/X86/schedule-x86_64.ll
Modified: llvm/trunk/test/CodeGen/X86/schedule-x86_32.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/schedule-x86_32.ll?rev=329626&r1=329625&r2=329626&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/schedule-x86_32.ll (original)
+++ llvm/trunk/test/CodeGen/X86/schedule-x86_32.ll Mon Apr 9 14:46:57 2018
@@ -95,12 +95,13 @@ define i8 @test_aaa(i8 %a0) optsize {
ret i8 %1
}
-define i8 @test_aad(i16 %a0) optsize {
+define void @test_aad(i16 %a0) optsize {
; GENERIC-LABEL: test_aad:
; GENERIC: # %bb.0:
; GENERIC-NEXT: movzwl {{[0-9]+}}(%esp), %eax
; GENERIC-NEXT: #APP
; GENERIC-NEXT: aad
+; GENERIC-NEXT: aad $16
; GENERIC-NEXT: #NO_APP
; GENERIC-NEXT: retl
;
@@ -109,6 +110,7 @@ define i8 @test_aad(i16 %a0) optsize {
; ATOM-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [1:1.00]
; ATOM-NEXT: #APP
; ATOM-NEXT: aad # sched: [7:3.50]
+; ATOM-NEXT: aad $16 # sched: [7:3.50]
; ATOM-NEXT: #NO_APP
; ATOM-NEXT: retl # sched: [79:39.50]
;
@@ -117,6 +119,7 @@ define i8 @test_aad(i16 %a0) optsize {
; SLM-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [4:1.00]
; SLM-NEXT: #APP
; SLM-NEXT: aad # sched: [100:1.00]
+; SLM-NEXT: aad $16 # sched: [100:1.00]
; SLM-NEXT: #NO_APP
; SLM-NEXT: retl # sched: [4:1.00]
;
@@ -125,6 +128,7 @@ define i8 @test_aad(i16 %a0) optsize {
; SANDY-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [5:0.50]
; SANDY-NEXT: #APP
; SANDY-NEXT: aad # sched: [100:0.33]
+; SANDY-NEXT: aad $16 # sched: [100:0.33]
; SANDY-NEXT: #NO_APP
; SANDY-NEXT: retl # sched: [6:1.00]
;
@@ -133,6 +137,7 @@ define i8 @test_aad(i16 %a0) optsize {
; HASWELL-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [5:0.50]
; HASWELL-NEXT: #APP
; HASWELL-NEXT: aad # sched: [100:0.25]
+; HASWELL-NEXT: aad $16 # sched: [100:0.25]
; HASWELL-NEXT: #NO_APP
; HASWELL-NEXT: retl # sched: [7:1.00]
;
@@ -141,6 +146,7 @@ define i8 @test_aad(i16 %a0) optsize {
; BROADWELL-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [5:0.50]
; BROADWELL-NEXT: #APP
; BROADWELL-NEXT: aad # sched: [100:0.25]
+; BROADWELL-NEXT: aad $16 # sched: [100:0.25]
; BROADWELL-NEXT: #NO_APP
; BROADWELL-NEXT: retl # sched: [6:0.50]
;
@@ -149,6 +155,7 @@ define i8 @test_aad(i16 %a0) optsize {
; SKYLAKE-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [5:0.50]
; SKYLAKE-NEXT: #APP
; SKYLAKE-NEXT: aad # sched: [100:0.25]
+; SKYLAKE-NEXT: aad $16 # sched: [100:0.25]
; SKYLAKE-NEXT: #NO_APP
; SKYLAKE-NEXT: retl # sched: [6:0.50]
;
@@ -157,6 +164,7 @@ define i8 @test_aad(i16 %a0) optsize {
; SKX-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [5:0.50]
; SKX-NEXT: #APP
; SKX-NEXT: aad # sched: [100:0.25]
+; SKX-NEXT: aad $16 # sched: [100:0.25]
; SKX-NEXT: #NO_APP
; SKX-NEXT: retl # sched: [6:0.50]
;
@@ -165,6 +173,7 @@ define i8 @test_aad(i16 %a0) optsize {
; BTVER2-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [4:1.00]
; BTVER2-NEXT: #APP
; BTVER2-NEXT: aad # sched: [100:0.50]
+; BTVER2-NEXT: aad $16 # sched: [100:0.50]
; BTVER2-NEXT: #NO_APP
; BTVER2-NEXT: retl # sched: [4:1.00]
;
@@ -173,18 +182,20 @@ define i8 @test_aad(i16 %a0) optsize {
; ZNVER1-NEXT: movzwl {{[0-9]+}}(%esp), %eax # sched: [8:0.50]
; ZNVER1-NEXT: #APP
; ZNVER1-NEXT: aad # sched: [100:?]
+; ZNVER1-NEXT: aad $16 # sched: [100:?]
; ZNVER1-NEXT: #NO_APP
; ZNVER1-NEXT: retl # sched: [1:0.50]
- %1 = tail call i8 asm "aad", "=r,r"(i16 %a0) nounwind
- ret i8 %1
+ tail call void asm "aad \0A\09 aad $1", "r,i"(i16 %a0, i16 16) nounwind
+ ret void
}
-define i16 @test_aam(i8 %a0) optsize {
+define void @test_aam(i8 %a0) optsize {
; GENERIC-LABEL: test_aam:
; GENERIC: # %bb.0:
; GENERIC-NEXT: movb {{[0-9]+}}(%esp), %al
; GENERIC-NEXT: #APP
; GENERIC-NEXT: aam
+; GENERIC-NEXT: aam $16
; GENERIC-NEXT: #NO_APP
; GENERIC-NEXT: retl
;
@@ -193,6 +204,7 @@ define i16 @test_aam(i8 %a0) optsize {
; ATOM-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [1:1.00]
; ATOM-NEXT: #APP
; ATOM-NEXT: aam # sched: [21:10.50]
+; ATOM-NEXT: aam $16 # sched: [21:10.50]
; ATOM-NEXT: #NO_APP
; ATOM-NEXT: retl # sched: [79:39.50]
;
@@ -201,6 +213,7 @@ define i16 @test_aam(i8 %a0) optsize {
; SLM-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [3:1.00]
; SLM-NEXT: #APP
; SLM-NEXT: aam # sched: [100:1.00]
+; SLM-NEXT: aam $16 # sched: [100:1.00]
; SLM-NEXT: #NO_APP
; SLM-NEXT: retl # sched: [4:1.00]
;
@@ -209,6 +222,7 @@ define i16 @test_aam(i8 %a0) optsize {
; SANDY-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [5:0.50]
; SANDY-NEXT: #APP
; SANDY-NEXT: aam # sched: [100:0.33]
+; SANDY-NEXT: aam $16 # sched: [100:0.33]
; SANDY-NEXT: #NO_APP
; SANDY-NEXT: retl # sched: [6:1.00]
;
@@ -217,6 +231,7 @@ define i16 @test_aam(i8 %a0) optsize {
; HASWELL-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [5:0.50]
; HASWELL-NEXT: #APP
; HASWELL-NEXT: aam # sched: [100:0.25]
+; HASWELL-NEXT: aam $16 # sched: [100:0.25]
; HASWELL-NEXT: #NO_APP
; HASWELL-NEXT: retl # sched: [7:1.00]
;
@@ -225,6 +240,7 @@ define i16 @test_aam(i8 %a0) optsize {
; BROADWELL-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [5:0.50]
; BROADWELL-NEXT: #APP
; BROADWELL-NEXT: aam # sched: [100:0.25]
+; BROADWELL-NEXT: aam $16 # sched: [100:0.25]
; BROADWELL-NEXT: #NO_APP
; BROADWELL-NEXT: retl # sched: [6:0.50]
;
@@ -233,6 +249,7 @@ define i16 @test_aam(i8 %a0) optsize {
; SKYLAKE-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [5:0.50]
; SKYLAKE-NEXT: #APP
; SKYLAKE-NEXT: aam # sched: [100:0.25]
+; SKYLAKE-NEXT: aam $16 # sched: [100:0.25]
; SKYLAKE-NEXT: #NO_APP
; SKYLAKE-NEXT: retl # sched: [6:0.50]
;
@@ -241,6 +258,7 @@ define i16 @test_aam(i8 %a0) optsize {
; SKX-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [5:0.50]
; SKX-NEXT: #APP
; SKX-NEXT: aam # sched: [100:0.25]
+; SKX-NEXT: aam $16 # sched: [100:0.25]
; SKX-NEXT: #NO_APP
; SKX-NEXT: retl # sched: [6:0.50]
;
@@ -249,6 +267,7 @@ define i16 @test_aam(i8 %a0) optsize {
; BTVER2-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [5:1.00]
; BTVER2-NEXT: #APP
; BTVER2-NEXT: aam # sched: [100:0.50]
+; BTVER2-NEXT: aam $16 # sched: [100:0.50]
; BTVER2-NEXT: #NO_APP
; BTVER2-NEXT: retl # sched: [4:1.00]
;
@@ -257,10 +276,11 @@ define i16 @test_aam(i8 %a0) optsize {
; ZNVER1-NEXT: movb {{[0-9]+}}(%esp), %al # sched: [8:0.50]
; ZNVER1-NEXT: #APP
; ZNVER1-NEXT: aam # sched: [100:?]
+; ZNVER1-NEXT: aam $16 # sched: [100:?]
; ZNVER1-NEXT: #NO_APP
; ZNVER1-NEXT: retl # sched: [1:0.50]
- %1 = tail call i16 asm "aam", "=r,r"(i8 %a0) nounwind
- ret i16 %1
+ tail call void asm "aam \0A\09 aam $1", "r,i"(i8 %a0, i8 16) nounwind
+ ret void
}
define i8 @test_aas(i8 %a0) optsize {
@@ -605,6 +625,8 @@ define void @test_bound(i16 %a0, i16 *%a
ret void
}
+; TODO - test_call
+
define i8 @test_daa(i8 %a0) optsize {
; GENERIC-LABEL: test_daa:
; GENERIC: # %bb.0:
@@ -1261,6 +1283,8 @@ define void @test_into() optsize {
ret void
}
+; TODO - test_jmp
+
define void @test_jcxz_jecxz() optsize {
; GENERIC-LABEL: test_jcxz_jecxz:
; GENERIC: # %bb.0:
@@ -1355,6 +1379,8 @@ define void @test_jcxz_jecxz() optsize {
ret void
}
+; TODO - test_lds
+
define void @test_leave() optsize {
; GENERIC-LABEL: test_leave:
; GENERIC: # %bb.0:
@@ -1429,6 +1455,8 @@ define void @test_leave() optsize {
ret void
}
+; TODO - test_les
+
define void @test_pop_push() optsize {
; GENERIC-LABEL: test_pop_push:
; GENERIC: # %bb.0:
@@ -2207,6 +2235,9 @@ define i8 @test_salc() optsize {
ret i8 %1
}
+; TODO - test_sgdt
+; TODO - test_sidt
+
define void @test_xchg_32(i32 %a0, i32 %a1, i32 *%a2) optsize {
; GENERIC-LABEL: test_xchg_32:
; GENERIC: # %bb.0:
Modified: llvm/trunk/test/CodeGen/X86/schedule-x86_64.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/schedule-x86_64.ll?rev=329626&r1=329625&r2=329626&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/schedule-x86_64.ll (original)
+++ llvm/trunk/test/CodeGen/X86/schedule-x86_64.ll Mon Apr 9 14:46:57 2018
@@ -13904,6 +13904,8 @@ define void @test_setcc(i8 %a0, i8 *%a1)
ret void
}
+; TODO - test_sgdt
+
define void @test_shld_shrd_16(i16 %a0, i16 %a1, i16 *%a2) optsize {
; GENERIC-LABEL: test_shld_shrd_16:
; GENERIC: # %bb.0:
@@ -14334,6 +14336,10 @@ define void @test_shld_shrd_64(i64 %a0,
ret void
}
+; TODO - test_sidt
+; TODO - test_sldt
+; TODO - test_smsw
+
define void @test_stc_std() optsize {
; GENERIC-LABEL: test_stc_std:
; GENERIC: # %bb.0:
@@ -14418,6 +14424,9 @@ define void @test_stc_std() optsize {
ret void
}
+; TODO - test_sti
+; TODO - test_stgi
+
define void @test_stos() optsize {
; GENERIC-LABEL: test_stos:
; GENERIC: # %bb.0:
@@ -14522,6 +14531,8 @@ define void @test_stos() optsize {
ret void
}
+; TODO - test_str
+
define void @test_sub_8(i8 %a0, i8* %a1) optsize {
; GENERIC-LABEL: test_sub_8:
; GENERIC: # %bb.0:
@@ -15165,6 +15176,12 @@ define void @test_sub_64(i64 %a0, i64* %
ret void
}
+; TODO - test_swapgs
+; TODO - test_syscall
+; TODO - test_sysenter
+; TODO - test_sysexit
+; TODO - test_sysret
+
define void @test_test_8(i8 %a0, i8* %a1) optsize {
; GENERIC-LABEL: test_test_8:
; GENERIC: # %bb.0:
@@ -15783,6 +15800,14 @@ define void @test_ud2() optsize {
ret void
}
+; TODO - test_verr
+; TODO - test_verw
+; TODO - test_vmload
+; TODO - test_vmmcall
+; TODO - test_vmrun
+; TODO - test_vmsave
+; TODO - test_wbinvd
+
define void @test_xadd_8(i8 %a0, i8 %a1, i8 *%a2) optsize {
; GENERIC-LABEL: test_xadd_8:
; GENERIC: # %bb.0:
More information about the llvm-commits
mailing list