Skip to content

Commit c0ac951

Browse files
authored
[RISCV] Update Xqci to v0.13.0 (#144398)
1 parent 84d879d commit c0ac951

File tree

6 files changed

+32
-32
lines changed

6 files changed

+32
-32
lines changed

clang/include/clang/Basic/AttrDocs.td

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2934,7 +2934,7 @@ https://gcc.gnu.org/onlinedocs/gcc/RISC-V-Function-Attributes.html
29342934
https://riscv.org/specifications/privileged-isa/
29352935
The RISC-V Instruction Set Manual Volume II: Privileged Architecture
29362936
Version 1.10.
2937-
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.7
2937+
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0
29382938
https://sifive.cdn.prismic.io/sifive/d1984d2b-c9b9-4c91-8de0-d68a5e64fa0f_sifive-interrupt-cookbook-v1p2.pdf
29392939
}];
29402940
}

clang/test/Driver/print-supported-extensions-riscv.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -221,14 +221,14 @@
221221
// CHECK-NEXT: xqcicli 0.3 'Xqcicli' (Qualcomm uC Conditional Load Immediate Extension)
222222
// CHECK-NEXT: xqcicm 0.2 'Xqcicm' (Qualcomm uC Conditional Move Extension)
223223
// CHECK-NEXT: xqcics 0.2 'Xqcics' (Qualcomm uC Conditional Select Extension)
224-
// CHECK-NEXT: xqcicsr 0.3 'Xqcicsr' (Qualcomm uC CSR Extension)
225-
// CHECK-NEXT: xqciint 0.7 'Xqciint' (Qualcomm uC Interrupts Extension)
224+
// CHECK-NEXT: xqcicsr 0.4 'Xqcicsr' (Qualcomm uC CSR Extension)
225+
// CHECK-NEXT: xqciint 0.10 'Xqciint' (Qualcomm uC Interrupts Extension)
226226
// CHECK-NEXT: xqciio 0.1 'Xqciio' (Qualcomm uC External Input Output Extension)
227227
// CHECK-NEXT: xqcilb 0.2 'Xqcilb' (Qualcomm uC Long Branch Extension)
228228
// CHECK-NEXT: xqcili 0.2 'Xqcili' (Qualcomm uC Load Large Immediate Extension)
229229
// CHECK-NEXT: xqcilia 0.2 'Xqcilia' (Qualcomm uC Large Immediate Arithmetic Extension)
230230
// CHECK-NEXT: xqcilo 0.3 'Xqcilo' (Qualcomm uC Large Offset Load Store Extension)
231-
// CHECK-NEXT: xqcilsm 0.5 'Xqcilsm' (Qualcomm uC Load Store Multiple Extension)
231+
// CHECK-NEXT: xqcilsm 0.6 'Xqcilsm' (Qualcomm uC Load Store Multiple Extension)
232232
// CHECK-NEXT: xqcisim 0.2 'Xqcisim' (Qualcomm uC Simulation Hint Extension)
233233
// CHECK-NEXT: xqcisls 0.2 'Xqcisls' (Qualcomm uC Scaled Load Store Extension)
234234
// CHECK-NEXT: xqcisync 0.3 'Xqcisync' (Qualcomm uC Sync Delay Extension)

llvm/docs/RISCVUsage.rst

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -445,58 +445,58 @@ The current vendor extensions supported are:
445445
LLVM implements `version 0.1 of the 16-bit Push/Pop instructions and double-moves extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqccmp_extension-0.1.0>`__ by Qualcomm. All instructions are prefixed with `qc.` as described in the specification.
446446

447447
``experimental-Xqcia``
448-
LLVM implements `version 0.7 of the Qualcomm uC Arithmetic extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
448+
LLVM implements `version 0.7 of the Qualcomm uC Arithmetic extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
449449

450450
``experimental-Xqciac``
451-
LLVM implements `version 0.3 of the Qualcomm uC Load-Store Address Calculation extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
451+
LLVM implements `version 0.3 of the Qualcomm uC Load-Store Address Calculation extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
452452

453453
``experimental-Xqcibi``
454-
LLVM implements `version 0.2 of the Qualcomm uC Branch Immediate extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
454+
LLVM implements `version 0.2 of the Qualcomm uC Branch Immediate extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
455455

456456
``experimental-Xqcibm``
457-
LLVM implements `version 0.8 of the Qualcomm uC Bit Manipulation extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
457+
LLVM implements `version 0.8 of the Qualcomm uC Bit Manipulation extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
458458

