Test Failure: Transforms/InstCombine/X86/x86-vector-shifts-inseltpoison.ll

Test source: git

Log:

Source: <stdin>
-- 1. ModuleToFunctionPassAdaptor
-- 1. PassManager<llvm::Function> : Skipping NOP
-- 2. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrai_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrai_w <8 x i16> %v, i32 0
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 3. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrai_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrai_w <8 x i16> %v, i32 0
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrai_w_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 4. PassManager<llvm::Function> : Skipping NOP
-- 5. PassManager<llvm::Function> : Skipping NOP
-- 6. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrai_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrai_w <8 x i16> %v, i32 15
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 7. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrai_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrai_w <8 x i16> %v, i32 15
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrai_w_15(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 8. PassManager<llvm::Function> : Skipping NOP
-- 9. PassManager<llvm::Function> : Skipping NOP
-- 10. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrai_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrai_w <8 x i16> %v, i32 64
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 11. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrai_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrai_w <8 x i16> %v, i32 64
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrai_w_64(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 12. PassManager<llvm::Function> : Skipping NOP
-- 13. PassManager<llvm::Function> : Skipping NOP
-- 14. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrai_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrai_d <4 x i32> %v, i32 0
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 15. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrai_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrai_d <4 x i32> %v, i32 0
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrai_d_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 16. PassManager<llvm::Function> : Skipping NOP
-- 17. PassManager<llvm::Function> : Skipping NOP
-- 18. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrai_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrai_d <4 x i32> %v, i32 15
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 19. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrai_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrai_d <4 x i32> %v, i32 15
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrai_d_15(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 20. PassManager<llvm::Function> : Skipping NOP
-- 21. PassManager<llvm::Function> : Skipping NOP
-- 22. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrai_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrai_d <4 x i32> %v, i32 64
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 23. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrai_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrai_d <4 x i32> %v, i32 64
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrai_d_64(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { 31, 31, 31, 31 }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 24. PassManager<llvm::Function> : Skipping NOP
-- 25. PassManager<llvm::Function> : Skipping NOP
-- 26. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrai_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrai_w <16 x i16> %v, i32 0
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 27. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrai_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrai_w <16 x i16> %v, i32 0
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrai_w_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 28. PassManager<llvm::Function> : Skipping NOP
-- 29. PassManager<llvm::Function> : Skipping NOP
-- 30. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrai_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrai_w <16 x i16> %v, i32 15
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 31. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrai_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrai_w <16 x i16> %v, i32 15
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrai_w_15(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 32. PassManager<llvm::Function> : Skipping NOP
-- 33. PassManager<llvm::Function> : Skipping NOP
-- 34. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrai_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrai_w <16 x i16> %v, i32 64
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 35. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrai_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrai_w <16 x i16> %v, i32 64
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrai_w_64(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 36. PassManager<llvm::Function> : Skipping NOP
-- 37. PassManager<llvm::Function> : Skipping NOP
-- 38. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrai_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrai_d <8 x i32> %v, i32 0
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 39. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrai_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrai_d <8 x i32> %v, i32 0
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrai_d_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 40. PassManager<llvm::Function> : Skipping NOP
-- 41. PassManager<llvm::Function> : Skipping NOP
-- 42. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrai_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrai_d <8 x i32> %v, i32 15
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 43. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrai_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrai_d <8 x i32> %v, i32 15
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrai_d_15(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 44. PassManager<llvm::Function> : Skipping NOP
-- 45. PassManager<llvm::Function> : Skipping NOP
-- 46. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrai_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrai_d <8 x i32> %v, i32 64
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 47. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrai_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrai_d <8 x i32> %v, i32 64
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrai_d_64(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { 31, 31, 31, 31, 31, 31, 31, 31 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 48. PassManager<llvm::Function> : Skipping NOP
-- 49. PassManager<llvm::Function> : Skipping NOP
-- 50. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrai_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_128 <2 x i64> %v, i32 0
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 51. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrai_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_128 <2 x i64> %v, i32 0
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psrai_q_128_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 52. PassManager<llvm::Function> : Skipping NOP
-- 53. PassManager<llvm::Function> : Skipping NOP
-- 54. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrai_q_128_15(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_128 <2 x i64> %v, i32 15
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 55. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrai_q_128_15(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_128 <2 x i64> %v, i32 15
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psrai_q_128_15(<2 x i64> %v) {
#0:
  %#1 = ashr <2 x i64> %v, { 15, 15 }
  ret <2 x i64> %#1
}
Transformation seems to be correct!

-- 56. PassManager<llvm::Function> : Skipping NOP
-- 57. PassManager<llvm::Function> : Skipping NOP
-- 58. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrai_q_128_64(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_128 <2 x i64> %v, i32 64
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 59. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrai_q_128_64(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_128 <2 x i64> %v, i32 64
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psrai_q_128_64(<2 x i64> %v) {
#0:
  %#1 = ashr <2 x i64> %v, { 63, 63 }
  ret <2 x i64> %#1
}
Transformation seems to be correct!

-- 60. PassManager<llvm::Function> : Skipping NOP
-- 61. PassManager<llvm::Function> : Skipping NOP
-- 62. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrai_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_256 <4 x i64> %v, i32 0
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 63. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrai_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_256 <4 x i64> %v, i32 0
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psrai_q_256_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 64. PassManager<llvm::Function> : Skipping NOP
-- 65. PassManager<llvm::Function> : Skipping NOP
-- 66. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrai_q_256_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_256 <4 x i64> %v, i32 15
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 67. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrai_q_256_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_256 <4 x i64> %v, i32 15
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psrai_q_256_15(<4 x i64> %v) {
#0:
  %#1 = ashr <4 x i64> %v, { 15, 15, 15, 15 }
  ret <4 x i64> %#1
}
Transformation seems to be correct!

-- 68. PassManager<llvm::Function> : Skipping NOP
-- 69. PassManager<llvm::Function> : Skipping NOP
-- 70. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrai_q_256_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_256 <4 x i64> %v, i32 64
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 71. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrai_q_256_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_256 <4 x i64> %v, i32 64
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psrai_q_256_64(<4 x i64> %v) {
#0:
  %#1 = ashr <4 x i64> %v, { 63, 63, 63, 63 }
  ret <4 x i64> %#1
}
Transformation seems to be correct!

-- 72. PassManager<llvm::Function> : Skipping NOP
-- 73. PassManager<llvm::Function> : Skipping NOP
-- 74. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrai_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrai_w_512 <32 x i16> %v, i32 0
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 75. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrai_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrai_w_512 <32 x i16> %v, i32 0
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrai_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 76. PassManager<llvm::Function> : Skipping NOP
-- 77. PassManager<llvm::Function> : Skipping NOP
-- 78. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrai_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrai_w_512 <32 x i16> %v, i32 15
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 79. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrai_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrai_w_512 <32 x i16> %v, i32 15
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrai_w_512_15(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 80. PassManager<llvm::Function> : Skipping NOP
-- 81. PassManager<llvm::Function> : Skipping NOP
-- 82. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrai_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrai_w_512 <32 x i16> %v, i32 64
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 83. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrai_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrai_w_512 <32 x i16> %v, i32 64
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrai_w_512_64(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 84. PassManager<llvm::Function> : Skipping NOP
-- 85. PassManager<llvm::Function> : Skipping NOP
-- 86. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrai_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrai_d_512 <16 x i32> %v, i32 0
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 87. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrai_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrai_d_512 <16 x i32> %v, i32 0
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrai_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 88. PassManager<llvm::Function> : Skipping NOP
-- 89. PassManager<llvm::Function> : Skipping NOP
-- 90. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrai_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrai_d_512 <16 x i32> %v, i32 15
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 91. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrai_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrai_d_512 <16 x i32> %v, i32 15
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrai_d_512_15(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 92. PassManager<llvm::Function> : Skipping NOP
-- 93. PassManager<llvm::Function> : Skipping NOP
-- 94. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrai_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrai_d_512 <16 x i32> %v, i32 64
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 95. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrai_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrai_d_512 <16 x i32> %v, i32 64
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrai_d_512_64(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 96. PassManager<llvm::Function> : Skipping NOP
-- 97. PassManager<llvm::Function> : Skipping NOP
-- 98. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrai_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_512 <8 x i64> %v, i32 0
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 99. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrai_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_512 <8 x i64> %v, i32 0
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrai_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 100. PassManager<llvm::Function> : Skipping NOP
-- 101. PassManager<llvm::Function> : Skipping NOP
-- 102. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrai_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_512 <8 x i64> %v, i32 15
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 103. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrai_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_512 <8 x i64> %v, i32 15
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrai_q_512_15(<8 x i64> %v) {
#0:
  %#1 = ashr <8 x i64> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i64> %#1
}
Transformation seems to be correct!

-- 104. PassManager<llvm::Function> : Skipping NOP
-- 105. PassManager<llvm::Function> : Skipping NOP
-- 106. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrai_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_512 <8 x i64> %v, i32 64
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 107. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrai_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrai_q_512 <8 x i64> %v, i32 64
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrai_q_512_64(<8 x i64> %v) {
#0:
  %#1 = ashr <8 x i64> %v, { 63, 63, 63, 63, 63, 63, 63, 63 }
  ret <8 x i64> %#1
}
Transformation seems to be correct!

-- 108. PassManager<llvm::Function> : Skipping NOP
-- 109. PassManager<llvm::Function> : Skipping NOP
-- 110. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrli_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrli_w <8 x i16> %v, i32 0
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 111. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrli_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrli_w <8 x i16> %v, i32 0
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrli_w_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 112. PassManager<llvm::Function> : Skipping NOP
-- 113. PassManager<llvm::Function> : Skipping NOP
-- 114. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrli_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrli_w <8 x i16> %v, i32 15
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 115. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrli_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrli_w <8 x i16> %v, i32 15
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrli_w_15(<8 x i16> %v) {
#0:
  %#1 = lshr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 116. PassManager<llvm::Function> : Skipping NOP
-- 117. PassManager<llvm::Function> : Skipping NOP
-- 118. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrli_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrli_w <8 x i16> %v, i32 64
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 119. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrli_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrli_w <8 x i16> %v, i32 64
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrli_w_64(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 120. PassManager<llvm::Function> : Skipping NOP
-- 121. PassManager<llvm::Function> : Skipping NOP
-- 122. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrli_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrli_d <4 x i32> %v, i32 0
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 123. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrli_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrli_d <4 x i32> %v, i32 0
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrli_d_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 124. PassManager<llvm::Function> : Skipping NOP
-- 125. PassManager<llvm::Function> : Skipping NOP
-- 126. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrli_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrli_d <4 x i32> %v, i32 15
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 127. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrli_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrli_d <4 x i32> %v, i32 15
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrli_d_15(<4 x i32> %v) {
#0:
  %#1 = lshr <4 x i32> %v, { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 128. PassManager<llvm::Function> : Skipping NOP
-- 129. PassManager<llvm::Function> : Skipping NOP
-- 130. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrli_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrli_d <4 x i32> %v, i32 64
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 131. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrli_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrli_d <4 x i32> %v, i32 64
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrli_d_64(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 132. PassManager<llvm::Function> : Skipping NOP
-- 133. PassManager<llvm::Function> : Skipping NOP
-- 134. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrli_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrli_q <2 x i64> %v, i32 0
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 135. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrli_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrli_q <2 x i64> %v, i32 0
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psrli_q_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 136. PassManager<llvm::Function> : Skipping NOP
-- 137. PassManager<llvm::Function> : Skipping NOP
-- 138. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrli_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrli_q <2 x i64> %v, i32 15
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 139. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrli_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrli_q <2 x i64> %v, i32 15
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psrli_q_15(<2 x i64> %v) {
#0:
  %#1 = lshr <2 x i64> %v, { 15, 15 }
  ret <2 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 140. PassManager<llvm::Function> : Skipping NOP
-- 141. PassManager<llvm::Function> : Skipping NOP
-- 142. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrli_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrli_q <2 x i64> %v, i32 64
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 143. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrli_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrli_q <2 x i64> %v, i32 64
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psrli_q_64(<2 x i64> %v) {
#0:
  ret <2 x i64> { 0, 0 }
}
Transformation seems to be correct!

-- 144. PassManager<llvm::Function> : Skipping NOP
-- 145. PassManager<llvm::Function> : Skipping NOP
-- 146. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrli_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrli_w <16 x i16> %v, i32 0
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 147. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrli_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrli_w <16 x i16> %v, i32 0
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrli_w_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 148. PassManager<llvm::Function> : Skipping NOP
-- 149. PassManager<llvm::Function> : Skipping NOP
-- 150. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrli_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrli_w <16 x i16> %v, i32 15
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 151. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrli_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrli_w <16 x i16> %v, i32 15
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrli_w_15(<16 x i16> %v) {
#0:
  %#1 = lshr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 152. PassManager<llvm::Function> : Skipping NOP
-- 153. PassManager<llvm::Function> : Skipping NOP
-- 154. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrli_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrli_w <16 x i16> %v, i32 64
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 155. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrli_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrli_w <16 x i16> %v, i32 64
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrli_w_64(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 156. PassManager<llvm::Function> : Skipping NOP
-- 157. PassManager<llvm::Function> : Skipping NOP
-- 158. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrli_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrli_d <8 x i32> %v, i32 0
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 159. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrli_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrli_d <8 x i32> %v, i32 0
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrli_d_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 160. PassManager<llvm::Function> : Skipping NOP
-- 161. PassManager<llvm::Function> : Skipping NOP
-- 162. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrli_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrli_d <8 x i32> %v, i32 15
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 163. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrli_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrli_d <8 x i32> %v, i32 15
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrli_d_15(<8 x i32> %v) {
#0:
  %#1 = lshr <8 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 164. PassManager<llvm::Function> : Skipping NOP
-- 165. PassManager<llvm::Function> : Skipping NOP
-- 166. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrli_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrli_d <8 x i32> %v, i32 64
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 167. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrli_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrli_d <8 x i32> %v, i32 64
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrli_d_64(<8 x i32> %v) {
#0:
  ret <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 168. PassManager<llvm::Function> : Skipping NOP
-- 169. PassManager<llvm::Function> : Skipping NOP
-- 170. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrli_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrli_q <4 x i64> %v, i32 0
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 171. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrli_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrli_q <4 x i64> %v, i32 0
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrli_q_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 172. PassManager<llvm::Function> : Skipping NOP
-- 173. PassManager<llvm::Function> : Skipping NOP
-- 174. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrli_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrli_q <4 x i64> %v, i32 15
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 175. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrli_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrli_q <4 x i64> %v, i32 15
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrli_q_15(<4 x i64> %v) {
#0:
  %#1 = lshr <4 x i64> %v, { 15, 15, 15, 15 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 176. PassManager<llvm::Function> : Skipping NOP
-- 177. PassManager<llvm::Function> : Skipping NOP
-- 178. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrli_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrli_q <4 x i64> %v, i32 64
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 179. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrli_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrli_q <4 x i64> %v, i32 64
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrli_q_64(<4 x i64> %v) {
#0:
  ret <4 x i64> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 180. PassManager<llvm::Function> : Skipping NOP
-- 181. PassManager<llvm::Function> : Skipping NOP
-- 182. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrli_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrli_w_512 <32 x i16> %v, i32 0
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 183. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrli_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrli_w_512 <32 x i16> %v, i32 0
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrli_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 184. PassManager<llvm::Function> : Skipping NOP
-- 185. PassManager<llvm::Function> : Skipping NOP
-- 186. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrli_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrli_w_512 <32 x i16> %v, i32 15
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 187. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrli_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrli_w_512 <32 x i16> %v, i32 15
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrli_w_512_15(<32 x i16> %v) {
#0:
  %#1 = lshr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 188. PassManager<llvm::Function> : Skipping NOP
-- 189. PassManager<llvm::Function> : Skipping NOP
-- 190. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrli_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrli_w_512 <32 x i16> %v, i32 64
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 191. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrli_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrli_w_512 <32 x i16> %v, i32 64
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrli_w_512_64(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 192. PassManager<llvm::Function> : Skipping NOP
-- 193. PassManager<llvm::Function> : Skipping NOP
-- 194. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrli_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrli_d_512 <16 x i32> %v, i32 0
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 195. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrli_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrli_d_512 <16 x i32> %v, i32 0
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrli_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 196. PassManager<llvm::Function> : Skipping NOP
-- 197. PassManager<llvm::Function> : Skipping NOP
-- 198. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrli_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrli_d_512 <16 x i32> %v, i32 15
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 199. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrli_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrli_d_512 <16 x i32> %v, i32 15
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrli_d_512_15(<16 x i32> %v) {
#0:
  %#1 = lshr <16 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 200. PassManager<llvm::Function> : Skipping NOP
-- 201. PassManager<llvm::Function> : Skipping NOP
-- 202. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrli_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrli_d_512 <16 x i32> %v, i32 64
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 203. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrli_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrli_d_512 <16 x i32> %v, i32 64
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrli_d_512_64(<16 x i32> %v) {
#0:
  ret <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 204. PassManager<llvm::Function> : Skipping NOP
-- 205. PassManager<llvm::Function> : Skipping NOP
-- 206. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrli_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrli_q_512 <8 x i64> %v, i32 0
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 207. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrli_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrli_q_512 <8 x i64> %v, i32 0
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrli_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 208. PassManager<llvm::Function> : Skipping NOP
-- 209. PassManager<llvm::Function> : Skipping NOP
-- 210. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrli_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrli_q_512 <8 x i64> %v, i32 15
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 211. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrli_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrli_q_512 <8 x i64> %v, i32 15
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrli_q_512_15(<8 x i64> %v) {
#0:
  %#1 = lshr <8 x i64> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 212. PassManager<llvm::Function> : Skipping NOP
-- 213. PassManager<llvm::Function> : Skipping NOP
-- 214. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrli_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrli_q_512 <8 x i64> %v, i32 64
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 215. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrli_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrli_q_512 <8 x i64> %v, i32 64
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrli_q_512_64(<8 x i64> %v) {
#0:
  ret <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 216. PassManager<llvm::Function> : Skipping NOP
-- 217. PassManager<llvm::Function> : Skipping NOP
-- 218. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_pslli_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_pslli_w <8 x i16> %v, i32 0
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 219. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_pslli_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_pslli_w <8 x i16> %v, i32 0
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_pslli_w_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 220. PassManager<llvm::Function> : Skipping NOP
-- 221. PassManager<llvm::Function> : Skipping NOP
-- 222. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_pslli_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_pslli_w <8 x i16> %v, i32 15
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 223. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_pslli_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_pslli_w <8 x i16> %v, i32 15
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_pslli_w_15(<8 x i16> %v) {
#0:
  %#1 = shl <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 224. PassManager<llvm::Function> : Skipping NOP
-- 225. PassManager<llvm::Function> : Skipping NOP
-- 226. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_pslli_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_pslli_w <8 x i16> %v, i32 64
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 227. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_pslli_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_pslli_w <8 x i16> %v, i32 64
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_pslli_w_64(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 228. PassManager<llvm::Function> : Skipping NOP
-- 229. PassManager<llvm::Function> : Skipping NOP
-- 230. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_pslli_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_pslli_d <4 x i32> %v, i32 0
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 231. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_pslli_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_pslli_d <4 x i32> %v, i32 0
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_pslli_d_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 232. PassManager<llvm::Function> : Skipping NOP
-- 233. PassManager<llvm::Function> : Skipping NOP
-- 234. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_pslli_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_pslli_d <4 x i32> %v, i32 15
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 235. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_pslli_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_pslli_d <4 x i32> %v, i32 15
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_pslli_d_15(<4 x i32> %v) {
#0:
  %#1 = shl <4 x i32> %v, { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 236. PassManager<llvm::Function> : Skipping NOP
-- 237. PassManager<llvm::Function> : Skipping NOP
-- 238. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_pslli_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_pslli_d <4 x i32> %v, i32 64
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 239. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_pslli_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_pslli_d <4 x i32> %v, i32 64
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_pslli_d_64(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 240. PassManager<llvm::Function> : Skipping NOP
-- 241. PassManager<llvm::Function> : Skipping NOP
-- 242. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_pslli_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_pslli_q <2 x i64> %v, i32 0
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 243. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_pslli_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_pslli_q <2 x i64> %v, i32 0
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_pslli_q_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 244. PassManager<llvm::Function> : Skipping NOP
-- 245. PassManager<llvm::Function> : Skipping NOP
-- 246. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_pslli_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_pslli_q <2 x i64> %v, i32 15
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 247. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_pslli_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_pslli_q <2 x i64> %v, i32 15
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_pslli_q_15(<2 x i64> %v) {
#0:
  %#1 = shl <2 x i64> %v, { 15, 15 }
  ret <2 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 248. PassManager<llvm::Function> : Skipping NOP
-- 249. PassManager<llvm::Function> : Skipping NOP
-- 250. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_pslli_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_pslli_q <2 x i64> %v, i32 64
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 251. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_pslli_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_pslli_q <2 x i64> %v, i32 64
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_pslli_q_64(<2 x i64> %v) {
#0:
  ret <2 x i64> { 0, 0 }
}
Transformation seems to be correct!

-- 252. PassManager<llvm::Function> : Skipping NOP
-- 253. PassManager<llvm::Function> : Skipping NOP
-- 254. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_pslli_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_pslli_w <16 x i16> %v, i32 0
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 255. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_pslli_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_pslli_w <16 x i16> %v, i32 0
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_pslli_w_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 256. PassManager<llvm::Function> : Skipping NOP
-- 257. PassManager<llvm::Function> : Skipping NOP
-- 258. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_pslli_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_pslli_w <16 x i16> %v, i32 15
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 259. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_pslli_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_pslli_w <16 x i16> %v, i32 15
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_pslli_w_15(<16 x i16> %v) {
#0:
  %#1 = shl <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 260. PassManager<llvm::Function> : Skipping NOP
-- 261. PassManager<llvm::Function> : Skipping NOP
-- 262. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_pslli_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_pslli_w <16 x i16> %v, i32 64
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 263. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_pslli_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_pslli_w <16 x i16> %v, i32 64
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_pslli_w_64(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 264. PassManager<llvm::Function> : Skipping NOP
-- 265. PassManager<llvm::Function> : Skipping NOP
-- 266. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_pslli_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_pslli_d <8 x i32> %v, i32 0
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 267. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_pslli_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_pslli_d <8 x i32> %v, i32 0
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_pslli_d_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 268. PassManager<llvm::Function> : Skipping NOP
-- 269. PassManager<llvm::Function> : Skipping NOP
-- 270. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_pslli_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_pslli_d <8 x i32> %v, i32 15
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 271. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_pslli_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_pslli_d <8 x i32> %v, i32 15
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_pslli_d_15(<8 x i32> %v) {
#0:
  %#1 = shl <8 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 272. PassManager<llvm::Function> : Skipping NOP
-- 273. PassManager<llvm::Function> : Skipping NOP
-- 274. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_pslli_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_pslli_d <8 x i32> %v, i32 64
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 275. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_pslli_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_pslli_d <8 x i32> %v, i32 64
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_pslli_d_64(<8 x i32> %v) {
#0:
  ret <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 276. PassManager<llvm::Function> : Skipping NOP
-- 277. PassManager<llvm::Function> : Skipping NOP
-- 278. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_pslli_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_pslli_q <4 x i64> %v, i32 0
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 279. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_pslli_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_pslli_q <4 x i64> %v, i32 0
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_pslli_q_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 280. PassManager<llvm::Function> : Skipping NOP
-- 281. PassManager<llvm::Function> : Skipping NOP
-- 282. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_pslli_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_pslli_q <4 x i64> %v, i32 15
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 283. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_pslli_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_pslli_q <4 x i64> %v, i32 15
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_pslli_q_15(<4 x i64> %v) {
#0:
  %#1 = shl <4 x i64> %v, { 15, 15, 15, 15 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 284. PassManager<llvm::Function> : Skipping NOP
-- 285. PassManager<llvm::Function> : Skipping NOP
-- 286. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_pslli_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_pslli_q <4 x i64> %v, i32 64
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 287. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_pslli_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_pslli_q <4 x i64> %v, i32 64
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_pslli_q_64(<4 x i64> %v) {
#0:
  ret <4 x i64> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 288. PassManager<llvm::Function> : Skipping NOP
-- 289. PassManager<llvm::Function> : Skipping NOP
-- 290. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_pslli_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_pslli_w_512 <32 x i16> %v, i32 0
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 291. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_pslli_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_pslli_w_512 <32 x i16> %v, i32 0
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_pslli_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 292. PassManager<llvm::Function> : Skipping NOP
-- 293. PassManager<llvm::Function> : Skipping NOP
-- 294. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_pslli_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_pslli_w_512 <32 x i16> %v, i32 15
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 295. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_pslli_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_pslli_w_512 <32 x i16> %v, i32 15
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_pslli_w_512_15(<32 x i16> %v) {
#0:
  %#1 = shl <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 296. PassManager<llvm::Function> : Skipping NOP
-- 297. PassManager<llvm::Function> : Skipping NOP
-- 298. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_pslli_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_pslli_w_512 <32 x i16> %v, i32 64
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 299. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_pslli_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_pslli_w_512 <32 x i16> %v, i32 64
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_pslli_w_512_64(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 300. PassManager<llvm::Function> : Skipping NOP
-- 301. PassManager<llvm::Function> : Skipping NOP
-- 302. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_pslli_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_pslli_d_512 <16 x i32> %v, i32 0
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 303. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_pslli_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_pslli_d_512 <16 x i32> %v, i32 0
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_pslli_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 304. PassManager<llvm::Function> : Skipping NOP
-- 305. PassManager<llvm::Function> : Skipping NOP
-- 306. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_pslli_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_pslli_d_512 <16 x i32> %v, i32 15
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 307. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_pslli_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_pslli_d_512 <16 x i32> %v, i32 15
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_pslli_d_512_15(<16 x i32> %v) {
#0:
  %#1 = shl <16 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 308. PassManager<llvm::Function> : Skipping NOP
-- 309. PassManager<llvm::Function> : Skipping NOP
-- 310. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_pslli_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_pslli_d_512 <16 x i32> %v, i32 64
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 311. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_pslli_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_pslli_d_512 <16 x i32> %v, i32 64
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_pslli_d_512_64(<16 x i32> %v) {
#0:
  ret <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 312. PassManager<llvm::Function> : Skipping NOP
-- 313. PassManager<llvm::Function> : Skipping NOP
-- 314. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_pslli_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_pslli_q_512 <8 x i64> %v, i32 0
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 315. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_pslli_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_pslli_q_512 <8 x i64> %v, i32 0
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_pslli_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 316. PassManager<llvm::Function> : Skipping NOP
-- 317. PassManager<llvm::Function> : Skipping NOP
-- 318. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_pslli_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_pslli_q_512 <8 x i64> %v, i32 15
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 319. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_pslli_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_pslli_q_512 <8 x i64> %v, i32 15
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_pslli_q_512_15(<8 x i64> %v) {
#0:
  %#1 = shl <8 x i64> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 320. PassManager<llvm::Function> : Skipping NOP
-- 321. PassManager<llvm::Function> : Skipping NOP
-- 322. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_pslli_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_pslli_q_512 <8 x i64> %v, i32 64
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 323. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_pslli_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_pslli_q_512 <8 x i64> %v, i32 64
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_pslli_q_512_64(<8 x i64> %v) {
#0:
  ret <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 324. PassManager<llvm::Function> : Skipping NOP
-- 325. PassManager<llvm::Function> : Skipping NOP
-- 326. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 327. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psra_w_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 328. PassManager<llvm::Function> : Skipping NOP
-- 329. PassManager<llvm::Function> : Skipping NOP
-- 330. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 331. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psra_w_15(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 332. PassManager<llvm::Function> : Skipping NOP
-- 333. PassManager<llvm::Function> : Skipping NOP
-- 334. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_15_splat(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 335. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_15_splat(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psra_w_15_splat(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 336. PassManager<llvm::Function> : Skipping NOP
-- 337. PassManager<llvm::Function> : Skipping NOP
-- 338. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 339. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psra_w_64(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 340. PassManager<llvm::Function> : Skipping NOP
-- 341. PassManager<llvm::Function> : Skipping NOP
-- 342. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 343. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psra_d_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 344. PassManager<llvm::Function> : Skipping NOP
-- 345. PassManager<llvm::Function> : Skipping NOP
-- 346. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 347. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psra_d_15(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 348. PassManager<llvm::Function> : Skipping NOP
-- 349. PassManager<llvm::Function> : Skipping NOP
-- 350. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_15_splat(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 351. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_15_splat(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psra_d_15_splat(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { 31, 31, 31, 31 }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 352. PassManager<llvm::Function> : Skipping NOP
-- 353. PassManager<llvm::Function> : Skipping NOP
-- 354. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 355. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psra_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psra_d <4 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psra_d_64(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { 31, 31, 31, 31 }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 356. PassManager<llvm::Function> : Skipping NOP
-- 357. PassManager<llvm::Function> : Skipping NOP
-- 358. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 359. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psra_w_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 360. PassManager<llvm::Function> : Skipping NOP
-- 361. PassManager<llvm::Function> : Skipping NOP
-- 362. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 363. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psra_w_15(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 364. PassManager<llvm::Function> : Skipping NOP
-- 365. PassManager<llvm::Function> : Skipping NOP
-- 366. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_15_splat(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 367. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_15_splat(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psra_w_15_splat(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 368. PassManager<llvm::Function> : Skipping NOP
-- 369. PassManager<llvm::Function> : Skipping NOP
-- 370. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 371. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psra_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psra_w <16 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psra_w_64(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 372. PassManager<llvm::Function> : Skipping NOP
-- 373. PassManager<llvm::Function> : Skipping NOP
-- 374. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 375. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psra_d_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 376. PassManager<llvm::Function> : Skipping NOP
-- 377. PassManager<llvm::Function> : Skipping NOP
-- 378. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 379. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psra_d_15(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 380. PassManager<llvm::Function> : Skipping NOP
-- 381. PassManager<llvm::Function> : Skipping NOP
-- 382. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_15_splat(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 383. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_15_splat(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psra_d_15_splat(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { 31, 31, 31, 31, 31, 31, 31, 31 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 384. PassManager<llvm::Function> : Skipping NOP
-- 385. PassManager<llvm::Function> : Skipping NOP
-- 386. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 387. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psra_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psra_d <8 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psra_d_64(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { 31, 31, 31, 31, 31, 31, 31, 31 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 388. PassManager<llvm::Function> : Skipping NOP
-- 389. PassManager<llvm::Function> : Skipping NOP
-- 390. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psra_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_128 <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 391. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psra_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_128 <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psra_q_128_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 392. PassManager<llvm::Function> : Skipping NOP
-- 393. PassManager<llvm::Function> : Skipping NOP
-- 394. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psra_q_128_15(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_128 <2 x i64> %v, <2 x i64> { 15, 9999 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 395. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psra_q_128_15(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_128 <2 x i64> %v, <2 x i64> { 15, 9999 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psra_q_128_15(<2 x i64> %v) {
#0:
  %#1 = ashr <2 x i64> %v, { 15, 15 }
  ret <2 x i64> %#1
}
Transformation seems to be correct!

-- 396. PassManager<llvm::Function> : Skipping NOP
-- 397. PassManager<llvm::Function> : Skipping NOP
-- 398. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psra_q_128_64(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_128 <2 x i64> %v, <2 x i64> { 64, 9999 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 399. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psra_q_128_64(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_128 <2 x i64> %v, <2 x i64> { 64, 9999 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psra_q_128_64(<2 x i64> %v) {
#0:
  %#1 = ashr <2 x i64> %v, { 63, 63 }
  ret <2 x i64> %#1
}
Transformation seems to be correct!

-- 400. PassManager<llvm::Function> : Skipping NOP
-- 401. PassManager<llvm::Function> : Skipping NOP
-- 402. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psra_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_256 <4 x i64> %v, <2 x i64> { 0, 0 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 403. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psra_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_256 <4 x i64> %v, <2 x i64> { 0, 0 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psra_q_256_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 404. PassManager<llvm::Function> : Skipping NOP
-- 405. PassManager<llvm::Function> : Skipping NOP
-- 406. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psra_q_256_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_256 <4 x i64> %v, <2 x i64> { 15, 9999 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 407. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psra_q_256_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_256 <4 x i64> %v, <2 x i64> { 15, 9999 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psra_q_256_15(<4 x i64> %v) {
#0:
  %#1 = ashr <4 x i64> %v, { 15, 15, 15, 15 }
  ret <4 x i64> %#1
}
Transformation seems to be correct!

-- 408. PassManager<llvm::Function> : Skipping NOP
-- 409. PassManager<llvm::Function> : Skipping NOP
-- 410. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psra_q_256_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_256 <4 x i64> %v, <2 x i64> { 64, 9999 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 411. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psra_q_256_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_256 <4 x i64> %v, <2 x i64> { 64, 9999 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psra_q_256_64(<4 x i64> %v) {
#0:
  %#1 = ashr <4 x i64> %v, { 63, 63, 63, 63 }
  ret <4 x i64> %#1
}
Transformation seems to be correct!

-- 412. PassManager<llvm::Function> : Skipping NOP
-- 413. PassManager<llvm::Function> : Skipping NOP
-- 414. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 415. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psra_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 416. PassManager<llvm::Function> : Skipping NOP
-- 417. PassManager<llvm::Function> : Skipping NOP
-- 418. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 419. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psra_w_512_15(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 420. PassManager<llvm::Function> : Skipping NOP
-- 421. PassManager<llvm::Function> : Skipping NOP
-- 422. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_15_splat(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 423. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_15_splat(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psra_w_512_15_splat(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 424. PassManager<llvm::Function> : Skipping NOP
-- 425. PassManager<llvm::Function> : Skipping NOP
-- 426. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 427. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psra_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psra_w_512 <32 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psra_w_512_64(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 428. PassManager<llvm::Function> : Skipping NOP
-- 429. PassManager<llvm::Function> : Skipping NOP
-- 430. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 431. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psra_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 432. PassManager<llvm::Function> : Skipping NOP
-- 433. PassManager<llvm::Function> : Skipping NOP
-- 434. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 435. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psra_d_512_15(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 436. PassManager<llvm::Function> : Skipping NOP
-- 437. PassManager<llvm::Function> : Skipping NOP
-- 438. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_15_splat(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 439. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_15_splat(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psra_d_512_15_splat(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 440. PassManager<llvm::Function> : Skipping NOP
-- 441. PassManager<llvm::Function> : Skipping NOP
-- 442. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 443. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psra_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psra_d_512 <16 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psra_d_512_64(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 444. PassManager<llvm::Function> : Skipping NOP
-- 445. PassManager<llvm::Function> : Skipping NOP
-- 446. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psra_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_512 <8 x i64> %v, <2 x i64> { 0, 0 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 447. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psra_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_512 <8 x i64> %v, <2 x i64> { 0, 0 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psra_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 448. PassManager<llvm::Function> : Skipping NOP
-- 449. PassManager<llvm::Function> : Skipping NOP
-- 450. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psra_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_512 <8 x i64> %v, <2 x i64> { 15, 9999 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 451. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psra_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_512 <8 x i64> %v, <2 x i64> { 15, 9999 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psra_q_512_15(<8 x i64> %v) {
#0:
  %#1 = ashr <8 x i64> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i64> %#1
}
Transformation seems to be correct!

-- 452. PassManager<llvm::Function> : Skipping NOP
-- 453. PassManager<llvm::Function> : Skipping NOP
-- 454. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psra_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_512 <8 x i64> %v, <2 x i64> { 64, 9999 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 455. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psra_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psra_q_512 <8 x i64> %v, <2 x i64> { 64, 9999 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psra_q_512_64(<8 x i64> %v) {
#0:
  %#1 = ashr <8 x i64> %v, { 63, 63, 63, 63, 63, 63, 63, 63 }
  ret <8 x i64> %#1
}
Transformation seems to be correct!

-- 456. PassManager<llvm::Function> : Skipping NOP
-- 457. PassManager<llvm::Function> : Skipping NOP
-- 458. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 459. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrl_w_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 460. PassManager<llvm::Function> : Skipping NOP
-- 461. PassManager<llvm::Function> : Skipping NOP
-- 462. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 463. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrl_w_15(<8 x i16> %v) {
#0:
  %#1 = lshr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 464. PassManager<llvm::Function> : Skipping NOP
-- 465. PassManager<llvm::Function> : Skipping NOP
-- 466. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_15_splat(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 467. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_15_splat(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrl_w_15_splat(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 468. PassManager<llvm::Function> : Skipping NOP
-- 469. PassManager<llvm::Function> : Skipping NOP
-- 470. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 471. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psrl_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psrl_w <8 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psrl_w_64(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 472. PassManager<llvm::Function> : Skipping NOP
-- 473. PassManager<llvm::Function> : Skipping NOP
-- 474. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 475. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrl_d_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 476. PassManager<llvm::Function> : Skipping NOP
-- 477. PassManager<llvm::Function> : Skipping NOP
-- 478. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 479. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrl_d_15(<4 x i32> %v) {
#0:
  %#1 = lshr <4 x i32> %v, { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 480. PassManager<llvm::Function> : Skipping NOP
-- 481. PassManager<llvm::Function> : Skipping NOP
-- 482. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_15_splat(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 483. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_15_splat(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrl_d_15_splat(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 484. PassManager<llvm::Function> : Skipping NOP
-- 485. PassManager<llvm::Function> : Skipping NOP
-- 486. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 487. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psrl_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psrl_d <4 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psrl_d_64(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 488. PassManager<llvm::Function> : Skipping NOP
-- 489. PassManager<llvm::Function> : Skipping NOP
-- 490. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrl_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrl_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 491. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrl_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrl_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psrl_q_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 492. PassManager<llvm::Function> : Skipping NOP
-- 493. PassManager<llvm::Function> : Skipping NOP
-- 494. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrl_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrl_q <2 x i64> %v, <2 x i64> { 15, 9999 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 495. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrl_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrl_q <2 x i64> %v, <2 x i64> { 15, 9999 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psrl_q_15(<2 x i64> %v) {
#0:
  %#1 = lshr <2 x i64> %v, { 15, 15 }
  ret <2 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 496. PassManager<llvm::Function> : Skipping NOP
-- 497. PassManager<llvm::Function> : Skipping NOP
-- 498. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrl_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrl_q <2 x i64> %v, <2 x i64> { 64, 9999 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 499. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psrl_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psrl_q <2 x i64> %v, <2 x i64> { 64, 9999 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psrl_q_64(<2 x i64> %v) {
#0:
  ret <2 x i64> { 0, 0 }
}
Transformation seems to be correct!

-- 500. PassManager<llvm::Function> : Skipping NOP
-- 501. PassManager<llvm::Function> : Skipping NOP
-- 502. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 503. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrl_w_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 504. PassManager<llvm::Function> : Skipping NOP
-- 505. PassManager<llvm::Function> : Skipping NOP
-- 506. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 507. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrl_w_15(<16 x i16> %v) {
#0:
  %#1 = lshr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 508. PassManager<llvm::Function> : Skipping NOP
-- 509. PassManager<llvm::Function> : Skipping NOP
-- 510. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_15_splat(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 511. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_15_splat(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrl_w_15_splat(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 512. PassManager<llvm::Function> : Skipping NOP
-- 513. PassManager<llvm::Function> : Skipping NOP
-- 514. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 515. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psrl_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psrl_w <16 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psrl_w_64(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 516. PassManager<llvm::Function> : Skipping NOP
-- 517. PassManager<llvm::Function> : Skipping NOP
-- 518. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 519. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrl_d_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 520. PassManager<llvm::Function> : Skipping NOP
-- 521. PassManager<llvm::Function> : Skipping NOP
-- 522. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 523. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrl_d_15(<8 x i32> %v) {
#0:
  %#1 = lshr <8 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 524. PassManager<llvm::Function> : Skipping NOP
-- 525. PassManager<llvm::Function> : Skipping NOP
-- 526. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_15_splat(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 527. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_15_splat(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrl_d_15_splat(<8 x i32> %v) {
#0:
  ret <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 528. PassManager<llvm::Function> : Skipping NOP
-- 529. PassManager<llvm::Function> : Skipping NOP
-- 530. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 531. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrl_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrl_d <8 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrl_d_64(<8 x i32> %v) {
#0:
  ret <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 532. PassManager<llvm::Function> : Skipping NOP
-- 533. PassManager<llvm::Function> : Skipping NOP
-- 534. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrl_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrl_q <4 x i64> %v, <2 x i64> { 0, 0 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 535. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrl_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrl_q <4 x i64> %v, <2 x i64> { 0, 0 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrl_q_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 536. PassManager<llvm::Function> : Skipping NOP
-- 537. PassManager<llvm::Function> : Skipping NOP
-- 538. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrl_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrl_q <4 x i64> %v, <2 x i64> { 15, 9999 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 539. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrl_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrl_q <4 x i64> %v, <2 x i64> { 15, 9999 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrl_q_15(<4 x i64> %v) {
#0:
  %#1 = lshr <4 x i64> %v, { 15, 15, 15, 15 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 540. PassManager<llvm::Function> : Skipping NOP
-- 541. PassManager<llvm::Function> : Skipping NOP
-- 542. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrl_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrl_q <4 x i64> %v, <2 x i64> { 64, 9999 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 543. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrl_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrl_q <4 x i64> %v, <2 x i64> { 64, 9999 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrl_q_64(<4 x i64> %v) {
#0:
  ret <4 x i64> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 544. PassManager<llvm::Function> : Skipping NOP
-- 545. PassManager<llvm::Function> : Skipping NOP
-- 546. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 547. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrl_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 548. PassManager<llvm::Function> : Skipping NOP
-- 549. PassManager<llvm::Function> : Skipping NOP
-- 550. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 551. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrl_w_512_15(<32 x i16> %v) {
#0:
  %#1 = lshr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 552. PassManager<llvm::Function> : Skipping NOP
-- 553. PassManager<llvm::Function> : Skipping NOP
-- 554. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_15_splat(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 555. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_15_splat(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrl_w_512_15_splat(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 556. PassManager<llvm::Function> : Skipping NOP
-- 557. PassManager<llvm::Function> : Skipping NOP
-- 558. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 559. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrl_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrl_w_512 <32 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrl_w_512_64(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 560. PassManager<llvm::Function> : Skipping NOP
-- 561. PassManager<llvm::Function> : Skipping NOP
-- 562. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 563. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrl_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 564. PassManager<llvm::Function> : Skipping NOP
-- 565. PassManager<llvm::Function> : Skipping NOP
-- 566. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 567. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrl_d_512_15(<16 x i32> %v) {
#0:
  %#1 = lshr <16 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 568. PassManager<llvm::Function> : Skipping NOP
-- 569. PassManager<llvm::Function> : Skipping NOP
-- 570. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_15_splat(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 571. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_15_splat(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrl_d_512_15_splat(<16 x i32> %v) {
#0:
  ret <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 572. PassManager<llvm::Function> : Skipping NOP
-- 573. PassManager<llvm::Function> : Skipping NOP
-- 574. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 575. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrl_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrl_d_512 <16 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrl_d_512_64(<16 x i32> %v) {
#0:
  ret <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 576. PassManager<llvm::Function> : Skipping NOP
-- 577. PassManager<llvm::Function> : Skipping NOP
-- 578. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrl_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrl_q_512 <8 x i64> %v, <2 x i64> { 0, 0 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 579. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrl_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrl_q_512 <8 x i64> %v, <2 x i64> { 0, 0 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrl_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 580. PassManager<llvm::Function> : Skipping NOP
-- 581. PassManager<llvm::Function> : Skipping NOP
-- 582. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrl_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrl_q_512 <8 x i64> %v, <2 x i64> { 15, 9999 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 583. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrl_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrl_q_512 <8 x i64> %v, <2 x i64> { 15, 9999 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrl_q_512_15(<8 x i64> %v) {
#0:
  %#1 = lshr <8 x i64> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 584. PassManager<llvm::Function> : Skipping NOP
-- 585. PassManager<llvm::Function> : Skipping NOP
-- 586. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrl_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrl_q_512 <8 x i64> %v, <2 x i64> { 64, 9999 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 587. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrl_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrl_q_512 <8 x i64> %v, <2 x i64> { 64, 9999 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrl_q_512_64(<8 x i64> %v) {
#0:
  ret <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 588. PassManager<llvm::Function> : Skipping NOP
-- 589. PassManager<llvm::Function> : Skipping NOP
-- 590. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 591. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_0(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psll_w_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 592. PassManager<llvm::Function> : Skipping NOP
-- 593. PassManager<llvm::Function> : Skipping NOP
-- 594. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 595. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_15(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psll_w_15(<8 x i16> %v) {
#0:
  %#1 = shl <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 596. PassManager<llvm::Function> : Skipping NOP
-- 597. PassManager<llvm::Function> : Skipping NOP
-- 598. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_15_splat(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 599. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_15_splat(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psll_w_15_splat(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 600. PassManager<llvm::Function> : Skipping NOP
-- 601. PassManager<llvm::Function> : Skipping NOP
-- 602. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 603. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psll_w_64(<8 x i16> %v) {
#0:
  %#1 = x86_sse2_psll_w <8 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @sse2_psll_w_64(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 604. PassManager<llvm::Function> : Skipping NOP
-- 605. PassManager<llvm::Function> : Skipping NOP
-- 606. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 607. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_0(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psll_d_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 608. PassManager<llvm::Function> : Skipping NOP
-- 609. PassManager<llvm::Function> : Skipping NOP
-- 610. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 611. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_15(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psll_d_15(<4 x i32> %v) {
#0:
  %#1 = shl <4 x i32> %v, { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 612. PassManager<llvm::Function> : Skipping NOP
-- 613. PassManager<llvm::Function> : Skipping NOP
-- 614. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_15_splat(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 615. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_15_splat(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psll_d_15_splat(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 616. PassManager<llvm::Function> : Skipping NOP
-- 617. PassManager<llvm::Function> : Skipping NOP
-- 618. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 619. InstCombinePass

----------------------------------------
define <4 x i32> @sse2_psll_d_64(<4 x i32> %v) {
#0:
  %#1 = x86_sse2_psll_d <4 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @sse2_psll_d_64(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 620. PassManager<llvm::Function> : Skipping NOP
-- 621. PassManager<llvm::Function> : Skipping NOP
-- 622. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psll_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psll_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 623. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psll_q_0(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psll_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psll_q_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 624. PassManager<llvm::Function> : Skipping NOP
-- 625. PassManager<llvm::Function> : Skipping NOP
-- 626. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psll_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psll_q <2 x i64> %v, <2 x i64> { 15, 9999 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 627. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psll_q_15(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psll_q <2 x i64> %v, <2 x i64> { 15, 9999 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psll_q_15(<2 x i64> %v) {
#0:
  %#1 = shl <2 x i64> %v, { 15, 15 }
  ret <2 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 628. PassManager<llvm::Function> : Skipping NOP
-- 629. PassManager<llvm::Function> : Skipping NOP
-- 630. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psll_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psll_q <2 x i64> %v, <2 x i64> { 64, 9999 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 631. InstCombinePass

----------------------------------------
define <2 x i64> @sse2_psll_q_64(<2 x i64> %v) {
#0:
  %#1 = x86_sse2_psll_q <2 x i64> %v, <2 x i64> { 64, 9999 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @sse2_psll_q_64(<2 x i64> %v) {
#0:
  ret <2 x i64> { 0, 0 }
}
Transformation seems to be correct!

-- 632. PassManager<llvm::Function> : Skipping NOP
-- 633. PassManager<llvm::Function> : Skipping NOP
-- 634. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 635. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psll_w_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 636. PassManager<llvm::Function> : Skipping NOP
-- 637. PassManager<llvm::Function> : Skipping NOP
-- 638. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 639. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_15(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psll_w_15(<16 x i16> %v) {
#0:
  %#1 = shl <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 640. PassManager<llvm::Function> : Skipping NOP
-- 641. PassManager<llvm::Function> : Skipping NOP
-- 642. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_15_splat(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 643. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_15_splat(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psll_w_15_splat(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 644. PassManager<llvm::Function> : Skipping NOP
-- 645. PassManager<llvm::Function> : Skipping NOP
-- 646. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 647. InstCombinePass

----------------------------------------
define <16 x i16> @avx2_psll_w_64(<16 x i16> %v) {
#0:
  %#1 = x86_avx2_psll_w <16 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx2_psll_w_64(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 648. PassManager<llvm::Function> : Skipping NOP
-- 649. PassManager<llvm::Function> : Skipping NOP
-- 650. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 651. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psll_d_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 652. PassManager<llvm::Function> : Skipping NOP
-- 653. PassManager<llvm::Function> : Skipping NOP
-- 654. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 655. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_15(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psll_d_15(<8 x i32> %v) {
#0:
  %#1 = shl <8 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 656. PassManager<llvm::Function> : Skipping NOP
-- 657. PassManager<llvm::Function> : Skipping NOP
-- 658. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_15_splat(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 659. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_15_splat(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psll_d_15_splat(<8 x i32> %v) {
#0:
  ret <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 660. PassManager<llvm::Function> : Skipping NOP
-- 661. PassManager<llvm::Function> : Skipping NOP
-- 662. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 663. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psll_d_64(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psll_d <8 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psll_d_64(<8 x i32> %v) {
#0:
  ret <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 664. PassManager<llvm::Function> : Skipping NOP
-- 665. PassManager<llvm::Function> : Skipping NOP
-- 666. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psll_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psll_q <4 x i64> %v, <2 x i64> { 0, 0 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 667. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psll_q_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psll_q <4 x i64> %v, <2 x i64> { 0, 0 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psll_q_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 668. PassManager<llvm::Function> : Skipping NOP
-- 669. PassManager<llvm::Function> : Skipping NOP
-- 670. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psll_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psll_q <4 x i64> %v, <2 x i64> { 15, 9999 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 671. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psll_q_15(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psll_q <4 x i64> %v, <2 x i64> { 15, 9999 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psll_q_15(<4 x i64> %v) {
#0:
  %#1 = shl <4 x i64> %v, { 15, 15, 15, 15 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 672. PassManager<llvm::Function> : Skipping NOP
-- 673. PassManager<llvm::Function> : Skipping NOP
-- 674. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psll_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psll_q <4 x i64> %v, <2 x i64> { 64, 9999 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 675. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psll_q_64(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psll_q <4 x i64> %v, <2 x i64> { 64, 9999 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psll_q_64(<4 x i64> %v) {
#0:
  ret <4 x i64> { 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 676. PassManager<llvm::Function> : Skipping NOP
-- 677. PassManager<llvm::Function> : Skipping NOP
-- 678. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 679. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psll_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 680. PassManager<llvm::Function> : Skipping NOP
-- 681. PassManager<llvm::Function> : Skipping NOP
-- 682. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 683. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_512_15(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 15, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psll_w_512_15(<32 x i16> %v) {
#0:
  %#1 = shl <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 684. PassManager<llvm::Function> : Skipping NOP
-- 685. PassManager<llvm::Function> : Skipping NOP
-- 686. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_15_512_splat(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 687. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_15_512_splat(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psll_w_15_512_splat(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 688. PassManager<llvm::Function> : Skipping NOP
-- 689. PassManager<llvm::Function> : Skipping NOP
-- 690. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 691. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psll_w_512_64(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psll_w_512 <32 x i16> %v, <8 x i16> { 64, 0, 0, 0, 9999, 9999, 9999, 9999 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psll_w_512_64(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 692. PassManager<llvm::Function> : Skipping NOP
-- 693. PassManager<llvm::Function> : Skipping NOP
-- 694. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 695. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psll_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 696. PassManager<llvm::Function> : Skipping NOP
-- 697. PassManager<llvm::Function> : Skipping NOP
-- 698. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 699. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_15(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 15, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psll_d_512_15(<16 x i32> %v) {
#0:
  %#1 = shl <16 x i32> %v, { 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 700. PassManager<llvm::Function> : Skipping NOP
-- 701. PassManager<llvm::Function> : Skipping NOP
-- 702. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_15_splat(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 703. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_15_splat(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 15, 15, 15, 15 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psll_d_512_15_splat(<16 x i32> %v) {
#0:
  ret <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 704. PassManager<llvm::Function> : Skipping NOP
-- 705. PassManager<llvm::Function> : Skipping NOP
-- 706. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 707. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psll_d_512_64(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psll_d_512 <16 x i32> %v, <4 x i32> { 64, 0, 9999, 9999 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psll_d_512_64(<16 x i32> %v) {
#0:
  ret <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 708. PassManager<llvm::Function> : Skipping NOP
-- 709. PassManager<llvm::Function> : Skipping NOP
-- 710. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psll_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psll_q_512 <8 x i64> %v, <2 x i64> { 0, 0 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 711. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psll_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psll_q_512 <8 x i64> %v, <2 x i64> { 0, 0 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psll_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 712. PassManager<llvm::Function> : Skipping NOP
-- 713. PassManager<llvm::Function> : Skipping NOP
-- 714. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psll_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psll_q_512 <8 x i64> %v, <2 x i64> { 15, 9999 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 715. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psll_q_512_15(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psll_q_512 <8 x i64> %v, <2 x i64> { 15, 9999 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psll_q_512_15(<8 x i64> %v) {
#0:
  %#1 = shl <8 x i64> %v, { 15, 15, 15, 15, 15, 15, 15, 15 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 716. PassManager<llvm::Function> : Skipping NOP
-- 717. PassManager<llvm::Function> : Skipping NOP
-- 718. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psll_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psll_q_512 <8 x i64> %v, <2 x i64> { 64, 9999 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 719. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psll_q_512_64(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psll_q_512 <8 x i64> %v, <2 x i64> { 64, 9999 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psll_q_512_64(<8 x i64> %v) {
#0:
  ret <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 720. PassManager<llvm::Function> : Skipping NOP
-- 721. PassManager<llvm::Function> : Skipping NOP
-- 722. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_0(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 723. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_0(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psrav_d_128_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 724. PassManager<llvm::Function> : Skipping NOP
-- 725. PassManager<llvm::Function> : Skipping NOP
-- 726. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 727. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrav_d_256_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 728. PassManager<llvm::Function> : Skipping NOP
-- 729. PassManager<llvm::Function> : Skipping NOP
-- 730. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 731. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrav_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 732. PassManager<llvm::Function> : Skipping NOP
-- 733. PassManager<llvm::Function> : Skipping NOP
-- 734. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_var(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 64 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 735. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_var(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 64 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psrav_d_128_var(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { 0, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 736. PassManager<llvm::Function> : Skipping NOP
-- 737. PassManager<llvm::Function> : Skipping NOP
-- 738. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_var(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 24, 32, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 739. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_var(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 24, 32, 24, 8, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrav_d_256_var(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 740. PassManager<llvm::Function> : Skipping NOP
-- 741. PassManager<llvm::Function> : Skipping NOP
-- 742. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_var(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 24, 32, 24, 8, 0, 0, 8, 16, 24, 32, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 743. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_var(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 24, 32, 24, 8, 0, 0, 8, 16, 24, 32, 24, 8, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrav_d_512_var(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { 0, 8, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 744. PassManager<llvm::Function> : Skipping NOP
-- 745. PassManager<llvm::Function> : Skipping NOP
-- 746. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_allbig(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> { 32, 100, 4294967041, poison }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 747. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_allbig(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> { 32, 100, 4294967041, poison }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psrav_d_128_allbig(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { 31, 31, 31, undef }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 748. PassManager<llvm::Function> : Skipping NOP
-- 749. PassManager<llvm::Function> : Skipping NOP
-- 750. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_allbig(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 751. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_allbig(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrav_d_256_allbig(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { undef, 31, 31, 31, 31, 31, 31, 31 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 752. PassManager<llvm::Function> : Skipping NOP
-- 753. PassManager<llvm::Function> : Skipping NOP
-- 754. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_allbig(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741, poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 755. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_allbig(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741, poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrav_d_512_allbig(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { undef, 31, 31, 31, 31, 31, 31, 31, undef, 31, 31, 31, 31, 31, 31, 31 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 756. PassManager<llvm::Function> : Skipping NOP
-- 757. PassManager<llvm::Function> : Skipping NOP
-- 758. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = insertelement <4 x i32> { 0, 8, 16, 64 }, i32 poison, i32 0
  %#2 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> %#1
  ret <4 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 759. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrav_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = insertelement <4 x i32> { 0, 8, 16, 64 }, i32 poison, i32 0
  %#2 = x86_avx2_psrav_d <4 x i32> %v, <4 x i32> %#1
  ret <4 x i32> %#2
}
=>
define <4 x i32> @avx2_psrav_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = ashr <4 x i32> %v, { undef, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation seems to be correct!

-- 760. PassManager<llvm::Function> : Skipping NOP
-- 761. PassManager<llvm::Function> : Skipping NOP
-- 762. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = insertelement <8 x i32> { 0, 8, 16, 24, 32, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> %#1
  ret <8 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 763. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrav_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = insertelement <8 x i32> { 0, 8, 16, 24, 32, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx2_psrav_d_256 <8 x i32> %v, <8 x i32> %#1
  ret <8 x i32> %#2
}
=>
define <8 x i32> @avx2_psrav_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = ashr <8 x i32> %v, { 0, undef, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct!

-- 764. PassManager<llvm::Function> : Skipping NOP
-- 765. PassManager<llvm::Function> : Skipping NOP
-- 766. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = insertelement <16 x i32> { 0, 8, 16, 24, 32, 24, 8, 0, 0, 8, 16, 24, 32, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> %#1
  ret <16 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 767. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrav_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = insertelement <16 x i32> { 0, 8, 16, 24, 32, 24, 8, 0, 0, 8, 16, 24, 32, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx512_psrav_d_512 <16 x i32> %v, <16 x i32> %#1
  ret <16 x i32> %#2
}
=>
define <16 x i32> @avx512_psrav_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = ashr <16 x i32> %v, { 0, undef, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 768. PassManager<llvm::Function> : Skipping NOP
-- 769. PassManager<llvm::Function> : Skipping NOP
-- 770. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 771. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psrav_q_128_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 772. PassManager<llvm::Function> : Skipping NOP
-- 773. PassManager<llvm::Function> : Skipping NOP
-- 774. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> { 0, 0, 0, 0 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 775. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> { 0, 0, 0, 0 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psrav_q_256_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 776. PassManager<llvm::Function> : Skipping NOP
-- 777. PassManager<llvm::Function> : Skipping NOP
-- 778. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_var(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> { 0, 8 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 779. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_var(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> { 0, 8 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psrav_q_128_var(<2 x i64> %v) {
#0:
  %#1 = ashr <2 x i64> %v, { 0, 8 }
  ret <2 x i64> %#1
}
Transformation seems to be correct!

-- 780. PassManager<llvm::Function> : Skipping NOP
-- 781. PassManager<llvm::Function> : Skipping NOP
-- 782. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_var(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 783. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_var(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psrav_q_256_var(<4 x i64> %v) {
#0:
  %#1 = ashr <4 x i64> %v, { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation seems to be correct!

-- 784. PassManager<llvm::Function> : Skipping NOP
-- 785. PassManager<llvm::Function> : Skipping NOP
-- 786. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_allbig(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> { 64, poison }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 787. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_allbig(<2 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> { 64, poison }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx512_psrav_q_128_allbig(<2 x i64> %v) {
#0:
  %#1 = ashr <2 x i64> %v, { 63, undef }
  ret <2 x i64> %#1
}
Transformation seems to be correct!

-- 788. PassManager<llvm::Function> : Skipping NOP
-- 789. PassManager<llvm::Function> : Skipping NOP
-- 790. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_allbig(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> { 64, poison, -128, -60 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 791. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_allbig(<4 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> { 64, poison, -128, -60 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx512_psrav_q_256_allbig(<4 x i64> %v) {
#0:
  %#1 = ashr <4 x i64> %v, { 63, undef, 63, 63 }
  ret <4 x i64> %#1
}
Transformation seems to be correct!

-- 792. PassManager<llvm::Function> : Skipping NOP
-- 793. PassManager<llvm::Function> : Skipping NOP
-- 794. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_poison(<2 x i64> %v) {
#0:
  %#1 = insertelement <2 x i64> { 0, 8 }, i64 poison, i64 0
  %#2 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> %#1
  ret <2 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 795. InstCombinePass

----------------------------------------
define <2 x i64> @avx512_psrav_q_128_poison(<2 x i64> %v) {
#0:
  %#1 = insertelement <2 x i64> { 0, 8 }, i64 poison, i64 0
  %#2 = x86_avx512_psrav_q_128 <2 x i64> %v, <2 x i64> %#1
  ret <2 x i64> %#2
}
=>
define <2 x i64> @avx512_psrav_q_128_poison(<2 x i64> %v) {
#0:
  %#1 = ashr <2 x i64> %v, { poison, 8 }
  ret <2 x i64> %#1
}
Transformation seems to be correct!

-- 796. PassManager<llvm::Function> : Skipping NOP
-- 797. PassManager<llvm::Function> : Skipping NOP
-- 798. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = insertelement <4 x i64> { 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> %#1
  ret <4 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 799. InstCombinePass

----------------------------------------
define <4 x i64> @avx512_psrav_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = insertelement <4 x i64> { 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psrav_q_256 <4 x i64> %v, <4 x i64> %#1
  ret <4 x i64> %#2
}
=>
define <4 x i64> @avx512_psrav_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = ashr <4 x i64> %v, { poison, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation seems to be correct!

-- 800. PassManager<llvm::Function> : Skipping NOP
-- 801. PassManager<llvm::Function> : Skipping NOP
-- 802. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 803. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrav_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 804. PassManager<llvm::Function> : Skipping NOP
-- 805. PassManager<llvm::Function> : Skipping NOP
-- 806. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_var(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 807. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_var(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrav_q_512_var(<8 x i64> %v) {
#0:
  %#1 = ashr <8 x i64> %v, { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 808. PassManager<llvm::Function> : Skipping NOP
-- 809. PassManager<llvm::Function> : Skipping NOP
-- 810. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_allbig(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> { 64, poison, -128, -60, 64, poison, -128, -60 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 811. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_allbig(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> { 64, poison, -128, -60, 64, poison, -128, -60 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrav_q_512_allbig(<8 x i64> %v) {
#0:
  %#1 = ashr <8 x i64> %v, { 63, undef, 63, 63, 63, undef, 63, 63 }
  ret <8 x i64> %#1
}
Transformation seems to be correct!

-- 812. PassManager<llvm::Function> : Skipping NOP
-- 813. PassManager<llvm::Function> : Skipping NOP
-- 814. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = insertelement <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> %#1
  ret <8 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 815. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrav_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = insertelement <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psrav_q_512 <8 x i64> %v, <8 x i64> %#1
  ret <8 x i64> %#2
}
=>
define <8 x i64> @avx512_psrav_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = ashr <8 x i64> %v, { poison, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation seems to be correct!

-- 816. PassManager<llvm::Function> : Skipping NOP
-- 817. PassManager<llvm::Function> : Skipping NOP
-- 818. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_0(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 819. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_0(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psrav_w_128_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 820. PassManager<llvm::Function> : Skipping NOP
-- 821. PassManager<llvm::Function> : Skipping NOP
-- 822. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_var(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 823. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_var(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psrav_w_128_var(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 824. PassManager<llvm::Function> : Skipping NOP
-- 825. PassManager<llvm::Function> : Skipping NOP
-- 826. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_allbig(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> { 20, 65535, 65534, 33, 44, 55, 66, poison }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 827. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_allbig(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> { 20, 65535, 65534, 33, 44, 55, 66, poison }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psrav_w_128_allbig(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, undef }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 828. PassManager<llvm::Function> : Skipping NOP
-- 829. PassManager<llvm::Function> : Skipping NOP
-- 830. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = insertelement <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }, i16 poison, i64 0
  %#2 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 831. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrav_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = insertelement <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }, i16 poison, i64 0
  %#2 = x86_avx512_psrav_w_128 <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
=>
define <8 x i16> @avx512_psrav_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = ashr <8 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation seems to be correct!

-- 832. PassManager<llvm::Function> : Skipping NOP
-- 833. PassManager<llvm::Function> : Skipping NOP
-- 834. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 835. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psrav_w_256_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 836. PassManager<llvm::Function> : Skipping NOP
-- 837. PassManager<llvm::Function> : Skipping NOP
-- 838. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_var(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 839. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_var(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psrav_w_256_var(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 840. PassManager<llvm::Function> : Skipping NOP
-- 841. PassManager<llvm::Function> : Skipping NOP
-- 842. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_allbig(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 256, 16, 28, 65535, 32767 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 843. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_allbig(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 256, 16, 28, 65535, 32767 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psrav_w_256_allbig(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, undef, 15, 15, 15, 15, 15, 15, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 844. PassManager<llvm::Function> : Skipping NOP
-- 845. PassManager<llvm::Function> : Skipping NOP
-- 846. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = insertelement <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, i16 poison, i64 0
  %#2 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> %#1
  ret <16 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 847. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrav_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = insertelement <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, i16 poison, i64 0
  %#2 = x86_avx512_psrav_w_256 <16 x i16> %v, <16 x i16> %#1
  ret <16 x i16> %#2
}
=>
define <16 x i16> @avx512_psrav_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = ashr <16 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 848. PassManager<llvm::Function> : Skipping NOP
-- 849. PassManager<llvm::Function> : Skipping NOP
-- 850. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 851. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrav_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 852. PassManager<llvm::Function> : Skipping NOP
-- 853. PassManager<llvm::Function> : Skipping NOP
-- 854. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_var(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 855. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_var(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrav_w_512_var(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 856. PassManager<llvm::Function> : Skipping NOP
-- 857. PassManager<llvm::Function> : Skipping NOP
-- 858. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_allbig(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 128, 16, 28, 65535, 32767, 56, 65522, poison, 16, 67, 567, 32768, 4096, 8192, 53191, poison, 345, 123, poison, 1024, 54321 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 859. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_allbig(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 128, 16, 28, 65535, 32767, 56, 65522, poison, 16, 67, 567, 32768, 4096, 8192, 53191, poison, 345, 123, poison, 1024, 54321 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrav_w_512_allbig(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { 15, 15, 15, 15, 15, 15, 15, 15, undef, 15, 15, 15, 15, 15, 15, 15, 15, 15, undef, 15, 15, 15, 15, 15, 15, 15, undef, 15, 15, undef, 15, 15 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 860. PassManager<llvm::Function> : Skipping NOP
-- 861. PassManager<llvm::Function> : Skipping NOP
-- 862. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = insertelement <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }, i16 poison, i64 0
  %#2 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> %#1
  ret <32 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 863. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrav_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = insertelement <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }, i16 poison, i64 0
  %#2 = x86_avx512_psrav_w_512 <32 x i16> %v, <32 x i16> %#1
  ret <32 x i16> %#2
}
=>
define <32 x i16> @avx512_psrav_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = ashr <32 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 864. PassManager<llvm::Function> : Skipping NOP
-- 865. PassManager<llvm::Function> : Skipping NOP
-- 866. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_0(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 867. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_0(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psrlv_d_128_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 868. PassManager<llvm::Function> : Skipping NOP
-- 869. PassManager<llvm::Function> : Skipping NOP
-- 870. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 871. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrlv_d_256_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 872. PassManager<llvm::Function> : Skipping NOP
-- 873. PassManager<llvm::Function> : Skipping NOP
-- 874. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_var(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 875. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_var(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 31 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psrlv_d_128_var(<4 x i32> %v) {
#0:
  %#1 = lshr <4 x i32> %v, { 0, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 876. PassManager<llvm::Function> : Skipping NOP
-- 877. PassManager<llvm::Function> : Skipping NOP
-- 878. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_var(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 879. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_var(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrlv_d_256_var(<8 x i32> %v) {
#0:
  %#1 = lshr <8 x i32> %v, { 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 880. PassManager<llvm::Function> : Skipping NOP
-- 881. PassManager<llvm::Function> : Skipping NOP
-- 882. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_big(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 64 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 883. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_big(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 64 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 884. PassManager<llvm::Function> : Skipping NOP
-- 885. PassManager<llvm::Function> : Skipping NOP
-- 886. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_big(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 887. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_big(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 888. PassManager<llvm::Function> : Skipping NOP
-- 889. PassManager<llvm::Function> : Skipping NOP
-- 890. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_allbig(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 32, 100, 4294967041, poison }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 891. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_allbig(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> { 32, 100, 4294967041, poison }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psrlv_d_128_allbig(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, undef }
}
Transformation seems to be correct!

-- 892. PassManager<llvm::Function> : Skipping NOP
-- 893. PassManager<llvm::Function> : Skipping NOP
-- 894. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_allbig(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 895. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_allbig(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psrlv_d_256_allbig(<8 x i32> %v) {
#0:
  ret <8 x i32> { undef, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 896. PassManager<llvm::Function> : Skipping NOP
-- 897. PassManager<llvm::Function> : Skipping NOP
-- 898. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = insertelement <4 x i32> { 0, 8, 16, 31 }, i32 poison, i32 0
  %#2 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> %#1
  ret <4 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 899. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psrlv_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = insertelement <4 x i32> { 0, 8, 16, 31 }, i32 poison, i32 0
  %#2 = x86_avx2_psrlv_d <4 x i32> %v, <4 x i32> %#1
  ret <4 x i32> %#2
}
=>
define <4 x i32> @avx2_psrlv_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = lshr <4 x i32> %v, { poison, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 900. PassManager<llvm::Function> : Skipping NOP
-- 901. PassManager<llvm::Function> : Skipping NOP
-- 902. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = insertelement <8 x i32> { 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> %#1
  ret <8 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 903. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psrlv_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = insertelement <8 x i32> { 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx2_psrlv_d_256 <8 x i32> %v, <8 x i32> %#1
  ret <8 x i32> %#2
}
=>
define <8 x i32> @avx2_psrlv_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = lshr <8 x i32> %v, { 0, poison, 16, 31, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 904. PassManager<llvm::Function> : Skipping NOP
-- 905. PassManager<llvm::Function> : Skipping NOP
-- 906. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 907. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx2_psrlv_q_128_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 908. PassManager<llvm::Function> : Skipping NOP
-- 909. PassManager<llvm::Function> : Skipping NOP
-- 910. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 0, 0, 0, 0 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 911. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 0, 0, 0, 0 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrlv_q_256_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 912. PassManager<llvm::Function> : Skipping NOP
-- 913. PassManager<llvm::Function> : Skipping NOP
-- 914. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_var(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 0, 8 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 915. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_var(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 0, 8 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx2_psrlv_q_128_var(<2 x i64> %v) {
#0:
  %#1 = lshr <2 x i64> %v, { 0, 8 }
  ret <2 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 916. PassManager<llvm::Function> : Skipping NOP
-- 917. PassManager<llvm::Function> : Skipping NOP
-- 918. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_var(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 919. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_var(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrlv_q_256_var(<4 x i64> %v) {
#0:
  %#1 = lshr <4 x i64> %v, { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 920. PassManager<llvm::Function> : Skipping NOP
-- 921. PassManager<llvm::Function> : Skipping NOP
-- 922. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_big(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 0, 128 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 923. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_big(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 0, 128 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 924. PassManager<llvm::Function> : Skipping NOP
-- 925. PassManager<llvm::Function> : Skipping NOP
-- 926. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_big(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 64 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 927. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_big(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 64 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 928. PassManager<llvm::Function> : Skipping NOP
-- 929. PassManager<llvm::Function> : Skipping NOP
-- 930. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_allbig(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 128, -64 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 931. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_allbig(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> { 128, -64 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx2_psrlv_q_128_allbig(<2 x i64> %v) {
#0:
  ret <2 x i64> { 0, 0 }
}
Transformation seems to be correct!

-- 932. PassManager<llvm::Function> : Skipping NOP
-- 933. PassManager<llvm::Function> : Skipping NOP
-- 934. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_allbig(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 64, poison, -128, -60 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 935. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_allbig(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> { 64, poison, -128, -60 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psrlv_q_256_allbig(<4 x i64> %v) {
#0:
  ret <4 x i64> { 0, undef, 0, 0 }
}
Transformation seems to be correct!

-- 936. PassManager<llvm::Function> : Skipping NOP
-- 937. PassManager<llvm::Function> : Skipping NOP
-- 938. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_poison(<2 x i64> %v) {
#0:
  %#1 = insertelement <2 x i64> { 0, 8 }, i64 poison, i64 1
  %#2 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> %#1
  ret <2 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 939. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psrlv_q_128_poison(<2 x i64> %v) {
#0:
  %#1 = insertelement <2 x i64> { 0, 8 }, i64 poison, i64 1
  %#2 = x86_avx2_psrlv_q <2 x i64> %v, <2 x i64> %#1
  ret <2 x i64> %#2
}
=>
define <2 x i64> @avx2_psrlv_q_128_poison(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 940. PassManager<llvm::Function> : Skipping NOP
-- 941. PassManager<llvm::Function> : Skipping NOP
-- 942. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = insertelement <4 x i64> { 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> %#1
  ret <4 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 943. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psrlv_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = insertelement <4 x i64> { 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx2_psrlv_q_256 <4 x i64> %v, <4 x i64> %#1
  ret <4 x i64> %#2
}
=>
define <4 x i64> @avx2_psrlv_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = lshr <4 x i64> %v, { poison, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 944. PassManager<llvm::Function> : Skipping NOP
-- 945. PassManager<llvm::Function> : Skipping NOP
-- 946. InstCombinePass

----------------------------------------
define <16 x i32> @avx2_psrlv_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 947. InstCombinePass

----------------------------------------
define <16 x i32> @avx2_psrlv_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx2_psrlv_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 948. PassManager<llvm::Function> : Skipping NOP
-- 949. PassManager<llvm::Function> : Skipping NOP
-- 950. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_var(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 951. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_var(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrlv_d_512_var(<16 x i32> %v) {
#0:
  %#1 = lshr <16 x i32> %v, { 0, 8, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 952. PassManager<llvm::Function> : Skipping NOP
-- 953. PassManager<llvm::Function> : Skipping NOP
-- 954. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_big(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 64, 31, 24, 8, 0, 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 955. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_big(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 64, 31, 24, 8, 0, 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 956. PassManager<llvm::Function> : Skipping NOP
-- 957. PassManager<llvm::Function> : Skipping NOP
-- 958. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_allbig(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741, poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 959. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_allbig(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741, poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psrlv_d_512_allbig(<16 x i32> %v) {
#0:
  ret <16 x i32> { undef, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 960. PassManager<llvm::Function> : Skipping NOP
-- 961. PassManager<llvm::Function> : Skipping NOP
-- 962. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = insertelement <16 x i32> { 0, 8, 16, 31, 31, 24, 8, 0, 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> %#1
  ret <16 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 963. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psrlv_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = insertelement <16 x i32> { 0, 8, 16, 31, 31, 24, 8, 0, 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx512_psrlv_d_512 <16 x i32> %v, <16 x i32> %#1
  ret <16 x i32> %#2
}
=>
define <16 x i32> @avx512_psrlv_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = lshr <16 x i32> %v, { 0, poison, 16, 31, 31, 24, 8, 0, 0, 8, 16, 31, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 964. PassManager<llvm::Function> : Skipping NOP
-- 965. PassManager<llvm::Function> : Skipping NOP
-- 966. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 967. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrlv_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 968. PassManager<llvm::Function> : Skipping NOP
-- 969. PassManager<llvm::Function> : Skipping NOP
-- 970. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_var(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 971. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_var(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrlv_q_512_var(<8 x i64> %v) {
#0:
  %#1 = lshr <8 x i64> %v, { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 972. PassManager<llvm::Function> : Skipping NOP
-- 973. PassManager<llvm::Function> : Skipping NOP
-- 974. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_big(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 64, 0, 8, 16, 64 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 975. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_big(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 64, 0, 8, 16, 64 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 976. PassManager<llvm::Function> : Skipping NOP
-- 977. PassManager<llvm::Function> : Skipping NOP
-- 978. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_allbig(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 64, poison, -128, -60, 64, poison, -128, -60 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 979. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_allbig(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> { 64, poison, -128, -60, 64, poison, -128, -60 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psrlv_q_512_allbig(<8 x i64> %v) {
#0:
  ret <8 x i64> { 0, undef, 0, 0, 0, undef, 0, 0 }
}
Transformation seems to be correct!

-- 980. PassManager<llvm::Function> : Skipping NOP
-- 981. PassManager<llvm::Function> : Skipping NOP
-- 982. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = insertelement <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> %#1
  ret <8 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 983. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psrlv_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = insertelement <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psrlv_q_512 <8 x i64> %v, <8 x i64> %#1
  ret <8 x i64> %#2
}
=>
define <8 x i64> @avx512_psrlv_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = lshr <8 x i64> %v, { poison, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 984. PassManager<llvm::Function> : Skipping NOP
-- 985. PassManager<llvm::Function> : Skipping NOP
-- 986. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_0(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 987. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_0(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psrlv_w_128_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 988. PassManager<llvm::Function> : Skipping NOP
-- 989. PassManager<llvm::Function> : Skipping NOP
-- 990. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_var(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 991. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_var(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psrlv_w_128_var(<8 x i16> %v) {
#0:
  %#1 = lshr <8 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 992. PassManager<llvm::Function> : Skipping NOP
-- 993. PassManager<llvm::Function> : Skipping NOP
-- 994. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_big(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 16 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 995. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_big(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 16 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 996. PassManager<llvm::Function> : Skipping NOP
-- 997. PassManager<llvm::Function> : Skipping NOP
-- 998. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_allbig(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 20, 65535, 65534, 33, 44, 55, 66, poison }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 999. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_allbig(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> { 20, 65535, 65534, 33, 44, 55, 66, poison }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psrlv_w_128_allbig(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, undef }
}
Transformation seems to be correct!

-- 1000. PassManager<llvm::Function> : Skipping NOP
-- 1001. PassManager<llvm::Function> : Skipping NOP
-- 1002. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = insertelement <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }, i16 poison, i64 0
  %#2 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1003. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psrlv_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = insertelement <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }, i16 poison, i64 0
  %#2 = x86_avx512_psrlv_w_128 <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
=>
define <8 x i16> @avx512_psrlv_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = lshr <8 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1004. PassManager<llvm::Function> : Skipping NOP
-- 1005. PassManager<llvm::Function> : Skipping NOP
-- 1006. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1007. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psrlv_w_256_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1008. PassManager<llvm::Function> : Skipping NOP
-- 1009. PassManager<llvm::Function> : Skipping NOP
-- 1010. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_var(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1011. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_var(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psrlv_w_256_var(<16 x i16> %v) {
#0:
  %#1 = lshr <16 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1012. PassManager<llvm::Function> : Skipping NOP
-- 1013. PassManager<llvm::Function> : Skipping NOP
-- 1014. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_big(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1015. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_big(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1016. PassManager<llvm::Function> : Skipping NOP
-- 1017. PassManager<llvm::Function> : Skipping NOP
-- 1018. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_allbig(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 256, 16, 28, 65535, 32767 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1019. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_allbig(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 256, 16, 28, 65535, 32767 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psrlv_w_256_allbig(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 1020. PassManager<llvm::Function> : Skipping NOP
-- 1021. PassManager<llvm::Function> : Skipping NOP
-- 1022. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = insertelement <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, i16 poison, i64 0
  %#2 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> %#1
  ret <16 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1023. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psrlv_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = insertelement <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, i16 poison, i64 0
  %#2 = x86_avx512_psrlv_w_256 <16 x i16> %v, <16 x i16> %#1
  ret <16 x i16> %#2
}
=>
define <16 x i16> @avx512_psrlv_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = lshr <16 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1024. PassManager<llvm::Function> : Skipping NOP
-- 1025. PassManager<llvm::Function> : Skipping NOP
-- 1026. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1027. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrlv_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1028. PassManager<llvm::Function> : Skipping NOP
-- 1029. PassManager<llvm::Function> : Skipping NOP
-- 1030. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_var(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1031. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_var(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrlv_w_512_var(<32 x i16> %v) {
#0:
  %#1 = lshr <32 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1032. PassManager<llvm::Function> : Skipping NOP
-- 1033. PassManager<llvm::Function> : Skipping NOP
-- 1034. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_big(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1035. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_big(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1036. PassManager<llvm::Function> : Skipping NOP
-- 1037. PassManager<llvm::Function> : Skipping NOP
-- 1038. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_allbig(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 128, 16, 28, 65535, 32767, 56, 65522, poison, 16, 67, 567, 32768, 4096, 8192, 53191, poison, 345, 123, poison, 1024, 54321 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1039. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_allbig(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 128, 16, 28, 65535, 32767, 56, 65522, poison, 16, 67, 567, 32768, 4096, 8192, 53191, poison, 345, 123, poison, 1024, 54321 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psrlv_w_512_allbig(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, undef, 0, 0 }
}
Transformation seems to be correct!

-- 1040. PassManager<llvm::Function> : Skipping NOP
-- 1041. PassManager<llvm::Function> : Skipping NOP
-- 1042. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = insertelement <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }, i16 poison, i64 0
  %#2 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> %#1
  ret <32 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1043. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psrlv_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = insertelement <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }, i16 poison, i64 0
  %#2 = x86_avx512_psrlv_w_512 <32 x i16> %v, <32 x i16> %#1
  ret <32 x i16> %#2
}
=>
define <32 x i16> @avx512_psrlv_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = lshr <32 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1044. PassManager<llvm::Function> : Skipping NOP
-- 1045. PassManager<llvm::Function> : Skipping NOP
-- 1046. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_0(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1047. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_0(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 0, 0, 0, 0 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psllv_d_128_0(<4 x i32> %v) {
#0:
  ret <4 x i32> %v
}
Transformation seems to be correct!

-- 1048. PassManager<llvm::Function> : Skipping NOP
-- 1049. PassManager<llvm::Function> : Skipping NOP
-- 1050. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1051. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_0(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psllv_d_256_0(<8 x i32> %v) {
#0:
  ret <8 x i32> %v
}
Transformation seems to be correct!

-- 1052. PassManager<llvm::Function> : Skipping NOP
-- 1053. PassManager<llvm::Function> : Skipping NOP
-- 1054. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_var(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1055. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_var(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 31 }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psllv_d_128_var(<4 x i32> %v) {
#0:
  %#1 = shl <4 x i32> %v, { 0, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1056. PassManager<llvm::Function> : Skipping NOP
-- 1057. PassManager<llvm::Function> : Skipping NOP
-- 1058. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_var(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1059. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_var(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psllv_d_256_var(<8 x i32> %v) {
#0:
  %#1 = shl <8 x i32> %v, { 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1060. PassManager<llvm::Function> : Skipping NOP
-- 1061. PassManager<llvm::Function> : Skipping NOP
-- 1062. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_big(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 64 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1063. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_big(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 0, 8, 16, 64 }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1064. PassManager<llvm::Function> : Skipping NOP
-- 1065. PassManager<llvm::Function> : Skipping NOP
-- 1066. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_big(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1067. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_big(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1068. PassManager<llvm::Function> : Skipping NOP
-- 1069. PassManager<llvm::Function> : Skipping NOP
-- 1070. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_allbig(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 32, 100, 4294967041, poison }
  ret <4 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1071. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_allbig(<4 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> { 32, 100, 4294967041, poison }
  ret <4 x i32> %#1
}
=>
define <4 x i32> @avx2_psllv_d_128_allbig(<4 x i32> %v) {
#0:
  ret <4 x i32> { 0, 0, 0, undef }
}
Transformation seems to be correct!

-- 1072. PassManager<llvm::Function> : Skipping NOP
-- 1073. PassManager<llvm::Function> : Skipping NOP
-- 1074. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_allbig(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <8 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1075. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_allbig(<8 x i32> %v) {
#0:
  %#1 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <8 x i32> %#1
}
=>
define <8 x i32> @avx2_psllv_d_256_allbig(<8 x i32> %v) {
#0:
  ret <8 x i32> { undef, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 1076. PassManager<llvm::Function> : Skipping NOP
-- 1077. PassManager<llvm::Function> : Skipping NOP
-- 1078. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = insertelement <4 x i32> { 0, 8, 16, 31 }, i32 poison, i32 0
  %#2 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> %#1
  ret <4 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1079. InstCombinePass

----------------------------------------
define <4 x i32> @avx2_psllv_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = insertelement <4 x i32> { 0, 8, 16, 31 }, i32 poison, i32 0
  %#2 = x86_avx2_psllv_d <4 x i32> %v, <4 x i32> %#1
  ret <4 x i32> %#2
}
=>
define <4 x i32> @avx2_psllv_d_128_poison(<4 x i32> %v) {
#0:
  %#1 = shl <4 x i32> %v, { poison, 8, 16, 31 }
  ret <4 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1080. PassManager<llvm::Function> : Skipping NOP
-- 1081. PassManager<llvm::Function> : Skipping NOP
-- 1082. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = insertelement <8 x i32> { 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> %#1
  ret <8 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1083. InstCombinePass

----------------------------------------
define <8 x i32> @avx2_psllv_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = insertelement <8 x i32> { 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx2_psllv_d_256 <8 x i32> %v, <8 x i32> %#1
  ret <8 x i32> %#2
}
=>
define <8 x i32> @avx2_psllv_d_256_poison(<8 x i32> %v) {
#0:
  %#1 = shl <8 x i32> %v, { 0, poison, 16, 31, 31, 24, 8, 0 }
  ret <8 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1084. PassManager<llvm::Function> : Skipping NOP
-- 1085. PassManager<llvm::Function> : Skipping NOP
-- 1086. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1087. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_0(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 0, 0 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx2_psllv_q_128_0(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 1088. PassManager<llvm::Function> : Skipping NOP
-- 1089. PassManager<llvm::Function> : Skipping NOP
-- 1090. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 0, 0, 0, 0 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1091. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_0(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 0, 0, 0, 0 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psllv_q_256_0(<4 x i64> %v) {
#0:
  ret <4 x i64> %v
}
Transformation seems to be correct!

-- 1092. PassManager<llvm::Function> : Skipping NOP
-- 1093. PassManager<llvm::Function> : Skipping NOP
-- 1094. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_var(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 0, 8 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1095. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_var(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 0, 8 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx2_psllv_q_128_var(<2 x i64> %v) {
#0:
  %#1 = shl <2 x i64> %v, { 0, 8 }
  ret <2 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1096. PassManager<llvm::Function> : Skipping NOP
-- 1097. PassManager<llvm::Function> : Skipping NOP
-- 1098. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_var(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1099. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_var(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psllv_q_256_var(<4 x i64> %v) {
#0:
  %#1 = shl <4 x i64> %v, { 0, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1100. PassManager<llvm::Function> : Skipping NOP
-- 1101. PassManager<llvm::Function> : Skipping NOP
-- 1102. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_big(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 0, 128 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1103. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_big(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 0, 128 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1104. PassManager<llvm::Function> : Skipping NOP
-- 1105. PassManager<llvm::Function> : Skipping NOP
-- 1106. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_big(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 64 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1107. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_big(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 0, 8, 16, 64 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1108. PassManager<llvm::Function> : Skipping NOP
-- 1109. PassManager<llvm::Function> : Skipping NOP
-- 1110. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_allbig(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 128, -64 }
  ret <2 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1111. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_allbig(<2 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> { 128, -64 }
  ret <2 x i64> %#1
}
=>
define <2 x i64> @avx2_psllv_q_128_allbig(<2 x i64> %v) {
#0:
  ret <2 x i64> { 0, 0 }
}
Transformation seems to be correct!

-- 1112. PassManager<llvm::Function> : Skipping NOP
-- 1113. PassManager<llvm::Function> : Skipping NOP
-- 1114. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_allbig(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 64, poison, -128, -60 }
  ret <4 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1115. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_allbig(<4 x i64> %v) {
#0:
  %#1 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> { 64, poison, -128, -60 }
  ret <4 x i64> %#1
}
=>
define <4 x i64> @avx2_psllv_q_256_allbig(<4 x i64> %v) {
#0:
  ret <4 x i64> { 0, undef, 0, 0 }
}
Transformation seems to be correct!

-- 1116. PassManager<llvm::Function> : Skipping NOP
-- 1117. PassManager<llvm::Function> : Skipping NOP
-- 1118. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_poison(<2 x i64> %v) {
#0:
  %#1 = insertelement <2 x i64> { 0, 8 }, i64 poison, i64 1
  %#2 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> %#1
  ret <2 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1119. InstCombinePass

----------------------------------------
define <2 x i64> @avx2_psllv_q_128_poison(<2 x i64> %v) {
#0:
  %#1 = insertelement <2 x i64> { 0, 8 }, i64 poison, i64 1
  %#2 = x86_avx2_psllv_q <2 x i64> %v, <2 x i64> %#1
  ret <2 x i64> %#2
}
=>
define <2 x i64> @avx2_psllv_q_128_poison(<2 x i64> %v) {
#0:
  ret <2 x i64> %v
}
Transformation seems to be correct!

-- 1120. PassManager<llvm::Function> : Skipping NOP
-- 1121. PassManager<llvm::Function> : Skipping NOP
-- 1122. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = insertelement <4 x i64> { 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> %#1
  ret <4 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1123. InstCombinePass

----------------------------------------
define <4 x i64> @avx2_psllv_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = insertelement <4 x i64> { 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx2_psllv_q_256 <4 x i64> %v, <4 x i64> %#1
  ret <4 x i64> %#2
}
=>
define <4 x i64> @avx2_psllv_q_256_poison(<4 x i64> %v) {
#0:
  %#1 = shl <4 x i64> %v, { poison, 8, 16, 31 }
  ret <4 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1124. PassManager<llvm::Function> : Skipping NOP
-- 1125. PassManager<llvm::Function> : Skipping NOP
-- 1126. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1127. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_0(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psllv_d_512_0(<16 x i32> %v) {
#0:
  ret <16 x i32> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1128. PassManager<llvm::Function> : Skipping NOP
-- 1129. PassManager<llvm::Function> : Skipping NOP
-- 1130. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_var(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1131. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_var(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psllv_d_512_var(<16 x i32> %v) {
#0:
  %#1 = shl <16 x i32> %v, { 0, 8, 16, 24, 31, 24, 8, 0, 0, 8, 16, 24, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1132. PassManager<llvm::Function> : Skipping NOP
-- 1133. PassManager<llvm::Function> : Skipping NOP
-- 1134. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_big(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 64, 31, 24, 8, 0, 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1135. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_big(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { 0, 8, 16, 64, 31, 24, 8, 0, 0, 8, 16, 64, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1136. PassManager<llvm::Function> : Skipping NOP
-- 1137. PassManager<llvm::Function> : Skipping NOP
-- 1138. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_allbig(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741, poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <16 x i32> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1139. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_allbig(<16 x i32> %v) {
#0:
  %#1 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> { poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741, poison, 100, 255, 55555, 4294967264, 4294967196, 4294967041, 4294911741 }
  ret <16 x i32> %#1
}
=>
define <16 x i32> @avx512_psllv_d_512_allbig(<16 x i32> %v) {
#0:
  ret <16 x i32> { undef, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 1140. PassManager<llvm::Function> : Skipping NOP
-- 1141. PassManager<llvm::Function> : Skipping NOP
-- 1142. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = insertelement <16 x i32> { 0, 8, 16, 31, 31, 24, 8, 0, 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> %#1
  ret <16 x i32> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1143. InstCombinePass

----------------------------------------
define <16 x i32> @avx512_psllv_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = insertelement <16 x i32> { 0, 8, 16, 31, 31, 24, 8, 0, 0, 8, 16, 31, 31, 24, 8, 0 }, i32 poison, i32 1
  %#2 = x86_avx512_psllv_d_512 <16 x i32> %v, <16 x i32> %#1
  ret <16 x i32> %#2
}
=>
define <16 x i32> @avx512_psllv_d_512_poison(<16 x i32> %v) {
#0:
  %#1 = shl <16 x i32> %v, { 0, poison, 16, 31, 31, 24, 8, 0, 0, 8, 16, 31, 31, 24, 8, 0 }
  ret <16 x i32> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1144. PassManager<llvm::Function> : Skipping NOP
-- 1145. PassManager<llvm::Function> : Skipping NOP
-- 1146. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1147. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_0(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psllv_q_512_0(<8 x i64> %v) {
#0:
  ret <8 x i64> %v
}
Transformation seems to be correct!

-- 1148. PassManager<llvm::Function> : Skipping NOP
-- 1149. PassManager<llvm::Function> : Skipping NOP
-- 1150. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_var(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1151. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_var(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psllv_q_512_var(<8 x i64> %v) {
#0:
  %#1 = shl <8 x i64> %v, { 0, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1152. PassManager<llvm::Function> : Skipping NOP
-- 1153. PassManager<llvm::Function> : Skipping NOP
-- 1154. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_big(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 64, 0, 8, 16, 64 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1155. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_big(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 0, 8, 16, 64, 0, 8, 16, 64 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1156. PassManager<llvm::Function> : Skipping NOP
-- 1157. PassManager<llvm::Function> : Skipping NOP
-- 1158. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_allbig(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 64, poison, -128, -60, 64, poison, -128, -60 }
  ret <8 x i64> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1159. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_allbig(<8 x i64> %v) {
#0:
  %#1 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> { 64, poison, -128, -60, 64, poison, -128, -60 }
  ret <8 x i64> %#1
}
=>
define <8 x i64> @avx512_psllv_q_512_allbig(<8 x i64> %v) {
#0:
  ret <8 x i64> { 0, undef, 0, 0, 0, undef, 0, 0 }
}
Transformation seems to be correct!

-- 1160. PassManager<llvm::Function> : Skipping NOP
-- 1161. PassManager<llvm::Function> : Skipping NOP
-- 1162. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = insertelement <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> %#1
  ret <8 x i64> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1163. InstCombinePass

----------------------------------------
define <8 x i64> @avx512_psllv_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = insertelement <8 x i64> { 0, 8, 16, 31, 0, 8, 16, 31 }, i64 poison, i64 0
  %#2 = x86_avx512_psllv_q_512 <8 x i64> %v, <8 x i64> %#1
  ret <8 x i64> %#2
}
=>
define <8 x i64> @avx512_psllv_q_512_poison(<8 x i64> %v) {
#0:
  %#1 = shl <8 x i64> %v, { poison, 8, 16, 31, 0, 8, 16, 31 }
  ret <8 x i64> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1164. PassManager<llvm::Function> : Skipping NOP
-- 1165. PassManager<llvm::Function> : Skipping NOP
-- 1166. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_0(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1167. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_0(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psllv_w_128_0(<8 x i16> %v) {
#0:
  ret <8 x i16> %v
}
Transformation seems to be correct!

-- 1168. PassManager<llvm::Function> : Skipping NOP
-- 1169. PassManager<llvm::Function> : Skipping NOP
-- 1170. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_var(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1171. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_var(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psllv_w_128_var(<8 x i16> %v) {
#0:
  %#1 = shl <8 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1172. PassManager<llvm::Function> : Skipping NOP
-- 1173. PassManager<llvm::Function> : Skipping NOP
-- 1174. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_big(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 16 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1175. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_big(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 16 }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1176. PassManager<llvm::Function> : Skipping NOP
-- 1177. PassManager<llvm::Function> : Skipping NOP
-- 1178. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_allbig(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 20, 65535, 65534, 33, 44, 55, 66, poison }
  ret <8 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1179. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_allbig(<8 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> { 20, 65535, 65534, 33, 44, 55, 66, poison }
  ret <8 x i16> %#1
}
=>
define <8 x i16> @avx512_psllv_w_128_allbig(<8 x i16> %v) {
#0:
  ret <8 x i16> { 0, 0, 0, 0, 0, 0, 0, undef }
}
Transformation seems to be correct!

-- 1180. PassManager<llvm::Function> : Skipping NOP
-- 1181. PassManager<llvm::Function> : Skipping NOP
-- 1182. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = insertelement <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }, i16 poison, i64 0
  %#2 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1183. InstCombinePass

----------------------------------------
define <8 x i16> @avx512_psllv_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = insertelement <8 x i16> { 0, 1, 2, 3, 4, 5, 6, 7 }, i16 poison, i64 0
  %#2 = x86_avx512_psllv_w_128 <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
=>
define <8 x i16> @avx512_psllv_w_128_poison(<8 x i16> %v) {
#0:
  %#1 = shl <8 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7 }
  ret <8 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1184. PassManager<llvm::Function> : Skipping NOP
-- 1185. PassManager<llvm::Function> : Skipping NOP
-- 1186. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1187. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_0(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psllv_w_256_0(<16 x i16> %v) {
#0:
  ret <16 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1188. PassManager<llvm::Function> : Skipping NOP
-- 1189. PassManager<llvm::Function> : Skipping NOP
-- 1190. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_var(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1191. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_var(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psllv_w_256_var(<16 x i16> %v) {
#0:
  %#1 = shl <16 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1192. PassManager<llvm::Function> : Skipping NOP
-- 1193. PassManager<llvm::Function> : Skipping NOP
-- 1194. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_big(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1195. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_big(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1196. PassManager<llvm::Function> : Skipping NOP
-- 1197. PassManager<llvm::Function> : Skipping NOP
-- 1198. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_allbig(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 256, 16, 28, 65535, 32767 }
  ret <16 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1199. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_allbig(<16 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 256, 16, 28, 65535, 32767 }
  ret <16 x i16> %#1
}
=>
define <16 x i16> @avx512_psllv_w_256_allbig(<16 x i16> %v) {
#0:
  ret <16 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0 }
}
Transformation seems to be correct!

-- 1200. PassManager<llvm::Function> : Skipping NOP
-- 1201. PassManager<llvm::Function> : Skipping NOP
-- 1202. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = insertelement <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, i16 poison, i64 0
  %#2 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> %#1
  ret <16 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1203. InstCombinePass

----------------------------------------
define <16 x i16> @avx512_psllv_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = insertelement <16 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, i16 poison, i64 0
  %#2 = x86_avx512_psllv_w_256 <16 x i16> %v, <16 x i16> %#1
  ret <16 x i16> %#2
}
=>
define <16 x i16> @avx512_psllv_w_256_poison(<16 x i16> %v) {
#0:
  %#1 = shl <16 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }
  ret <16 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1204. PassManager<llvm::Function> : Skipping NOP
-- 1205. PassManager<llvm::Function> : Skipping NOP
-- 1206. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1207. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_0(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psllv_w_512_0(<32 x i16> %v) {
#0:
  ret <32 x i16> %v
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1208. PassManager<llvm::Function> : Skipping NOP
-- 1209. PassManager<llvm::Function> : Skipping NOP
-- 1210. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_var(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1211. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_var(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psllv_w_512_var(<32 x i16> %v) {
#0:
  %#1 = shl <32 x i16> %v, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1212. PassManager<llvm::Function> : Skipping NOP
-- 1213. PassManager<llvm::Function> : Skipping NOP
-- 1214. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_big(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1215. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_big(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1216. PassManager<llvm::Function> : Skipping NOP
-- 1217. PassManager<llvm::Function> : Skipping NOP
-- 1218. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_allbig(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 128, 16, 28, 65535, 32767, 56, 65522, poison, 16, 67, 567, 32768, 4096, 8192, 53191, poison, 345, 123, poison, 1024, 54321 }
  ret <32 x i16> %#1
}
Transformation seems to be correct! (syntactically equal)

-- 1219. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_allbig(<32 x i16> %v) {
#0:
  %#1 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> { 20, 65535, 65534, 33, 44, 55, 66, 65529, poison, 64, 65526, 128, 16, 28, 65535, 32767, 56, 65522, poison, 16, 67, 567, 32768, 4096, 8192, 53191, poison, 345, 123, poison, 1024, 54321 }
  ret <32 x i16> %#1
}
=>
define <32 x i16> @avx512_psllv_w_512_allbig(<32 x i16> %v) {
#0:
  ret <32 x i16> { 0, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, 0, 0, 0, 0, 0, undef, 0, 0, undef, 0, 0 }
}
Transformation seems to be correct!

-- 1220. PassManager<llvm::Function> : Skipping NOP
-- 1221. PassManager<llvm::Function> : Skipping NOP
-- 1222. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = insertelement <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }, i16 poison, i64 0
  %#2 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> %#1
  ret <32 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1223. InstCombinePass

----------------------------------------
define <32 x i16> @avx512_psllv_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = insertelement <32 x i16> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }, i16 poison, i64 0
  %#2 = x86_avx512_psllv_w_512 <32 x i16> %v, <32 x i16> %#1
  ret <32 x i16> %#2
}
=>
define <32 x i16> @avx512_psllv_w_512_poison(<32 x i16> %v) {
#0:
  %#1 = shl <32 x i16> %v, { poison, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 }
  ret <32 x i16> %#1
}
Transformation doesn't verify! (not unsound)
ERROR: Timeout
-- 1224. PassManager<llvm::Function> : Skipping NOP
-- 1225. PassManager<llvm::Function> : Skipping NOP
-- 1226. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_128_masked(<8 x i16> %v, <8 x i16> %a) {
#0:
  %#1 = and <8 x i16> %a, { 15, 0, 0, 0, poison, poison, poison, poison }
  %#2 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
Transformation seems to be correct! (syntactically equal)

-- 1227. InstCombinePass

----------------------------------------
define <8 x i16> @sse2_psra_w_128_masked(<8 x i16> %v, <8 x i16> %a) {
#0:
  %#1 = and <8 x i16> %a, { 15, 0, 0, 0, poison, poison, poison, poison }
  %#2 = x86_sse2_psra_w <8 x i16> %v, <8 x i16> %#1
  ret <8 x i16> %#2
}
=>
define <8 x i16> @sse2_psra_w_128_masked(<8 x i16> %v, <8 x i16> %a) {
#0:
  %#1 = and <8 x i16> %a, { 15, poison, poison, poison, poison, poison, poison, poison }
  %#2 = shufflevector <8 x i16> %#1, <8 x i16> poison, 0, 0, 0, 0, 0, 0, 0, 0
  %#3 = ashr <8 x i16> %v, %#2
  ret <8 x i16> %#3
}
Transformation doesn't verify! (unsound)
ERROR: Value mismatch

Example:
<8 x i16> %v = < #xe333 (58163, -7373), #x8ccc (36044, -29492), #xe333 (58163, -7373), #xe333 (58163, -7373), #xe333 (58163, -7373), #x0000 (0), #xe333 (58163, -7373), #x0000 (0) >
<8 x i16> %a = < undef, #x0003 (3)	[based on undef], #x0003 (3)	[based on undef], #x0003 (3)	[based on undef], poison, poison, poison, poison >

Source:
<8 x i16> %#1 = < #x0003 (3)	[based on undef], #x0000 (0), #x0000 (0), #x0000 (0), poison, poison, poison, poison >
<8 x i16> %#2 = < #xfc66 (64614, -922)	[based on undef], #xf199 (61849, -3687)	[based on undef], #xfc66 (64614, -922)	[based on undef], #xfc66 (64614, -922)	[based on undef], #xfc66 (64614, -922)	[based on undef], #x0000 (0)	[based on undef], #xfc66 (64614, -922)	[based on undef], #x0000 (0)	[based on undef] >

Target:
<8 x i16> %#1 = < #x0000 (0), poison, poison, poison, poison, poison, poison, poison >
<8 x i16> %#2 = < #x0000 (0), #x0002 (2), #x0000 (0), #x0000 (0), #x0000 (0), #x0000 (0), #x0000 (0), #x0000 (0) >
<8 x i16> %#3 = < #xe333 (58163, -7373), #xe333 (58163, -7373), #xe333 (58163, -7373), #xe333 (58163, -7373), #xe333 (58163, -7373), #x0000 (0), #xe333 (58163, -7373), #x0000 (0) >
Source value: < #xfc66 (64614, -922)	[based on undef], #xf199 (61849, -3687)	[based on undef], #xfc66 (64614, -922)	[based on undef], #xfc66 (64614, -922)	[based on undef], #xfc66 (64614, -922)	[based on undef], #x0000 (0)	[based on undef], #xfc66 (64614, -922)	[based on undef], #x0000 (0)	[based on undef] >
Target value: < #xe333 (58163, -7373), #xe333 (58163, -7373), #xe333 (58163, -7373), #xe333 (58163, -7373), #xe333 (58163, -7373), #x0000 (0), #xe333 (58163, -7373), #x0000 (0) >

Pass: InstCombinePass
Command line: '/home/nlopes/llvm/build/bin/opt' '-load=/home/nlopes/alive2/build/tv/tv.so' '-load-pass-plugin=/home/nlopes/alive2/build/tv/tv.so' '-tv-exit-on-error' '-passes=instcombine' '-mtriple=x86_64-unknown-unknown' '-S' '-tv-smt-to=20000' '-tv-report-dir=/home/nlopes/alive2/build/logs' '-tv-smt-stats'
Wrote bitcode to: "/home/nlopes/alive2/build/logs/in_r5Rl5Xhi_Q3j9.bc"


------------------- SMT STATS -------------------
Num queries: 1053
Num invalid: 0
Num skips:   0
Num trivial: 1224 (53.8%)
Num timeout: 119 (11.3%)
Num errors:  0 (0.0%)
Num SAT:     621 (59.0%)
Num UNSAT:   313 (29.7%)
Alive2: Transform doesn't verify; aborting!

stderr:

RUN: at line 2: /home/nlopes/alive2/build/opt-alive.sh < /bitbucket/nlopes/llvm/llvm/test/Transforms/InstCombine/X86/x86-vector-shifts-inseltpoison.ll -passes=instcombine -mtriple=x86_64-unknown-unknown -S | /bitbucket/nlopes/llvm/build/bin/FileCheck /bitbucket/nlopes/llvm/llvm/test/Transforms/InstCombine/X86/x86-vector-shifts-inseltpoison.ll
+ /home/nlopes/alive2/build/opt-alive.sh -passes=instcombine -mtriple=x86_64-unknown-unknown -S
+ /bitbucket/nlopes/llvm/build/bin/FileCheck /bitbucket/nlopes/llvm/llvm/test/Transforms/InstCombine/X86/x86-vector-shifts-inseltpoison.ll

FileCheck error: '<stdin>' is empty.
FileCheck command line:  /bitbucket/nlopes/llvm/build/bin/FileCheck /bitbucket/nlopes/llvm/llvm/test/Transforms/InstCombine/X86/x86-vector-shifts-inseltpoison.ll

 

NOTE: This test would pass if undef didn't exist!

 

<-- Back