Skip to content

Commit 372842b

Browse files
authored
[X86][MC] Remove CMPCCXADD's CondCode flavor. (#103898)
To align with gas's latest changes. relate gas patch: https://sourceware.org/pipermail/binutils/2024-May/134360.html
1 parent 8d03710 commit 372842b

File tree

11 files changed

+668
-669
lines changed

11 files changed

+668
-669
lines changed

clang/test/CodeGen/X86/cmpccxadd-builtins.c

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -52,50 +52,50 @@ long long test_cmplxadd64(void *__A, long long __B, long long __C) {
5252
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_NB);
5353
}
5454

55-
int test_cmpnbexadd32(void *__A, int __B, int __C) {
56-
// CHECK-LABEL: @test_cmpnbexadd32(
55+
int test_cmpaxadd32(void *__A, int __B, int __C) {
56+
// CHECK-LABEL: @test_cmpaxadd32(
5757
// CHECK: call i32 @llvm.x86.cmpccxadd32(ptr %{{.*}}, i32 %{{.*}}, i32 %{{.*}}, i32 4)
5858
return _cmpccxadd_epi32(__A, __B, __C, _CMPCCX_Z);
5959
}
6060

61-
long long test_cmpnbexadd64(void *__A, long long __B, long long __C) {
62-
// CHECK-LABEL: @test_cmpnbexadd64(
61+
long long test_cmpaxadd64(void *__A, long long __B, long long __C) {
62+
// CHECK-LABEL: @test_cmpaxadd64(
6363
// CHECK: call i64 @llvm.x86.cmpccxadd64(ptr %{{.*}}, i64 %{{.*}}, i64 %{{.*}}, i32 4)
6464
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_Z);
6565
}
6666

67-
int test_cmpnbxadd32(void *__A, int __B, int __C) {
68-
// CHECK-LABEL: @test_cmpnbxadd32(
67+
int test_cmpaexadd32(void *__A, int __B, int __C) {
68+
// CHECK-LABEL: @test_cmpaexadd32(
6969
// CHECK: call i32 @llvm.x86.cmpccxadd32(ptr %{{.*}}, i32 %{{.*}}, i32 %{{.*}}, i32 5)
7070
return _cmpccxadd_epi32(__A, __B, __C, _CMPCCX_NZ);
7171
}
7272

73-
long long test_cmpnbxadd64(void *__A, long long __B, long long __C) {
74-
// CHECK-LABEL: @test_cmpnbxadd64(
73+
long long test_cmpaexadd64(void *__A, long long __B, long long __C) {
74+
// CHECK-LABEL: @test_cmpaexadd64(
7575
// CHECK: call i64 @llvm.x86.cmpccxadd64(ptr %{{.*}}, i64 %{{.*}}, i64 %{{.*}}, i32 5)
7676
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_NZ);
7777
}
7878

79-
int test_cmpnlexadd32(void *__A, int __B, int __C) {
80-
// CHECK-LABEL: @test_cmpnlexadd32(
79+
int test_cmpgxadd32(void *__A, int __B, int __C) {
80+
// CHECK-LABEL: @test_cmpgxadd32(
8181
// CHECK: call i32 @llvm.x86.cmpccxadd32(ptr %{{.*}}, i32 %{{.*}}, i32 %{{.*}}, i32 6)
8282
return _cmpccxadd_epi32(__A, __B, __C, _CMPCCX_BE);
8383
}
8484

85-
long long test_cmpnlexadd64(void *__A, long long __B, long long __C) {
86-
// CHECK-LABEL: @test_cmpnlexadd64(
85+
long long test_cmpgxadd64(void *__A, long long __B, long long __C) {
86+
// CHECK-LABEL: @test_cmpgxadd64(
8787
// CHECK: call i64 @llvm.x86.cmpccxadd64(ptr %{{.*}}, i64 %{{.*}}, i64 %{{.*}}, i32 6)
8888
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_BE);
8989
}
9090

91-
int test_cmpnlxadd32(void *__A, int __B, int __C) {
92-
// CHECK-LABEL: @test_cmpnlxadd32(
91+
int test_cmpgexadd32(void *__A, int __B, int __C) {
92+
// CHECK-LABEL: @test_cmpgexadd32(
9393
// CHECK: call i32 @llvm.x86.cmpccxadd32(ptr %{{.*}}, i32 %{{.*}}, i32 %{{.*}}, i32 7)
9494
return _cmpccxadd_epi32(__A, __B, __C, _CMPCCX_NBE);
9595
}
9696

97-
long long test_cmpnlxadd64(void *__A, long long __B, long long __C) {
98-
// CHECK-LABEL: @test_cmpnlxadd64(
97+
long long test_cmpgexadd64(void *__A, long long __B, long long __C) {
98+
// CHECK-LABEL: @test_cmpgexadd64(
9999
// CHECK: call i64 @llvm.x86.cmpccxadd64(ptr %{{.*}}, i64 %{{.*}}, i64 %{{.*}}, i32 7)
100100
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_NBE);
101101
}
@@ -136,14 +136,14 @@ long long test_cmpnsxadd64(void *__A, long long __B, long long __C) {
136136
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_P);
137137
}
138138

139-
int test_cmpnzxadd32(void *__A, int __B, int __C) {
140-
// CHECK-LABEL: @test_cmpnzxadd32(
139+
int test_cmpnexadd32(void *__A, int __B, int __C) {
140+
// CHECK-LABEL: @test_cmpnexadd32(
141141
// CHECK: call i32 @llvm.x86.cmpccxadd32(ptr %{{.*}}, i32 %{{.*}}, i32 %{{.*}}, i32 11)
142142
return _cmpccxadd_epi32(__A, __B, __C, _CMPCCX_NP);
143143
}
144144

145-
long long test_cmpnzxadd64(void *__A, long long __B, long long __C) {
146-
// CHECK-LABEL: @test_cmpnzxadd64(
145+
long long test_cmpnexadd64(void *__A, long long __B, long long __C) {
146+
// CHECK-LABEL: @test_cmpnexadd64(
147147
// CHECK: call i64 @llvm.x86.cmpccxadd64(ptr %{{.*}}, i64 %{{.*}}, i64 %{{.*}}, i32 11)
148148
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_NP);
149149
}
@@ -184,14 +184,14 @@ long long test_cmpsxadd64(void *__A, long long __B, long long __C) {
184184
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_LE);
185185
}
186186

187-
int test_cmpzxadd32(void *__A, int __B, int __C) {
188-
// CHECK-LABEL: @test_cmpzxadd32(
187+
int test_cmpexadd32(void *__A, int __B, int __C) {
188+
// CHECK-LABEL: @test_cmpexadd32(
189189
// CHECK: call i32 @llvm.x86.cmpccxadd32(ptr %{{.*}}, i32 %{{.*}}, i32 %{{.*}}, i32 15)
190190
return _cmpccxadd_epi32(__A, __B, __C, _CMPCCX_NLE);
191191
}
192192

193-
long long test_cmpzxadd64(void *__A, long long __B, long long __C) {
194-
// CHECK-LABEL: @test_cmpzxadd64(
193+
long long test_cmpexadd64(void *__A, long long __B, long long __C) {
194+
// CHECK-LABEL: @test_cmpexadd64(
195195
// CHECK: call i64 @llvm.x86.cmpccxadd64(ptr %{{.*}}, i64 %{{.*}}, i64 %{{.*}}, i32 15)
196196
return _cmpccxadd_epi64(__A, __B, __C, _CMPCCX_NLE);
197197
}

llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ void X86InstPrinterCommon::printCondCode(const MCInst *MI, unsigned Op,
3030
raw_ostream &O) {
3131
int64_t Imm = MI->getOperand(Op).getImm();
3232
unsigned Opc = MI->getOpcode();
33-
bool IsCMPCCXADD = X86::isCMPCCXADD(Opc);
3433
bool IsCCMPOrCTEST = X86::isCCMPCC(Opc) || X86::isCTESTCC(Opc);
3534

3635
// clang-format off
@@ -39,19 +38,19 @@ void X86InstPrinterCommon::printCondCode(const MCInst *MI, unsigned Op,
3938
case 0: O << "o"; break;
4039
case 1: O << "no"; break;
4140
case 2: O << "b"; break;
42-
case 3: O << (IsCMPCCXADD ? "nb" : "ae"); break;
43-
case 4: O << (IsCMPCCXADD ? "z" : "e"); break;
44-
case 5: O << (IsCMPCCXADD ? "nz" : "ne"); break;
41+
case 3: O << "ae"; break;
42+
case 4: O << "e"; break;
43+
case 5: O << "ne"; break;
4544
case 6: O << "be"; break;
46-
case 7: O << (IsCMPCCXADD ? "nbe" : "a"); break;
45+
case 7: O << "a"; break;
4746
case 8: O << "s"; break;
4847
case 9: O << "ns"; break;
4948
case 0xa: O << (IsCCMPOrCTEST ? "t" : "p"); break;
5049
case 0xb: O << (IsCCMPOrCTEST ? "f" : "np"); break;
5150
case 0xc: O << "l"; break;
52-
case 0xd: O << (IsCMPCCXADD ? "nl" : "ge"); break;
51+
case 0xd: O << "ge"; break;
5352
case 0xe: O << "le"; break;
54-
case 0xf: O << (IsCMPCCXADD ? "nle" : "g"); break;
53+
case 0xf: O << "g"; break;
5554
}
5655
// clang-format on
5756
}

0 commit comments

Comments
 (0)