diff --git a/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td b/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td --- a/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td +++ b/llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td @@ -731,16 +731,6 @@ true : VRegClass); } -// Join strings in list using separator and ignoring empty elements -class Join strings, string separator> { - string ret = !foldl(!head(strings), !tail(strings), a, b, - !cond( - !and(!empty(a), !empty(b)) : "", - !empty(a) : b, - !empty(b) : a, - 1 : a#separator#b)); -} - class VPseudo : Pseudo, RISCVVPseudo { let BaseInstr = instr; @@ -1028,7 +1018,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1042,7 +1032,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1056,7 +1046,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1071,7 +1061,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1144,7 +1134,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1175,7 +1165,7 @@ RISCVVPseudo { let mayLoad = 0; let mayStore = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1194,7 +1184,7 @@ RISCVVPseudo { let mayLoad = 0; let mayStore = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1215,7 +1205,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $rs2"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $rs2"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1261,7 +1251,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; } @@ -1278,7 +1268,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1297,7 +1287,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1316,7 +1306,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let UsesMaskPolicy = 1; @@ -1336,7 +1326,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 1; @@ -1380,7 +1370,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $merge"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $merge"], ","); let HasVLOp = 1; let HasSEWOp = 1; let HasVecPolicyOp = 0; @@ -1399,7 +1389,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $rs3"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $rs3"], ","); let HasVLOp = 1; let HasSEWOp = 1; } @@ -1416,7 +1406,7 @@ let mayLoad = 0; let mayStore = 0; let hasSideEffects = 0; - let Constraints = Join<[Constraint, "$rd = $rs3"], ",">.ret; + let Constraints = !interleave([Constraint, "$rd = $rs3"], ","); let HasVecPolicyOp = 1; let HasVLOp = 1; let HasSEWOp = 1;