459459
``experimental-Xqcicli``
460-
LLVM implements `version 0.3 of the Qualcomm uC Conditional Load Immediate extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
460+
LLVM implements `version 0.3 of the Qualcomm uC Conditional Load Immediate extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
461461

462462
``experimental-Xqcicm``
463-
LLVM implements `version 0.2 of the Qualcomm uC Conditional Move extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
463+
LLVM implements `version 0.2 of the Qualcomm uC Conditional Move extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
464464

465465
``experimental-Xqcics``
466-
LLVM implements `version 0.2 of the Qualcomm uC Conditional Select extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
466+
LLVM implements `version 0.2 of the Qualcomm uC Conditional Select extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
467467

468468
``experimental-Xqcicsr``
469-
LLVM implements `version 0.3 of the Qualcomm uC CSR extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
469+
LLVM implements `version 0.4 of the Qualcomm uC CSR extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
470470

471471
``experimental-Xqciint``
472-
LLVM implements `version 0.7 of the Qualcomm uC Interrupts extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
472+
LLVM implements `version 0.10 of the Qualcomm uC Interrupts extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
473473

474474
``experimental-Xqciio``
475-
LLVM implements `version 0.1 of the Qualcomm uC External Input Output extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
475+
LLVM implements `version 0.1 of the Qualcomm uC External Input Output extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
476476

477477
``experimental-Xqcilb``
478-
LLVM implements `version 0.2 of the Qualcomm uC Long Branch extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
478+
LLVM implements `version 0.2 of the Qualcomm uC Long Branch extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
479479

480480
``experimental-Xqcili``
481-
LLVM implements `version 0.2 of the Qualcomm uC Load Large Immediate extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
481+
LLVM implements `version 0.2 of the Qualcomm uC Load Large Immediate extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
482482

483483
``experimental-Xqcilia``
484-
LLVM implements `version 0.2 of the Qualcomm uC Large Immediate Arithmetic extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
484+
LLVM implements `version 0.2 of the Qualcomm uC Large Immediate Arithmetic extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
485485

486486
``experimental-Xqcilo``
487-
LLVM implements `version 0.3 of the Qualcomm uC Large Offset Load Store extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
487+
LLVM implements `version 0.3 of the Qualcomm uC Large Offset Load Store extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
488488

489489
``experimental-Xqcilsm``
490490
LLVM implements `version 0.6 of the Qualcomm uC Load Store Multiple extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
491491

492492
``experimental-Xqcisim``
493-
LLVM implements `version 0.2 of the Qualcomm uC Simulation Hint extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
493+
LLVM implements `version 0.2 of the Qualcomm uC Simulation Hint extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
494494

495495
``experimental-Xqcisls``
496-
LLVM implements `version 0.2 of the Qualcomm uC Scaled Load Store extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
496+
LLVM implements `version 0.2 of the Qualcomm uC Scaled Load Store extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
497497

498498
``experimental-Xqcisync``
499-
LLVM implements `version 0.3 of the Qualcomm uC Sync Delay extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.11.0>`__ by Qualcomm. These instructions are only available for riscv32.
499+
LLVM implements `version 0.3 of the Qualcomm uC Sync Delay extension specification <https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.13.0>`__ by Qualcomm. These instructions are only available for riscv32.
500500

501501
``Xmipscmov``
502502
LLVM implements conditional move for the `p8700 processor <https://mips.com/products/hardware/p8700/>`__ by MIPS.

llvm/lib/Target/RISCV/RISCVFeatures.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1488,14 +1488,14 @@ def HasVendorXqcics
14881488
"'Xqcics' (Qualcomm uC Conditional Select Extension)">;
14891489

14901490
def FeatureVendorXqcicsr
1491-
: RISCVExperimentalExtension<0, 3, "Qualcomm uC CSR Extension">;
1491+
: RISCVExperimentalExtension<0, 4, "Qualcomm uC CSR Extension">;
14921492
def HasVendorXqcicsr
14931493
: Predicate<"Subtarget->hasVendorXqcicsr()">,
14941494
AssemblerPredicate<(all_of FeatureVendorXqcicsr),
14951495
"'Xqcicsr' (Qualcomm uC CSR Extension)">;
14961496

