Skip to content

Commit

Permalink
[X86][SSE]: Adding full coverage of MC encoding tests for the SSE isa…
Browse files Browse the repository at this point in the history
… sets.<NFC>

Summary:
NFC.
Adding MC regressions tests to cover all the SSE ISA sets as follows:
SSE, SSE2, SSE3, SSE4, SSE42, SSEMXCSR, SSE_PREFETCH, SSSE3

This patch is part of a larger task to cover MC encoding of all X86 ISA Sets.
See revision: https://reviews.llvm.org/D39952

Patch by Gadi Haber and Wang Tianqing

Reviewers: RKSimon, zvi, craig.topper, AndreiGrischenko, gadi.haber, LuoYuanke

Reviewed By: craig.topper

Subscribers: jfb, llvm-commits

Differential Revision: https://reviews.llvm.org/D40387

llvm-svn: 352955
  • Loading branch information
topperc committed Feb 2, 2019
1 parent 115b64b commit d3107a7
Show file tree
Hide file tree
Showing 20 changed files with 15,824 additions and 170 deletions.
82 changes: 1 addition & 81 deletions llvm/test/MC/X86/MMX-32.s
Original file line number Diff line number Diff line change
Expand Up @@ -272,35 +272,7 @@ paddd (%edx), %mm4
// CHECK: encoding: [0x0f,0xfe,0xe4]
paddd %mm4, %mm4

// CHECK: paddq -485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xd4,0xa4,0x82,0x10,0xe3,0x0f,0xe3]
paddq -485498096(%edx,%eax,4), %mm4

// CHECK: paddq 485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xd4,0xa4,0x82,0xf0,0x1c,0xf0,0x1c]
paddq 485498096(%edx,%eax,4), %mm4

// CHECK: paddq 485498096(%edx), %mm4
// CHECK: encoding: [0x0f,0xd4,0xa2,0xf0,0x1c,0xf0,0x1c]
paddq 485498096(%edx), %mm4

// CHECK: paddq 485498096, %mm4
// CHECK: encoding: [0x0f,0xd4,0x25,0xf0,0x1c,0xf0,0x1c]
paddq 485498096, %mm4

// CHECK: paddq 64(%edx,%eax), %mm4
// CHECK: encoding: [0x0f,0xd4,0x64,0x02,0x40]
paddq 64(%edx,%eax), %mm4

// CHECK: paddq (%edx), %mm4
// CHECK: encoding: [0x0f,0xd4,0x22]
paddq (%edx), %mm4

// CHECK: paddq %mm4, %mm4
// CHECK: encoding: [0x0f,0xd4,0xe4]
paddq %mm4, %mm4

// CHECK: paddsb -485498096(%edx,%eax,4), %mm4
// CHECK: paddsb -485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xec,0xa4,0x82,0x10,0xe3,0x0f,0xe3]
paddsb -485498096(%edx,%eax,4), %mm4

Expand Down Expand Up @@ -720,30 +692,6 @@ pcmpgtw (%edx), %mm4
// CHECK: encoding: [0x0f,0x65,0xe4]
pcmpgtw %mm4, %mm4

// CHECK: pinsrw $0, -485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xc4,0xa4,0x82,0x10,0xe3,0x0f,0xe3,0x00]
pinsrw $0, -485498096(%edx,%eax,4), %mm4

// CHECK: pinsrw $0, 485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xc4,0xa4,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
pinsrw $0, 485498096(%edx,%eax,4), %mm4

// CHECK: pinsrw $0, 485498096(%edx), %mm4
// CHECK: encoding: [0x0f,0xc4,0xa2,0xf0,0x1c,0xf0,0x1c,0x00]
pinsrw $0, 485498096(%edx), %mm4

// CHECK: pinsrw $0, 485498096, %mm4
// CHECK: encoding: [0x0f,0xc4,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
pinsrw $0, 485498096, %mm4

// CHECK: pinsrw $0, 64(%edx,%eax), %mm4
// CHECK: encoding: [0x0f,0xc4,0x64,0x02,0x40,0x00]
pinsrw $0, 64(%edx,%eax), %mm4

