[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-07 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/134065 >From 513b1ae05ed6049586a23acab6c0a2f7dbb48454 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Wed, 26 Mar 2025 09:24:29 +0100 Subject: [PATCH 1/5] [clang][RISCV] Set default CPU for vendor --- clang/

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-07 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/134065 >From 513b1ae05ed6049586a23acab6c0a2f7dbb48454 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Wed, 26 Mar 2025 09:24:29 +0100 Subject: [PATCH 1/4] [clang][RISCV] Set default CPU for vendor --- clang/

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-07 Thread Djordje Todorovic via cfe-commits
@@ -115,6 +115,20 @@ // MCPU-MIPS-P8700-SAME: "-target-feature" "+zba" // MCPU-MIPS-P8700-SAME: "-target-feature" "+zbb" +// RUN: %clang --target=riscv64-mti-linux-gnu -### -c %s 2>&1| FileCheck -check-prefix=MCPU-MTI-P8700 %s djtodoro wrote: Sure. https://

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-04 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/134065 >From 513b1ae05ed6049586a23acab6c0a2f7dbb48454 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Wed, 26 Mar 2025 09:24:29 +0100 Subject: [PATCH 1/2] [clang][RISCV] Set default CPU for vendor --- clang/

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-03 Thread Djordje Todorovic via cfe-commits
djtodoro wrote: > No tests? @topperc Added. https://github.com/llvm/llvm-project/pull/134065 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-03 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/134065 >From 513b1ae05ed6049586a23acab6c0a2f7dbb48454 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Wed, 26 Mar 2025 09:24:29 +0100 Subject: [PATCH 1/3] [clang][RISCV] Set default CPU for vendor --- clang/

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-02 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/134065 >From 513b1ae05ed6049586a23acab6c0a2f7dbb48454 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Wed, 26 Mar 2025 09:24:29 +0100 Subject: [PATCH 1/2] [clang][RISCV] Set default CPU for vendor --- clang/

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-02 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/134065 >From 513b1ae05ed6049586a23acab6c0a2f7dbb48454 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Wed, 26 Mar 2025 09:24:29 +0100 Subject: [PATCH 1/2] [clang][RISCV] Set default CPU for vendor --- clang/

[clang] [llvm] Add clang driver changes to support MTI RISC-V (PR #134065)

2025-04-02 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro created https://github.com/llvm/llvm-project/pull/134065 Add support for MipsTechnologies for RISC-V targets. >From 513b1ae05ed6049586a23acab6c0a2f7dbb48454 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Wed, 26 Mar 2025 09:24:29 +0100 Subject: [PATCH 1/2] [

[clang] [llvm] Reland [MIPS] Define SubTargetFeature for i6500 cpu (#132907) (PR #133366)

2025-03-28 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro approved this pull request. https://github.com/llvm/llvm-project/pull/133366 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Reland [MIPS] Define SubTargetFeature for i6500 cpu (#132907) (PR #133366)

2025-03-28 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro closed https://github.com/llvm/llvm-project/pull/133366 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Revert "[MIPS] Define SubTargetFeature for i6500 cpu" (PR #133215)

2025-03-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro closed https://github.com/llvm/llvm-project/pull/133215 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Revert "[MIPS] Define SubTargetFeature for i6500 cpu" (PR #133215)

2025-03-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro created https://github.com/llvm/llvm-project/pull/133215 Reverts llvm/llvm-project#132907 due to some test failures. >From 9c22bc410d3e157686ae5fd76f8c000e65949a9e Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Thu, 27 Mar 2025 09:04:45 +0100 Subject: [PATCH

[clang] [llvm] [MIPS] Define SubTargetFeature for i6500 cpu (PR #132907)

2025-03-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro closed https://github.com/llvm/llvm-project/pull/132907 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [MIPS] Define SubTargetFeature for i6500 cpu (PR #132907)

2025-03-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro approved this pull request. https://github.com/llvm/llvm-project/pull/132907 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [MIPS] Define SubTargetFeature for i6500 cpu (PR #132907)

2025-03-25 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,6 @@ +// RUN: %clang --target=mips64-linux-gnu -mcpu=i6400 -o %t -c %s 2>&1 | FileCheck --allow-empty %s +// CHECK-NOT: {{.*}} is not a recognized feature for this target + djtodoro wrote: nit: no need for 2 newlines here https://github.com/llvm/llvm

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2025-03-19 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro closed https://github.com/llvm/llvm-project/pull/117865 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-19 Thread Djordje Todorovic via cfe-commits
djtodoro wrote: Lets wait another day or two, since someone may have additional comments. Thanks @mgoudar! https://github.com/llvm/llvm-project/pull/130587 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-19 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro approved this pull request. https://github.com/llvm/llvm-project/pull/130587 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-12 Thread Djordje Todorovic via cfe-commits
@@ -47,14 +47,16 @@ bool MipsTargetInfo::processorSupportsGPR64() const { .Case("mips64r6", true) .Case("octeon", true) .Case("octeon+", true) + .Case("i6400", true) + .Case("i6500", true) .Default(false); } static constexpr llvm::StringLi

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-12 Thread Djordje Todorovic via cfe-commits
@@ -238,13 +238,10 @@ def ImplP5600 : SubtargetFeature<"p5600", "ProcImpl", "MipsSubtarget::CPU::P5600", "The P5600 Processor", [FeatureMips32r5]>; +// I6500 is multicluster version of I6400. Both are based on s

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-11 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro requested changes to this pull request. Thanks for working on this. https://github.com/llvm/llvm-project/pull/130587 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-11 Thread Djordje Todorovic via cfe-commits
@@ -43,7 +43,7 @@ class MipsSubtarget : public MipsGenSubtargetInfo { Mips3, Mips4, Mips5, Mips64, Mips64r2, Mips64r3, Mips64r5, Mips64r6 }; - enum class CPU { P5600 }; + enum class CPU { P5600, I6400 }; djtodoro wrote: do we need "i6500" here as well

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-11 Thread Djordje Todorovic via cfe-commits
@@ -43,7 +43,7 @@ class MipsSubtarget : public MipsGenSubtargetInfo { Mips3, Mips4, Mips5, Mips64, Mips64r2, Mips64r3, Mips64r5, Mips64r6 }; - enum class CPU { P5600 }; + enum class CPU { P5600, I6400 }; djtodoro wrote: So, we do not use this in this

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-10 Thread Djordje Todorovic via cfe-commits
@@ -1501,7 +1501,9 @@ bool clang::driver::findMIPSMultilibs(const Driver &D, CPUName == "mips64r5" || CPUName == "octeon" || CPUName == "octeon+", "-march=mips64r2", Flags); - addMultilibFlag(CPUName == "mips64r6",

[clang] [llvm] [MIPS] Add MIPS i6400 and i6500 processors (PR #130587)

2025-03-10 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro edited https://github.com/llvm/llvm-project/pull/130587 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro closed https://github.com/llvm/llvm-project/pull/121394 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
@@ -1228,6 +1228,21 @@ def HasVendorXCVbi : Predicate<"Subtarget->hasVendorXCVbi()">, AssemblerPredicate<(all_of FeatureVendorXCVbi), "'XCVbi' (CORE-V Immediate Branching)">; +// MIPS Extensions + +def FeatureVendorXMIPSCMove +: RISCVExten

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
@@ -1228,6 +1228,21 @@ def HasVendorXCVbi : Predicate<"Subtarget->hasVendorXCVbi()">, AssemblerPredicate<(all_of FeatureVendorXCVbi), "'XCVbi' (CORE-V Immediate Branching)">; +// MIPS Extensions + +def FeatureVendorXMIPSCMove +: RISCVExten

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
@@ -1228,6 +1228,21 @@ def HasVendorXCVbi : Predicate<"Subtarget->hasVendorXCVbi()">, AssemblerPredicate<(all_of FeatureVendorXCVbi), "'XCVbi' (CORE-V Immediate Branching)">; +// MIPS Extensions + +def FeatureVendorXMIPSCMove +: RISCVExten

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
djtodoro wrote: @topperc Is it ok now? :) https://github.com/llvm/llvm-project/pull/121394 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
djolertrk wrote: @topperc looks ok now? https://github.com/llvm/llvm-project/pull/121394 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djolertrk deleted https://github.com/llvm/llvm-project/pull/121394 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
@@ -514,6 +514,80 @@ class RVInstJhttps://github.com/llvm/llvm-project/pull/121394 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-27 Thread Djordje Todorovic via cfe-commits
@@ -514,6 +514,80 @@ class RVInstJhttps://github.com/llvm/llvm-project/pull/121394 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-24 Thread Djordje Todorovic via cfe-commits
djtodoro wrote: @lenary thanks! >You still have a whitespace change to this file? No, the whitespaces are there on `main` branch. I applied `clang-format` initially, and that is why it was included in one of my previous patches. https://github.com/llvm/llvm-project/pull/121394 ___

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-20 Thread Djordje Todorovic via cfe-commits
@@ -62,6 +62,15 @@ static cl::opt RISCVMinimumJumpTableEntries( "riscv-min-jump-table-entries", cl::Hidden, cl::desc("Set minimum number of entries to use a jump table on RISCV")); +static cl::opt +UseLoadStorePairsOpt("riscv-load-store-pairs", djt

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-20 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,82 @@ +//===-- RISCVInstrInfoXMips.td -*- tablegen -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-20 Thread Djordje Todorovic via cfe-commits
@@ -514,6 +514,78 @@ class RVInstJ +: RVInst { + bits<7> imm7; + bits<5> rs1; + bits<5> rd1; + bits<5> rd2; + + let Inst{31-27} = rd2; + let Inst{26-23} = imm7{6-3}; + let Inst{22-20} = 0b000; + let Inst{19-15} = rs1; + let Inst{14-12} = 0b100; + let Inst{11-7} = rd1

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-17 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,82 @@ +//===-- RISCVInstrInfoXMips.td -*- tablegen -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-17 Thread Djordje Todorovic via cfe-commits
@@ -1448,3 +1448,18 @@ def FeatureTaggedGlobals : SubtargetFeature<"tagged-globals", "AllowTaggedGlobals", "true", "Use an instruction sequence for taking the address of a global " "that allows a memory tag in the upper address bits">; + +def FeatureVendorMIPSCMove

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-15 Thread Djordje Todorovic via cfe-commits
@@ -62,6 +62,15 @@ static cl::opt RISCVMinimumJumpTableEntries( "riscv-min-jump-table-entries", cl::Hidden, cl::desc("Set minimum number of entries to use a jump table on RISCV")); +static cl::opt +UseLoadStorePairsOpt("riscv-load-store-pairs", djt

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-15 Thread Djordje Todorovic via cfe-commits
djtodoro wrote: @topperc Thanks for the comments! > This still isn't broken down enough. We usually like to see assembler support > in separate patches from code generation. I have removed `RISCVLoadStoreOptimizer` Pass, and will add it in a separate PR/commit. > Missing tests in test/MC/RIS

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-15 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,82 @@ +//===-- RISCVInstrInfoXMips.td -*- tablegen -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-15 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,370 @@ +//===- RISCVLoadStoreOptimizer.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-15 Thread Djordje Todorovic via cfe-commits
@@ -389,6 +390,13 @@ class RISCVPassConfig : public TargetPassConfig { DAG->addMutation(createStoreClusterDAGMutation( DAG->TII, DAG->TRI, /*ReorderWhileClustering=*/true)); } + +const RISCVSubtarget &ST = C->MF->getSubtarget(); +if (!ST.getMacroFusi

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-15 Thread Djordje Todorovic via cfe-commits
@@ -257,6 +257,146 @@ def simm12 : RISCVSImmLeafOp<12> { }]; } +// A 7-bit unsigned immediate where the least significant two bits are zero. djtodoro wrote: No need any more, thanks https://github.com/llvm/llvm-project/pull/121394 _

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2025-01-03 Thread Djordje Todorovic via cfe-commits
@@ -4963,6 +4963,10 @@ def msave_restore : Flag<["-"], "msave-restore">, Group, def mno_save_restore : Flag<["-"], "mno-save-restore">, Group, HelpText<"Disable using library calls for save and restore">; } // let Flags = [TargetSpecific] +def mload_store_pairs : Flag<["-"]

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2024-12-31 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/121394 >From 29d22560f2987e81ea66e4c7dea42f594bda709f Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Thu, 26 Dec 2024 09:09:24 +0100 Subject: [PATCH] [RISCV] Add MIPS extensions Adding two extensions for MIPS

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -2017,6 +2169,74 @@ def : Pat<(binop_allwusers GPR:$rs1, (AddiPair:$rs2)), } //===--===// + +// MIPS extensions +//===--===// + +let Pre

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2024-12-31 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro updated https://github.com/llvm/llvm-project/pull/121394 >From f833498eb48595cc6b2bd5dd0c1b05d941313877 Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Thu, 26 Dec 2024 09:09:24 +0100 Subject: [PATCH] [RISCV] Add MIPS extensions Adding two extensions for MIPS

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -426,6 +426,12 @@ The current vendor extensions supported are: ``Xwchc`` LLVM implements `the custom compressed opcodes present in some QingKe cores` by WCH / Nanjing Qinheng Microelectronics. The vendor refers to these opcodes by the name "XW". +``xmipscmove``

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -367,6 +372,16 @@ class RISCVPassConfig : public TargetPassConfig { DAG->addMutation(createStoreClusterDAGMutation( DAG->TII, DAG->TRI, /*ReorderWhileClustering=*/true)); } + +const RISCVSubtarget &ST = C->MF->getSubtarget(); +if (!ST.getMacroFusi

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -62,6 +62,20 @@ static cl::opt RISCVMinimumJumpTableEntries( "riscv-min-jump-table-entries", cl::Hidden, cl::desc("Set minimum number of entries to use a jump table on RISCV")); +static cl::opt djtodoro wrote: Well, I do not think so. https://gith

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -1447,6 +1447,23 @@ def TuneConditionalCompressedMoveFusion def HasConditionalMoveFusion : Predicate<"Subtarget->hasConditionalMoveFusion()">; def NoConditionalMoveFusion : Predicate<"!Subtarget->hasConditionalMoveFusion()">; +def TuneMIPSP8700 +: SubtargetFeature<"m

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -2710,6 +2713,45 @@ MachineInstr *RISCVInstrInfo::emitLdStWithAddr(MachineInstr &MemI, .setMemRefs(MemI.memoperands()) .setMIFlags(MemI.getFlags()); } +bool RISCVInstrInfo::isPairableLdStInstOpc(unsigned Opc) { + switch (Opc) { + default: +return false; +

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -1447,6 +1447,23 @@ def TuneConditionalCompressedMoveFusion def HasConditionalMoveFusion : Predicate<"Subtarget->hasConditionalMoveFusion()">; def NoConditionalMoveFusion : Predicate<"!Subtarget->hasConditionalMoveFusion()">; +def TuneMIPSP8700 +: SubtargetFeature<"m

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -2017,6 +2169,74 @@ def : Pat<(binop_allwusers GPR:$rs1, (AddiPair:$rs2)), } //===--===// + +// MIPS extensions +//===--===// + +let Pre

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -2017,6 +2169,74 @@ def : Pat<(binop_allwusers GPR:$rs1, (AddiPair:$rs2)), } //===--===// + djtodoro wrote: Addressed in https://github.com/llvm/llvm-project/pull/121394 https://github.

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -514,6 +514,78 @@ class RVInstJhttps://github.com/llvm/llvm-project/pull/121394 https://github.com/llvm/llvm-project/pull/117865 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -298,6 +298,15 @@ class RISCVInstrInfo : public RISCVGenInstrInfo { unsigned getTailDuplicateSize(CodeGenOptLevel OptLevel) const override; + /// Return true if pairing the given load or store may be paired with another. + static bool isPairableLdStInstOpc(unsigned Op

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,371 @@ +//===- RISCVLoadStoreOptimizer.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,371 @@ +//===- RISCVLoadStoreOptimizer.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,371 @@ +//===- RISCVLoadStoreOptimizer.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-31 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,371 @@ +//===- RISCVLoadStoreOptimizer.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISCV] Add MIPS extensions (PR #121394)

2024-12-31 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro created https://github.com/llvm/llvm-project/pull/121394 Adding two extensions for MIPS p8700 CPU: 1. cmove (conditional move) 2. lsp (load/store pair) The official product page here: https://mips.com/products/hardware/p8700 >From a2e1fd5ffab4fe64a160571a9dffaa

[clang] [llvm] [RISCV] Add scheduling model for mips p8700 CPU (PR #119885)

2024-12-16 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,290 @@ +//===-- RISCVSchedMIPSP8700.td - MIPS RISC-V Processor -*- tablegen -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISCV] Add scheduling model for mips p8700 CPU (PR #119885)

2024-12-16 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,290 @@ +//===-- RISCVSchedMIPSP8700.td - MIPS RISC-V Processor -*- tablegen -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISCV] Add MIPS P8700 processor (PR #119882)

2024-12-16 Thread Djordje Todorovic via cfe-commits
@@ -1477,6 +1477,10 @@ def TuneConditionalCompressedMoveFusion def HasConditionalMoveFusion : Predicate<"Subtarget->hasConditionalMoveFusion()">; def NoConditionalMoveFusion : Predicate<"!Subtarget->hasConditionalMoveFusion()">; +def TuneMIPSP8700 +: SubtargetFeature<"m

[clang] [llvm] [RISCV] Add MIPS P8700 processor (PR #119882)

2024-12-13 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro closed https://github.com/llvm/llvm-project/pull/119882 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISCV] Add scheduling model for mips p8700 CPU (PR #119885)

2024-12-13 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro edited https://github.com/llvm/llvm-project/pull/119885 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-13 Thread Djordje Todorovic via cfe-commits
@@ -252,9 +252,17 @@ static const char *getLDMOption(const llvm::Triple &T, const ArgList &Args) { case llvm::Triple::ppc64le: return "elf64lppc"; case llvm::Triple::riscv32: -return "elf32lriscv"; - case llvm::Triple::riscv64: -return "elf64lriscv"; + case l

[clang] [llvm] Add scheduling model for mips p8700 CPU (PR #119885)

2024-12-13 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro created https://github.com/llvm/llvm-project/pull/119885 Depends on https://github.com/llvm/llvm-project/pull/119882. >From 6e17be47f6a36f417547d9bff2f31b8c421ee03b Mon Sep 17 00:00:00 2001 From: Djordje Todorovic Date: Mon, 9 Dec 2024 13:01:11 +0100 Subject: [PATCH

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-13 Thread Djordje Todorovic via cfe-commits
@@ -22,6 +22,7 @@ def WriteIMul32 : SchedWrite;// 32-bit multiply on RV64I def WriteJmp: SchedWrite;// Jump def WriteJal: SchedWrite;// Jump and link def WriteJalr : SchedWrite;// Jump and link register +def WriteJmpReg : SchedWrit

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-12-13 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,279 @@ +//===-- RISCVSchedMIPSP8700.td - MIPS RISC-V Processor -*- tablegen -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISCV] Add MIPS P8700 processor (PR #119882)

2024-12-13 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro created https://github.com/llvm/llvm-project/pull/119882 The P8700 is a high-performance processor from MIPS designed to meet the demands of modern workloads, offering exceptional scalability and efficiency. It builds on MIPS's established architectural strengths wh

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-11-27 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,158 @@ +//===--- RISCVRemoveBackToBackBranches.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-11-27 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,158 @@ +//===--- RISCVRemoveBackToBackBranches.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-11-27 Thread Djordje Todorovic via cfe-commits
@@ -0,0 +1,158 @@ +//===--- RISCVRemoveBackToBackBranches.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-11-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro edited https://github.com/llvm/llvm-project/pull/117865 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-11-27 Thread Djordje Todorovic via cfe-commits
djtodoro wrote: > Extensions belong in their own PRs, ditto CPU/scheduler, driver and any > additional passes. Each PR is one commit and this is not one commit's worth > of changes. @jrtc27 Yes! I agree. That is why I marked it as `Draft`. The next step is to divide it into multiple commits.

[clang] [llvm] [RISC-V] Add support for MIPS P8700 CPU (PR #117865)

2024-11-27 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro converted_to_draft https://github.com/llvm/llvm-project/pull/117865 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Catch missing format attributes (PR #70024)

2024-07-12 Thread Djordje Todorovic via cfe-commits
https://github.com/djtodoro closed https://github.com/llvm/llvm-project/pull/70024 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] b5b6d3a - [Debugify] Port verify-debuginfo-preserve to NewPM

2022-07-06 Thread Djordje Todorovic via cfe-commits
Author: Nikola Tesic Date: 2022-07-06T17:07:20+02:00 New Revision: b5b6d3a41b4eba23b604f37942b892a382caae57 URL: https://github.com/llvm/llvm-project/commit/b5b6d3a41b4eba23b604f37942b892a382caae57 DIFF: https://github.com/llvm/llvm-project/commit/b5b6d3a41b4eba23b604f37942b892a382caae57.diff

[clang] 73777b4 - [Debugify] Optimize debugify original mode

2022-03-22 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2022-03-22T12:14:00+01:00 New Revision: 73777b4c35a390617cce0f6b4516e98fe5a88df1 URL: https://github.com/llvm/llvm-project/commit/73777b4c35a390617cce0f6b4516e98fe5a88df1 DIFF: https://github.com/llvm/llvm-project/commit/73777b4c35a390617cce0f6b4516e98fe5a88df1.d

[clang] 8420a53 - [Debugify] Expose original debug info preservation check as CC1 option

2021-03-25 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2021-03-25T05:29:42-07:00 New Revision: 8420a5332486c682c1aaddbcb58a571869d19832 URL: https://github.com/llvm/llvm-project/commit/8420a5332486c682c1aaddbcb58a571869d19832 DIFF: https://github.com/llvm/llvm-project/commit/8420a5332486c682c1aaddbcb58a571869d19832.d

[clang] 40a3fcb - [DebugInfo][CallSites] Remove decl subprograms from 'retainedTypes:'

2020-06-01 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-06-01T09:10:05+02:00 New Revision: 40a3fcb05c83c41862038277aa667c956e7cac82 URL: https://github.com/llvm/llvm-project/commit/40a3fcb05c83c41862038277aa667c956e7cac82 DIFF: https://github.com/llvm/llvm-project/commit/40a3fcb05c83c41862038277aa667c956e7cac82.d

[clang] 170ac4b - [CSInfo][ISEL] Call site info generation support for Mips

2020-05-15 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-05-15T10:13:15+02:00 New Revision: 170ac4be3392201d5f5e124e8a1b7d78de3f82c8 URL: https://github.com/llvm/llvm-project/commit/170ac4be3392201d5f5e124e8a1b7d78de3f82c8 DIFF: https://github.com/llvm/llvm-project/commit/170ac4be3392201d5f5e124e8a1b7d78de3f82c8.d

[clang] d9b9621 - Reland D73534: [DebugInfo] Enable the debug entry values feature by default

2020-03-19 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-03-19T13:57:30+01:00 New Revision: d9b962100942c71a4c26debaa716f7ab0c4ea8a1 URL: https://github.com/llvm/llvm-project/commit/d9b962100942c71a4c26debaa716f7ab0c4ea8a1 DIFF: https://github.com/llvm/llvm-project/commit/d9b962100942c71a4c26debaa716f7ab0c4ea8a1.d

[clang] 5aa5c94 - Reland "[DebugInfo] Enable the debug entry values feature by default"

2020-03-10 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-03-10T09:15:06+01:00 New Revision: 5aa5c943f7da155b95564058cd5d50a93eabfc89 URL: https://github.com/llvm/llvm-project/commit/5aa5c943f7da155b95564058cd5d50a93eabfc89 DIFF: https://github.com/llvm/llvm-project/commit/5aa5c943f7da155b95564058cd5d50a93eabfc89.d

[clang] c15c68a - [CallSiteInfo] Enable the call site info only for -g + optimizations

2020-03-09 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-03-09T12:12:44+01:00 New Revision: c15c68abdc6f1afece637bdedba808676191a8e6 URL: https://github.com/llvm/llvm-project/commit/c15c68abdc6f1afece637bdedba808676191a8e6 DIFF: https://github.com/llvm/llvm-project/commit/c15c68abdc6f1afece637bdedba808676191a8e6.d

[clang] 2f215cf - Revert "Reland "[DebugInfo] Enable the debug entry values feature by default""

2020-02-20 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-02-20T14:41:39+01:00 New Revision: 2f215cf36adced6bf1abda4bdbbc6422c1369353 URL: https://github.com/llvm/llvm-project/commit/2f215cf36adced6bf1abda4bdbbc6422c1369353 DIFF: https://github.com/llvm/llvm-project/commit/2f215cf36adced6bf1abda4bdbbc6422c1369353.d

[clang] faff707 - Reland "[DebugInfo] Enable the debug entry values feature by default"

2020-02-19 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-02-19T11:12:26+01:00 New Revision: faff707db82d7db12fcd9f7826b8741261230e63 URL: https://github.com/llvm/llvm-project/commit/faff707db82d7db12fcd9f7826b8741261230e63 DIFF: https://github.com/llvm/llvm-project/commit/faff707db82d7db12fcd9f7826b8741261230e63.d

[clang] 2bf44d1 - Revert "Reland "[DebugInfo] Enable the debug entry values feature by default""

2020-02-18 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-02-18T16:38:11+01:00 New Revision: 2bf44d11cb42a952bdeb778210d8b3e737f0b96e URL: https://github.com/llvm/llvm-project/commit/2bf44d11cb42a952bdeb778210d8b3e737f0b96e DIFF: https://github.com/llvm/llvm-project/commit/2bf44d11cb42a952bdeb778210d8b3e737f0b96e.d

[clang] a82d3e8 - Reland "[DebugInfo] Enable the debug entry values feature by default"

2020-02-18 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-02-18T14:41:08+01:00 New Revision: a82d3e8a6e67473c94a5ce6345372748e9b61718 URL: https://github.com/llvm/llvm-project/commit/a82d3e8a6e67473c94a5ce6345372748e9b61718 DIFF: https://github.com/llvm/llvm-project/commit/a82d3e8a6e67473c94a5ce6345372748e9b61718.d

[clang] 97ed706 - Revert "[DebugInfo] Enable the debug entry values feature by default"

2020-02-12 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-02-12T11:59:04+01:00 New Revision: 97ed706a962af7c6835c7b6716207c4072011ac1 URL: https://github.com/llvm/llvm-project/commit/97ed706a962af7c6835c7b6716207c4072011ac1 DIFF: https://github.com/llvm/llvm-project/commit/97ed706a962af7c6835c7b6716207c4072011ac1.d

[clang] 9f6ff07 - [DebugInfo] Enable the debug entry values feature by default

2020-02-12 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2020-02-12T10:25:14+01:00 New Revision: 9f6ff07f8a396dfc736c4cb6f9fba9a203531329 URL: https://github.com/llvm/llvm-project/commit/9f6ff07f8a396dfc736c4cb6f9fba9a203531329 DIFF: https://github.com/llvm/llvm-project/commit/9f6ff07f8a396dfc736c4cb6f9fba9a203531329.d

Re: [clang] ce1f95a - Reland "[clang] Remove the DIFlagArgumentNotModified debug info flag"

2019-12-29 Thread Djordje Todorovic via cfe-commits
Best regards, > Djordje > > On 26.12.19. 22:33, David Blaikie wrote: > > > > > > On Wed, Nov 20, 2019 at 1:08 AM Djordje Todorovic via cfe-commits > mailto:cfe-commits@lists.llvm.org> > <mailto:cfe-commits@lists.llvm.

Re: [clang] ce1f95a - Reland "[clang] Remove the DIFlagArgumentNotModified debug info flag"

2019-12-26 Thread Djordje Todorovic via cfe-commits
good point for improvements. Best regards, Djordje On 26.12.19. 22:33, David Blaikie wrote: > > > On Wed, Nov 20, 2019 at 1:08 AM Djordje Todorovic via cfe-commits > mailto:cfe-commits@lists.llvm.org>> wrote: > > > Author: Djordje Todorovic > Date:

[clang] ce1f95a - Reland "[clang] Remove the DIFlagArgumentNotModified debug info flag"

2019-11-20 Thread Djordje Todorovic via cfe-commits
Author: Djordje Todorovic Date: 2019-11-20T10:08:07+01:00 New Revision: ce1f95a6e077693f93d8869245f911aff3eb7e4c URL: https://github.com/llvm/llvm-project/commit/ce1f95a6e077693f93d8869245f911aff3eb7e4c DIFF: https://github.com/llvm/llvm-project/commit/ce1f95a6e077693f93d8869245f911aff3eb7e4c.d

  1   2   >