14971497
def FeatureVendorXqciint
1498-
: RISCVExperimentalExtension<0, 7, "Qualcomm uC Interrupts Extension",
1498+
: RISCVExperimentalExtension<0, 10, "Qualcomm uC Interrupts Extension",
14991499
[FeatureStdExtZca]>;
15001500
def HasVendorXqciint
15011501
: Predicate<"Subtarget->hasVendorXqciint()">,
@@ -1542,7 +1542,7 @@ def HasVendorXqcilo
15421542
"'Xqcilo' (Qualcomm uC Large Offset Load Store Extension)">;
15431543

15441544
def FeatureVendorXqcilsm
1545-
: RISCVExperimentalExtension<0, 5,
1545+
: RISCVExperimentalExtension<0, 6,
15461546
"Qualcomm uC Load Store Multiple Extension">;
15471547
def HasVendorXqcilsm
15481548
: Predicate<"Subtarget->hasVendorXqcilsm()">,

llvm/test/CodeGen/RISCV/attributes.ll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -445,14 +445,14 @@
445445
; RV32XQCICLI: .attribute 5, "rv32i2p1_xqcicli0p3"
446446
; RV32XQCICM: .attribute 5, "rv32i2p1_zca1p0_xqcicm0p2"
447447
; RV32XQCICS: .attribute 5, "rv32i2p1_xqcics0p2"
448-
; RV32XQCICSR: .attribute 5, "rv32i2p1_xqcicsr0p3"
449-
; RV32XQCIINT: .attribute 5, "rv32i2p1_zca1p0_xqciint0p7"
448+
; RV32XQCICSR: .attribute 5, "rv32i2p1_xqcicsr0p4"
449+
; RV32XQCIINT: .attribute 5, "rv32i2p1_zca1p0_xqciint0p10"
450450
; RV32XQCIIO: .attribute 5, "rv32i2p1_xqciio0p1"
451451
; RV32XQCILB: .attribute 5, "rv32i2p1_zca1p0_xqcilb0p2"
452452
; RV32XQCILI: .attribute 5, "rv32i2p1_zca1p0_xqcili0p2"
453453
; RV32XQCILIA: .attribute 5, "rv32i2p1_zca1p0_xqcilia0p2"
454454
; RV32XQCILO: .attribute 5, "rv32i2p1_zca1p0_xqcilo0p3"
455-
; RV32XQCILSM: .attribute 5, "rv32i2p1_xqcilsm0p5"
455+
; RV32XQCILSM: .attribute 5, "rv32i2p1_xqcilsm0p6"
456456
; RV32XQCISIM: attribute 5, "rv32i2p1_zca1p0_xqcisim0p2"
457457
; RV32XQCISLS: .attribute 5, "rv32i2p1_xqcisls0p2"
458458
; RV32XQCISYNC: attribute 5, "rv32i2p1_zca1p0_xqcisync0p3"

llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -684,9 +684,9 @@ TEST(ParseArchString, RejectsConflictingExtensions) {
684684
for (StringRef Input :
685685
{"rv64i_xqcia0p7", "rv64i_xqciac0p3", "rv64i_xqcibi0p2",
686686
"rv64i_xqcibm0p8", "rv64i_xqcicli0p3", "rv64i_xqcicm0p2",
687-
"rv64i_xqcics0p2", "rv64i_xqcicsr0p3", "rv64i_xqciint0p7",
687+
"rv64i_xqcics0p2", "rv64i_xqcicsr0p4", "rv64i_xqciint0p10",
688688
"rv64i_xqciio0p1", "rv64i_xqcilb0p2", "rv64i_xqcili0p2",
689-
"rv64i_xqcilia0p2", "rv64i_xqcilo0p3", "rv64i_xqcilsm0p5",
689+
"rv64i_xqcilia0p2", "rv64i_xqcilo0p3", "rv64i_xqcilsm0p6",
690690
"rv64i_xqcisim0p2", "rv64i_xqcisls0p2", "rv64i_xqcisync0p3"}) {
691691
EXPECT_THAT(
692692
toString(RISCVISAInfo::parseArchString(Input, true).takeError()),
@@ -1192,14 +1192,14 @@ Experimental extensions
11921192
xqcicli 0.3
11931193
xqcicm 0.2
11941194
xqcics 0.2
1195-
xqcicsr 0.3
1196-
xqciint 0.7
1195+
xqcicsr 0.4
1196+
xqciint 0.10
11971197
xqciio 0.1
11981198
xqcilb 0.2
11991199
xqcili 0.2
12001200
xqcilia 0.2
12011201
xqcilo 0.3
1202-
xqcilsm 0.5
1202+
xqcilsm 0.6
12031203
xqcisim 0.2
12041204
xqcisls 0.2
12051205
xqcisync 0.3

0 commit comments

Comments
 (0)