// CHECK: pinsrw $0, (%edx), %mm4
// CHECK: encoding: [0x0f,0xc4,0x22,0x00]
pinsrw $0, (%edx), %mm4

// CHECK: pmaddwd -485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xf5,0xa4,0x82,0x10,0xe3,0x0f,0xe3]
pmaddwd -485498096(%edx,%eax,4), %mm4
Expand Down Expand Up @@ -1364,34 +1312,6 @@ psubd (%edx), %mm4
// CHECK: encoding: [0x0f,0xfa,0xe4]
psubd %mm4, %mm4

// CHECK: psubq -485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xfb,0xa4,0x82,0x10,0xe3,0x0f,0xe3]
psubq -485498096(%edx,%eax,4), %mm4

// CHECK: psubq 485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xfb,0xa4,0x82,0xf0,0x1c,0xf0,0x1c]
psubq 485498096(%edx,%eax,4), %mm4

// CHECK: psubq 485498096(%edx), %mm4
// CHECK: encoding: [0x0f,0xfb,0xa2,0xf0,0x1c,0xf0,0x1c]
psubq 485498096(%edx), %mm4

// CHECK: psubq 485498096, %mm4
// CHECK: encoding: [0x0f,0xfb,0x25,0xf0,0x1c,0xf0,0x1c]
psubq 485498096, %mm4

// CHECK: psubq 64(%edx,%eax), %mm4
// CHECK: encoding: [0x0f,0xfb,0x64,0x02,0x40]
psubq 64(%edx,%eax), %mm4

// CHECK: psubq (%edx), %mm4
// CHECK: encoding: [0x0f,0xfb,0x22]
psubq (%edx), %mm4

// CHECK: psubq %mm4, %mm4
// CHECK: encoding: [0x0f,0xfb,0xe4]
psubq %mm4, %mm4

// CHECK: psubsb -485498096(%edx,%eax,4), %mm4
// CHECK: encoding: [0x0f,0xe8,0xa4,0x82,0x10,0xe3,0x0f,0xe3]
psubsb -485498096(%edx,%eax,4), %mm4
Expand Down
90 changes: 1 addition & 89 deletions llvm/test/MC/X86/MMX-64.s
Original file line number Diff line number Diff line change
Expand Up @@ -288,34 +288,6 @@ paddd %mm4, %mm4
// CHECK: encoding: [0x0f,0xfe,0x22]
paddd (%rdx), %mm4

// CHECK: paddq 485498096, %mm4
// CHECK: encoding: [0x0f,0xd4,0x24,0x25,0xf0,0x1c,0xf0,0x1c]
paddq 485498096, %mm4

// CHECK: paddq 64(%rdx), %mm4
// CHECK: encoding: [0x0f,0xd4,0x62,0x40]
paddq 64(%rdx), %mm4

// CHECK: paddq 64(%rdx,%rax,4), %mm4
// CHECK: encoding: [0x0f,0xd4,0x64,0x82,0x40]
paddq 64(%rdx,%rax,4), %mm4

// CHECK: paddq -64(%rdx,%rax,4), %mm4
// CHECK: encoding: [0x0f,0xd4,0x64,0x82,0xc0]
paddq -64(%rdx,%rax,4), %mm4

// CHECK: paddq 64(%rdx,%rax), %mm4
// CHECK: encoding: [0x0f,0xd4,0x64,0x02,0x40]
paddq 64(%rdx,%rax), %mm4

// CHECK: paddq %mm4, %mm4
// CHECK: encoding: [0x0f,0xd4,0xe4]
paddq %mm4, %mm4

// CHECK: paddq (%rdx), %mm4
// CHECK: encoding: [0x0f,0xd4,0x22]
paddq (%rdx), %mm4

// CHECK: paddsb 485498096, %mm4
// CHECK: encoding: [0x0f,0xec,0x24,0x25,0xf0,0x1c,0xf0,0x1c]
paddsb 485498096, %mm4
Expand Down Expand Up @@ -736,39 +708,7 @@ pcmpgtw %mm4, %mm4
// CHECK: encoding: [0x0f,0x65,0x22]
pcmpgtw (%rdx), %mm4

// CHECK: pextrw $0, %mm4, %r13d
// CHECK: encoding: [0x44,0x0f,0xc5,0xec,0x00]
pextrw $0, %mm4, %r13d

// CHECK: pinsrw $0, 485498096, %mm4
// CHECK: encoding: [0x0f,0xc4,0x24,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
pinsrw $0, 485498096, %mm4

// CHECK: pinsrw $0, 64(%rdx), %mm4
// CHECK: encoding: [0x0f,0xc4,0x62,0x40,0x00]
pinsrw $0, 64(%rdx), %mm4

// CHECK: pinsrw $0, 64(%rdx,%rax,4), %mm4
// CHECK: encoding: [0x0f,0xc4,0x64,0x82,0x40,0x00]
pinsrw $0, 64(%rdx,%rax,4), %mm4

// CHECK: pinsrw $0, -64(%rdx,%rax,4), %mm4
// CHECK: encoding: [0x0f,0xc4,0x64,0x82,0xc0,0x00]
pinsrw $0, -64(%rdx,%rax,4), %mm4

// CHECK: pinsrw $0, 64(%rdx,%rax), %mm4
// CHECK: encoding: [0x0f,0xc4,0x64,0x02,0x40,0x00]
pinsrw $0, 64(%rdx,%rax), %mm4

// CHECK: pinsrw $0, %r13d, %mm4
// CHECK: encoding: [0x41,0x0f,0xc4,0xe5,0x00]
pinsrw $0, %r13d, %mm4

// CHECK: pinsrw $0, (%rdx), %mm4
// CHECK: encoding: [0x0f,0xc4,0x22,0x00]
pinsrw $0, (%rdx), %mm4

// CHECK: pmaddwd 485498096, %mm4
// CHECK: pmaddwd 485498096, %mm4
// CHECK: encoding: [0x0f,0xf5,0x24,0x25,0xf0,0x1c,0xf0,0x1c]
pmaddwd 485498096, %mm4

Expand Down Expand Up @@ -1388,34 +1328,6 @@ psubd %mm4, %mm4
// CHECK: encoding: [0x0f,0xfa,0x22]
psubd (%rdx), %mm4

// CHECK: psubq 485498096, %mm4
// CHECK: encoding: [0x0f,0xfb,0x24,0x25,0xf0,0x1c,0xf0,0x1c]
psubq 485498096, %mm4

// CHECK: psubq 64(%rdx), %mm4
// CHECK: encoding: [0x0f,0xfb,0x62,0x40]
psubq 64(%rdx), %mm4

// CHECK: psubq 64(%rdx,%rax,4), %mm4
// CHECK: encoding: [0x0f,0xfb,0x64,0x82,0x40]
psubq 64(%rdx,%rax,4), %mm4

// CHECK: psubq -64(%rdx,%rax,4), %mm4
// CHECK: encoding: [0x0f,0xfb,0x64,0x82,0xc0]
psubq -64(%rdx,%rax,4), %mm4

// CHECK: psubq 64(%rdx,%rax), %mm4
// CHECK: encoding: [0x0f,0xfb,0x64,0x02,0x40]
psubq 64(%rdx,%rax), %mm4

// CHECK: psubq %mm4, %mm4
// CHECK: encoding: [0x0f,0xfb,0xe4]
psubq %mm4, %mm4

// CHECK: psubq (%rdx), %mm4
// CHECK: encoding: [0x0f,0xfb,0x22]
psubq (%rdx), %mm4

// CHECK: psubsb 485498096, %mm4
// CHECK: encoding: [0x0f,0xe8,0x24,0x25,0xf0,0x1c,0xf0,0x1c]
psubsb 485498096, %mm4
Expand Down
Loading

0 comments on commit d3107a7

Please sign in to comment.