[clang] [flang] [mlir] [flang] Add basic -mtune support (PR #95043)

2024-06-24 Thread Alexis Perry-Holby via cfe-commits
ns.cpp
+++ b/flang/lib/Frontend/FrontendActions.cpp
@@ -293,7 +293,7 @@ bool CodeGenAction::beginSourceFileAction() {
   kindMap, ci.getInvocation().getLoweringOpts(),
   ci.getInvocation().getFrontendOpts().envDefaults,
   ci.getInvocation().getFrontendOpts().features, targetMachine,
-  ci.getInvocation().getTargetOpts().tuneCPU);
+  ci.getInvocation().getTargetOpts().cpuToTuneFor);
 
   // Fetch module from lb, so we can set
   mlirModule = std::make_unique(lb.getModule());

>From 0fe4f9237bffca18f7b5499a1897d3ecc3054ba3 Mon Sep 17 00:00:00 2001
From: Alexis Perry-Holby 
Date: Wed, 12 Jun 2024 13:02:28 -0600
Subject: [PATCH 07/11] added mlir import/export tests for tune-cpu

---
 mlir/test/Target/LLVMIR/Import/tune-cpu.ll | 9 +
 mlir/test/Target/LLVMIR/tune-cpu.mlir  | 7 +++
 2 files changed, 16 insertions(+)
 create mode 100644 mlir/test/Target/LLVMIR/Import/tune-cpu.ll
 create mode 100644 mlir/test/Target/LLVMIR/tune-cpu.mlir

diff --git a/mlir/test/Target/LLVMIR/Import/tune-cpu.ll 
b/mlir/test/Target/LLVMIR/Import/tune-cpu.ll
new file mode 100644
index 0..9607da82c298a
--- /dev/null
+++ b/mlir/test/Target/LLVMIR/Import/tune-cpu.ll
@@ -0,0 +1,9 @@
+; RUN: mlir-translate -import-llvm -split-input-file %s | FileCheck %s
+
+; CHECK-LABEL: llvm.func @tune_cpu()
+; CHECK-SAME: tune_cpu = "pentium4"
+define void @tune_cpu() #0 {
+  ret void
+}
+
+attributes #0 = { "tune-cpu"="pentium4" }
diff --git a/mlir/test/Target/LLVMIR/tune-cpu.mlir 
b/mlir/test/Target/LLVMIR/tune-cpu.mlir
new file mode 100644
index 0..06268022fb235
--- /dev/null
+++ b/mlir/test/Target/LLVMIR/tune-cpu.mlir
@@ -0,0 +1,7 @@
+// RUN: mlir-translate -mlir-to-llvmir %s | FileCheck %s
+
+// CHECK: define void @tune_cpu() #[[ATTRS:.*]] {
+// CHECK: attributes #[[ATTRS]] = { "tune-cpu"="pentium4" }
+llvm.func @tune_cpu() attributes {tune_cpu = "pentium4"} {
+  llvm.return
+}

>From bc07fbc575489db8aee856169e5fd6032803e654 Mon Sep 17 00:00:00 2001
From: Alexis Perry-Holby 
Date: Wed, 12 Jun 2024 13:09:49 -0600
Subject: [PATCH 08/11] Address review comments - increase clarity in bbc
 default lowering

---
 flang/tools/bbc/bbc.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/flang/tools/bbc/bbc.cpp b/flang/tools/bbc/bbc.cpp
index c01dbd200af49..c027627975776 100644
--- a/flang/tools/bbc/bbc.cpp
+++ b/flang/tools/bbc/bbc.cpp
@@ -367,11 +367,12 @@ static mlir::LogicalResult convertFortranSourceToMLIR(
   loweringOptions.setLowerToHighLevelFIR(useHLFIR || emitHLFIR);
   loweringOptions.setNSWOnLoopVarInc(setNSW);
   std::vector envDefaults = {};
+  constexpr const char* tuneCPU = "";
   auto burnside = Fortran::lower::LoweringBridge::create(
   ctx, semanticsContext, defKinds, semanticsContext.intrinsics(),
   semanticsContext.targetCharacteristics(), parsing.allCooked(),
   targetTriple, kindMap, loweringOptions, envDefaults,
-  semanticsContext.languageFeatures(), targetMachine, "");
+  semanticsContext.languageFeatures(), targetMachine, tuneCPU);
   mlir::ModuleOp mlirModule = burnside.getModule();
   if (enableOpenMP) {
 if (enableOpenMPGPU && !enableOpenMPDevice) {

>From affc4a1900531bc26cec69c07e83c7e30f83447a Mon Sep 17 00:00:00 2001
From: Alexis Perry-Holby 
Date: Wed, 12 Jun 2024 14:32:58 -0600
Subject: [PATCH 09/11] clang-format

---
 flang/tools/bbc/bbc.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/flang/tools/bbc/bbc.cpp b/flang/tools/bbc/bbc.cpp
index c027627975776..0a149be0c0597 100644
--- a/flang/tools/bbc/bbc.cpp
+++ b/flang/tools/bbc/bbc.cpp
@@ -367,7 +367,7 @@ static mlir::LogicalResult convertFortranSourceToMLIR(
   loweringOptions.setLowerToHighLevelFIR(useHLFIR || emitHLFIR);
   loweringOptions.setNSWOnLoopVarInc(setNSW);
   std::vector envDefaults = {};
-  constexpr const char* tuneCPU = "";
+  constexpr const char *tuneCPU = "";
   auto burnside = Fortran::lower::LoweringBridge::create(
   ctx, semanticsContext, defKinds, semanticsContext.intrinsics(),
   semanticsContext.targetCharacteristics(), parsing.allCooked(),

>From b8bf52462aae9f63b393016591cc2ec933e53b85 Mon Sep 17 00:00:00 2001
From: Alexis Perry-Holby 
Date: Thu, 20 Jun 2024 15:35:08 -0600
Subject: [PATCH 10/11] Address reviewer comments - remove strcmp usage

---
 clang/lib/Driver/ToolChains/Flang.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/clang/lib/Driver/ToolChains/Flang.cpp 
b/clang/lib/Driver/ToolChains/Flang.cpp
index fa5ad1e50bc66..98fe7cace058f 100644
--- a/clang/lib/Driver/ToolChains/Flang.cpp
+++ b/clang/lib/Driver/ToolChains/Flang.cpp
@@ -414,7 +414,7 @@ void Flang::addTargetOptions(const ArgList ,
   // TODO: Add target specific flags, ABI, mtune option etc.
   if (const Arg *A = Args.getLastArg(options::OPT_mtune_EQ)) {
 CmdArgs.push_back("-tune-cpu");
-if (strcmp(A->getValue(), "native") == 0)
+if (A->getValue() == StringRef{"native"})
   CmdArgs.push_back(Args.MakeArgString(llvm::sys::getHostCPUName()));
 else
   CmdArgs.push_back(A->getValue());
@@ -810,7 +810,7 @@ void Flang::ConstructJob(Compilation , const JobAction 
,
   case CodeGenOptions::FramePointerKind::None:
 FPKeepKindStr = "-mframe-pointer=none";
 break;
-   case CodeGenOptions::FramePointerKind::Reserved:
+  case CodeGenOptions::FramePointerKind::Reserved:
 FPKeepKindStr = "-mframe-pointer=reserved";
 break;
   case CodeGenOptions::FramePointerKind::NonLeaf:

>From eb42995206e4f15634984476923e00cbf1dcc4de Mon Sep 17 00:00:00 2001
From: Alexis Perry-Holby 
Date: Mon, 24 Jun 2024 13:46:46 -0600
Subject: [PATCH 11/11] Address review comments - move test from Lower to
 Driver

---
 flang/test/{Lower => Driver}/tune-cpu-fir.f90 | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename flang/test/{Lower => Driver}/tune-cpu-fir.f90 (100%)

diff --git a/flang/test/Lower/tune-cpu-fir.f90 
b/flang/test/Driver/tune-cpu-fir.f90
similarity index 100%
rename from flang/test/Lower/tune-cpu-fir.f90
rename to flang/test/Driver/tune-cpu-fir.f90

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkins-infra/jenkins.io] 18fc50: Automated changelog for 2.464

2024-06-24 Thread 'jenkins-infra-changelog-generator[bot]' via Jenkins Commits
  Branch: refs/heads/automated-weekly-changelog/2.464
  Home:   https://github.com/jenkins-infra/jenkins.io
  Commit: 18fc506a7d8d1b9603d2ba60f56275a785f595f4
  
https://github.com/jenkins-infra/jenkins.io/commit/18fc506a7d8d1b9603d2ba60f56275a785f595f4
  Author: jenkins-infra-changelog-generator 
<86592549+jenkins-infra-changelog-generator[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M content/_data/changelogs/weekly.yml

  Log Message:
  ---
  Automated changelog for 2.464



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkins-infra/jenkins.io/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkins-infra/jenkins.io/push/refs/heads/automated-weekly-changelog/2.464/8646ad-18fc50%40github.com.


[clang-tools-extra] reapply [clang-doc] Add --asset option to clang-doc (PR #96358)

2024-06-24 Thread via cfe-commits
ert(
   CDCtx.UserStylesheets.begin(),
   "../share/clang/clang-doc-default-stylesheet.css");
@@ -66,6 +66,7 @@ TEST(HTMLGeneratorTest, emitNamespaceHTML) {
 namespace Namespace
 
 
+
 
 test-project
 
@@ -176,6 +177,7 @@ TEST(HTMLGeneratorTest, emitRecordHTML) {
 
 class r
 
+
 
 test-project
 
@@ -290,6 +292,7 @@ TEST(HTMLGeneratorTest, emitFunctionHTML) {
 
 
 
+
 
 test-project
 
@@ -337,6 +340,7 @@ TEST(HTMLGeneratorTest, emitEnumHTML) {
 
 
 
+
 
 test-project
 
@@ -422,6 +426,7 @@ TEST(HTMLGeneratorTest, emitCommentHTML) {
 
 
 
+
 
 test-project
 

>From 76ce46ef6232afed395b88dbbfa8304b695dfcf3 Mon Sep 17 00:00:00 2001
From: PeterChou1 
Date: Mon, 24 Jun 2024 15:44:41 -0400
Subject: [PATCH 4/4] [clang][clang-doc] remove test tool

---
 clang-tools-extra/CMakeLists.txt   |  4 +--
 clang-tools-extra/test-tool/CmakeLists.txt | 15 -
 clang-tools-extra/test-tool/testfile.cpp   | 36 --
 3 files changed, 1 insertion(+), 54 deletions(-)
 delete mode 100644 clang-tools-extra/test-tool/CmakeLists.txt
 delete mode 100644 clang-tools-extra/test-tool/testfile.cpp

diff --git a/clang-tools-extra/CMakeLists.txt b/clang-tools-extra/CMakeLists.txt
index 4226ac69477d5..ab83671b88ba8 100644
--- a/clang-tools-extra/CMakeLists.txt
+++ b/clang-tools-extra/CMakeLists.txt
@@ -48,6 +48,4 @@ if(CLANG_INCLUDE_TESTS)
   add_subdirectory(test)
   add_subdirectory(unittests)
   umbrella_lit_testsuite_end(check-clang-tools)
-endif()
-
-add_subdirectory(test-tool)
\ No newline at end of file
+endif()
\ No newline at end of file
diff --git a/clang-tools-extra/test-tool/CmakeLists.txt 
b/clang-tools-extra/test-tool/CmakeLists.txt
deleted file mode 100644
index 0fc082f304ada..0
--- a/clang-tools-extra/test-tool/CmakeLists.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-set(LLVM_LINK_COMPONENTS support)
-
-add_clang_executable(loop-convert
-testfile.cpp
-)
-
-target_link_libraries(loop-convert
-PRIVATE
-clangAST
-clangASTMatchers
-clangBasic
-clangFrontend
-clangSerialization
-clangTooling
-)
\ No newline at end of file
diff --git a/clang-tools-extra/test-tool/testfile.cpp 
b/clang-tools-extra/test-tool/testfile.cpp
deleted file mode 100644
index ddd9f1017520f..0
--- a/clang-tools-extra/test-tool/testfile.cpp
+++ /dev/null
@@ -1,36 +0,0 @@
-#include "clang/Frontend/FrontendActions.h"
-#include "clang/Tooling/CommonOptionsParser.h"
-#include "clang/Tooling/Tooling.h"
-#include "llvm/Support/CommandLine.h"
-#include "clang/Tooling/Execution.h"
-
-using namespace clang::tooling;
-using namespace llvm;
-
-class MapASTVisitor : public clang::ASTConsumer {
-public:
-  explicit MapASTVisitor() {}
-  void HandleTranslationUnit(clang::ASTContext ) override {}
-};
-class MyAction : public clang::ASTFrontendAction {
-public:
-  MyAction() {}
-  std::unique_ptr
-  CreateASTConsumer(clang::CompilerInstance ,
-llvm::StringRef InFile) override {
-return std::make_unique();
-  }
-};
-
-static llvm::cl::OptionCategory MyToolCategory("my-tool");
-int main(int argc, const char **argv) {
-  const char *Overview = "";
-  auto Executor = clang::tooling::createExecutorFromCommandLineArgs(
-  argc, argv, MyToolCategory, Overview);
-  if (!Executor) {
-llvm::errs() << toString(Executor.takeError()) << "\n";
-return 1;
-  }
-  auto Err = Executor->get()->execute(newFrontendActionFactory());
-  return 0;
-}
\ No newline at end of file

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [flang] [mlir] [flang] Add basic -mtune support (PR #95043)

2024-06-24 Thread Alexis Perry-Holby via cfe-commits


@@ -0,0 +1,9 @@
+; RUN: mlir-translate -import-llvm -split-input-file %s | FileCheck %s
+
+; CHECK-LABEL: llvm.func @tune_cpu()
+; CHECK-SAME: tune_cpu = "pentium4"

AlexisPerry wrote:

Alright, after some digging, I can confirm that `tune-cpu` is listed among the 
`kExplicitAttributes` and that these attributes are expressly excluded from 
being added to the passthrough dictionary based on the code in 
`processPassthroughAttrs` in `ModuleImport.cpp`.

https://github.com/llvm/llvm-project/pull/95043
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkins-infra/jenkins.io] 8646ad: Automated changelog for 2.464

2024-06-24 Thread 'jenkins-infra-changelog-generator[bot]' via Jenkins Commits
  Branch: refs/heads/automated-weekly-changelog/2.464
  Home:   https://github.com/jenkins-infra/jenkins.io
  Commit: 8646ad148afeb6fcb5456932c2543586ef42ead2
  
https://github.com/jenkins-infra/jenkins.io/commit/8646ad148afeb6fcb5456932c2543586ef42ead2
  Author: jenkins-infra-changelog-generator 
<86592549+jenkins-infra-changelog-generator[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M content/_data/changelogs/weekly.yml

  Log Message:
  ---
  Automated changelog for 2.464



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkins-infra/jenkins.io/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkins-infra/jenkins.io/push/refs/heads/automated-weekly-changelog/2.464/638e5e-8646ad%40github.com.


[jenkinsci/active-choices-plugin] 82f5dc: Bump webpack from 5.92.0 to 5.92.1

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: refs/heads/dependabot/npm_and_yarn/webpack-5.92.1
  Home:   https://github.com/jenkinsci/active-choices-plugin
  Commit: 82f5dcf7114072289aa39bc9592e1437947855bb
  
https://github.com/jenkinsci/active-choices-plugin/commit/82f5dcf7114072289aa39bc9592e1437947855bb
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M package.json
M yarn.lock

  Log Message:
  ---
  Bump webpack from 5.92.0 to 5.92.1

Bumps [webpack](https://github.com/webpack/webpack) from 5.92.0 to 5.92.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.92.0...v5.92.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/active-choices-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/active-choices-plugin/push/refs/heads/dependabot/npm_and_yarn/webpack-5.92.1/00-82f5dc%40github.com.


[clang-tools-extra] reapply [clang-doc] Add --asset option to clang-doc (PR #96358)

2024-06-24 Thread via cfe-commits
uts/test-assets/test.js 
b/clang-tools-extra/test/clang-doc/Inputs/test-assets/test.js
new file mode 100644
index 0..06f320c59b9b0
--- /dev/null
+++ b/clang-tools-extra/test/clang-doc/Inputs/test-assets/test.js
@@ -0,0 +1 @@
+console.log("Hello, world!");
\ No newline at end of file
diff --git a/clang-tools-extra/test/clang-doc/assets.cpp 
b/clang-tools-extra/test/clang-doc/assets.cpp
new file mode 100644
index 0..4b439f0048537
--- /dev/null
+++ b/clang-tools-extra/test/clang-doc/assets.cpp
@@ -0,0 +1,22 @@
+// RUN: rm -rf %t && mkdir -p %t/docs %t/build
+// RUN: clang-doc --format=html --output=%t/docs --asset=%S/Inputs/test-assets 
--executor=standalone %s --output=%t/docs
+// RUN: FileCheck %s -input-file=%t/docs/index.html -check-prefix=INDEX
+// RUN: FileCheck %s -input-file=%t/docs/test.css -check-prefix=CSS
+// RUN: FileCheck %s -input-file=%t/docs/test.js -check-prefix=JS
+
+// INDEX: 
+// INDEX-NEXT: 
+// INDEX-NEXT: Index
+// INDEX-NEXT: 
+// INDEX-NEXT: 
+// INDEX-NEXT: 
+// INDEX-NEXT: 
+// INDEX-NEXT: 
+// INDEX-NEXT:   
+// INDEX-NEXT: 
+
+// CSS: body {
+// CSS-NEXT: padding: 0;
+// CSS-NEXT: }
+
+// JS: console.log("Hello, world!");
\ No newline at end of file
diff --git a/clang-tools-extra/test/clang-doc/basic-project.test 
b/clang-tools-extra/test/clang-doc/basic-project.test
index 0898acaea3a33..3118c20495987 100644
--- a/clang-tools-extra/test/clang-doc/basic-project.test
+++ b/clang-tools-extra/test/clang-doc/basic-project.test
@@ -57,8 +57,8 @@
 // HTML-SHAPE-NEXT: 
 // HTML-SHAPE-NEXT: class Shape
 // HTML-SHAPE-NEXT: 
-// HTML-SHAPE-NEXT: 
-// HTML-SHAPE-NEXT: 
+// HTML-SHAPE-NEXT: 
+// HTML-SHAPE-NEXT: 
 // HTML-SHAPE-NEXT: 
 // HTML-SHAPE-NEXT: 
 // HTML-SHAPE-NEXT:   
@@ -122,8 +122,8 @@
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT: class Calculator
 // HTML-CALC-NEXT: 
-// HTML-CALC-NEXT: 
 // HTML-CALC-NEXT: 
+// HTML-CALC-NEXT: 
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT:   
@@ -139,25 +139,25 @@
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT:   add
 // HTML-CALC-NEXT:   public int add(int a, int b)
-// HTML-CALC-NEXT:   Defined at line 4 of file {{.*}}Calculator.cpp
+// HTML-CALC-NEXT:   Defined at line 3 of file {{.*}}Calculator.cpp
 // HTML-CALC-NEXT:   
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT:   
 // HTML-CALC-NEXT:   subtract
 // HTML-CALC-NEXT:   public int subtract(int a, int b)
-// HTML-CALC-NEXT:   Defined at line 8 of file {{.*}}Calculator.cpp
+// HTML-CALC-NEXT:   Defined at line 7 of file {{.*}}Calculator.cpp
 // HTML-CALC-NEXT:   
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT:   
 // HTML-CALC-NEXT:   multiply
 // HTML-CALC-NEXT:   public int multiply(int a, int b)
-// HTML-CALC-NEXT:   Defined at line 12 of file {{.*}}Calculator.cpp
+// HTML-CALC-NEXT:   Defined at line 11 of file {{.*}}Calculator.cpp
 // HTML-CALC-NEXT:   
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT:   
 // HTML-CALC-NEXT:   divide
 // HTML-CALC-NEXT:   public double divide(int a, int b)
-// HTML-CALC-NEXT:   Defined at line 16 of file {{.*}}Calculator.cpp
+// HTML-CALC-NEXT:   Defined at line 15 of file {{.*}}Calculator.cpp
 // HTML-CALC-NEXT:   
 // HTML-CALC-NEXT: 
 // HTML-CALC-NEXT:   
@@ -200,8 +200,8 @@
 // HTML-RECTANGLE-NEXT: 
 // HTML-RECTANGLE-NEXT: class Rectangle
 // HTML-RECTANGLE-NEXT: 
-// HTML-RECTANGLE-NEXT: 
 // HTML-RECTANGLE-NEXT: 
+// HTML-RECTANGLE-NEXT: 
 // HTML-RECTANGLE-NEXT: 
 // HTML-RECTANGLE-NEXT: 
 // HTML-RECTANGLE-NEXT:   
@@ -281,8 +281,8 @@
 // HTML-CIRCLE-NEXT: 
 // HTML-CIRCLE-NEXT: class Circle
 // HTML-CIRCLE-NEXT: 
-// HTML-CIRCLE-NEXT: 
 // HTML-CIRCLE-NEXT: 
+// HTML-CIRCLE-NEXT: 
 // HTML-CIRCLE-NEXT: 
 // HTML-CIRCLE-NEXT: 
 // HTML-CIRCLE-NEXT:   
diff --git a/clang-tools-extra/test/clang-doc/single-source-html.cpp 
b/clang-tools-extra/test/clang-doc/single-source-html.cpp
deleted file mode 100644
index 32f232b9c45a0..0
--- a/clang-tools-extra/test/clang-doc/single-source-html.cpp
+++ /dev/null
@@ -1,2 +0,0 @@
-// RUN: clang-doc --format=html --executor=standalone %s -output=%t/docs | 
FileCheck %s
-// CHECK: Using default asset: {{.*}}{{[\/]}}share{{[\/]}}clang
\ No newline at end of file
diff --git a/clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp 
b/clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
index 9aabb1ed30e42..e4a7340318b93 100644
--- a/clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
+++ b/clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
@@ -30,7 +30,7 @@ ClangDocContext
 getClangDocContext(std::vector UserStylesheets = {},
StringRef RepositoryUrl = "") {
   ClangDocContext CDCtx{
-  {}, "test-project", {}, {}, {}, RepositoryUrl, UserStylesheets, {}};
+  {}, "test-project", {}, {}, {}, RepositoryUrl, UserStylesheets};
   CDCtx.UserStylesheets.insert(
   CDCtx.UserStylesheets.begin(),
   "../share/clang/clang-doc-default-stylesheet.css");
@@ -66,6 +66,7 @@ TEST(HTMLGeneratorTest, emitNamespaceHTML) {
 namespace Namespace
 
 
+
 
 test-project
 
@@ -176,6 +177,7 @@ TEST(HTMLGeneratorTest, emitRecordHTML) {
 
 class r
 
+
 
 test-project
 
@@ -290,6 +292,7 @@ TEST(HTMLGeneratorTest, emitFunctionHTML) {
 
 
 
+
 
 test-project
 
@@ -337,6 +340,7 @@ TEST(HTMLGeneratorTest, emitEnumHTML) {
 
 
 
+
 
 test-project
 
@@ -422,6 +426,7 @@ TEST(HTMLGeneratorTest, emitCommentHTML) {
 
 
 
+
 
 test-project
 

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/active-choices-plugin] f3be78: Bump typescript from 5.4.5 to 5.5.2

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: refs/heads/dependabot/npm_and_yarn/typescript-5.5.2
  Home:   https://github.com/jenkinsci/active-choices-plugin
  Commit: f3be78b6692fbb33866fc74fc885eec1a72314af
  
https://github.com/jenkinsci/active-choices-plugin/commit/f3be78b6692fbb33866fc74fc885eec1a72314af
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M package.json
M yarn.lock

  Log Message:
  ---
  Bump typescript from 5.4.5 to 5.5.2

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.4.5 to 5.5.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- 
[Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.5...v5.5.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/active-choices-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/active-choices-plugin/push/refs/heads/dependabot/npm_and_yarn/typescript-5.5.2/00-f3be78%40github.com.


[clang] [llvm] [mlir] [polly] [IR][NFC] Update IRBuilder to use InsertPosition (PR #96497)

2024-06-24 Thread Stephen Tozer via cfe-commits

SLTozer wrote:

> Looks like using InsertPosition in IRBuilder has some overhead: 

Hm, we're adding an extra pointer chase when we give up passing a basicblock - 
I think then it makes sense to keep the option to pass BB+It, and do so when 
the caller already knows the BB (while removing the need to pass the BB around 
for functions that only need an insert point).

https://github.com/llvm/llvm-project/pull/96497
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/lockable-resources-plugin] 0e8631: Bump io.jenkins.tools.bom:bom-2.440.x

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.440.x-3143.v347db_7c6db_6e
  Home:   https://github.com/jenkinsci/lockable-resources-plugin
  Commit: 0e8631012f405566e104c68a67f1a3d9b3a9627f
  
https://github.com/jenkinsci/lockable-resources-plugin/commit/0e8631012f405566e104c68a67f1a3d9b3a9627f
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump io.jenkins.tools.bom:bom-2.440.x

Bumps [io.jenkins.tools.bom:bom-2.440.x](https://github.com/jenkinsci/bom) from 
3135.v6d6c1f6b_3572 to 3143.v347db_7c6db_6e.
- [Release notes](https://github.com/jenkinsci/bom/releases)
- [Commits](https://github.com/jenkinsci/bom/commits)

---
updated-dependencies:
- dependency-name: io.jenkins.tools.bom:bom-2.440.x
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/lockable-resources-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/lockable-resources-plugin/push/refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.440.x-3143.v347db_7c6db_6e/00-0e8631%40github.com.


[jenkinsci/simple-theme-plugin] 601eb5: Bump io.jenkins.tools.bom:bom-2.426.x

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.426.x-3143.v347db_7c6db_6e
  Home:   https://github.com/jenkinsci/simple-theme-plugin
  Commit: 601eb5df93d0d0337fd15d583e92f4e68dee8be0
  
https://github.com/jenkinsci/simple-theme-plugin/commit/601eb5df93d0d0337fd15d583e92f4e68dee8be0
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump io.jenkins.tools.bom:bom-2.426.x

Bumps [io.jenkins.tools.bom:bom-2.426.x](https://github.com/jenkinsci/bom) from 
2675.v1515e14da_7a_6 to 3143.v347db_7c6db_6e.
- [Release notes](https://github.com/jenkinsci/bom/releases)
- [Commits](https://github.com/jenkinsci/bom/commits)

---
updated-dependencies:
- dependency-name: io.jenkins.tools.bom:bom-2.426.x
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/simple-theme-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/simple-theme-plugin/push/refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.426.x-3143.v347db_7c6db_6e/00-601eb5%40github.com.


[clang] [clang][OpenMP] Fix error handling of the adjust_args clause (PR #94696)

2024-06-24 Thread via cfe-commits

https://github.com/jyu2-git approved this pull request.

LGTM.  Thanks!

https://github.com/llvm/llvm-project/pull/94696
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] 09c0337 - [Clang][SveEmitter] Split up TargetGuard into SVE and SME component. (#96482)

2024-06-24 Thread via cfe-commits

Author: Sander de Smalen
Date: 2024-06-24T20:31:22+01:00
New Revision: 09c0337a581dfd8f39df131786cfc7f675adf483

URL: 
https://github.com/llvm/llvm-project/commit/09c0337a581dfd8f39df131786cfc7f675adf483
DIFF: 
https://github.com/llvm/llvm-project/commit/09c0337a581dfd8f39df131786cfc7f675adf483.diff

LOG: [Clang][SveEmitter] Split up TargetGuard into SVE and SME component. 
(#96482)

One reason to want to split this up is to simplify the code added in
#93802, where it checks the SME streaming-mode requirements for a
builtin by checking for the absence of SVE. If the target guards are
separate, we can generate a table and make the Sema code to verify the
runtime mode simpler.

Another reason is to avoid an issue with a check in SveEmitter.cpp where
it ensures that the 'VerifyRuntimeMode' is set correctly for functions
that have both SVE and SME target guards:

if (!Def->isFlagSet(VerifyRuntimeMode) &&
Def->getGuard().contains("sve") &&
  Def->getGuard().contains("sme"))
llvm_unreachable("Missing VerifyRuntimeMode flag");

However, if we ever add a new feature with "sme" in the name, even
though it is unrelated to FEAT_SME, then this code no longer works.

Note that the arm_sve.td and arm_sme.td files could do with a bit of
restructuring after this but it seems better to follow that up in an NFC
patch.

Added: 


Modified: 
clang/include/clang/Basic/arm_sme.td
clang/include/clang/Basic/arm_sve.td
clang/include/clang/Basic/arm_sve_sme_incl.td
clang/test/Sema/aarch64-sve-intrinsics/acle_sve_bfloat.cpp
clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
clang/utils/TableGen/SveEmitter.cpp

Removed: 




diff  --git a/clang/include/clang/Basic/arm_sme.td 
b/clang/include/clang/Basic/arm_sme.td
index 564a58e4eb670..1580331ea603c 100644
--- a/clang/include/clang/Basic/arm_sme.td
+++ b/clang/include/clang/Basic/arm_sme.td
@@ -15,11 +15,13 @@
 
 include "arm_sve_sme_incl.td"
 
+let SVETargetGuard = InvalidMode in {
+
 

 // Loads
 
 multiclass ZALoad 
ch> {
-  let TargetGuard = "sme" in {
+  let SMETargetGuard = "sme" in {
 def NAME # _H : MInst<"svld1_hor_" # n_suffix, "vimPQ", t,
   [IsLoad, IsOverloadNone, IsStreaming, IsInOutZA],
   MemEltTyDefault, i_prefix # "_horiz", ch>;
@@ -44,7 +46,7 @@ defm SVLD1_ZA32 : ZALoad<"za32", "i", "aarch64_sme_ld1w", 
[ImmCheck<0, ImmCheck0
 defm SVLD1_ZA64 : ZALoad<"za64", "l", "aarch64_sme_ld1d", [ImmCheck<0, 
ImmCheck0_7>]>;
 defm SVLD1_ZA128 : ZALoad<"za128", "q", "aarch64_sme_ld1q", [ImmCheck<0, 
ImmCheck0_15>]>;
 
-let TargetGuard = "sme" in {
+let SMETargetGuard = "sme" in {
 def SVLDR_VNUM_ZA : MInst<"svldr_vnum_za", "vmQl", "",
   [IsOverloadNone, IsStreamingCompatible, IsInOutZA],
   MemEltTyDefault, "aarch64_sme_ldr">;
@@ -58,7 +60,7 @@ def SVLDR_ZA : MInst<"svldr_za", "vmQ", "",
 // Stores
 
 multiclass ZAStore 
ch> {
-  let TargetGuard = "sme" in {
+  let SMETargetGuard = "sme" in {
 def NAME # _H : MInst<"svst1_hor_" # n_suffix, "vimP%", t,
   [IsStore, IsOverloadNone, IsStreaming, IsInZA],
   MemEltTyDefault, i_prefix # "_horiz", ch>;
@@ -83,7 +85,7 @@ defm SVST1_ZA32 : ZAStore<"za32", "i", "aarch64_sme_st1w", 
[ImmCheck<0, ImmCheck
 defm SVST1_ZA64 : ZAStore<"za64", "l", "aarch64_sme_st1d", [ImmCheck<0, 
ImmCheck0_7>]>;
 defm SVST1_ZA128 : ZAStore<"za128", "q", "aarch64_sme_st1q", [ImmCheck<0, 
ImmCheck0_15>]>;
 
-let TargetGuard = "sme" in {
+let SMETargetGuard = "sme" in {
 def SVSTR_VNUM_ZA : MInst<"svstr_vnum_za", "vm%l", "",
   [IsOverloadNone, IsStreamingCompatible, IsInZA],
   MemEltTyDefault, "aarch64_sme_str">;
@@ -97,7 +99,7 @@ def SVSTR_ZA : MInst<"svstr_za", "vm%", "",
 // Read horizontal/vertical ZA slices
 
 multiclass ZARead 
ch> {
-  let TargetGuard = "sme" in {
+  let SMETargetGuard = "sme" in {
 def NAME # _H : SInst<"svread_hor_" # n_suffix # "[_{d}]", "ddPim", t,
   MergeOp1, i_prefix # "_horiz",
   [IsReadZA, IsStreaming, IsInZA], ch>;
@@ -118,7 +120,7 @@ defm SVREAD_ZA128 : ZARead<"za128", "csilUcUsUiUlhbfd", 
"aarch64_sme_readq", [Im
 // Write horizontal/vertical ZA slices
 
 multiclass ZAWrite 
ch> {
-  let TargetGuard = "sme" in {
+  let SMETargetGuard = "sme" in {
 def NAME # _H : SInst<"svwrite_hor_" # n_suffix # "[_{d}]", "vimPd", t,
   MergeOp1, i_prefix # "_horiz",
   [IsWriteZA, IsStreaming, IsInOutZA], ch>;
@@ -138,7 +140,7 @@ defm SVWRITE_ZA128 : ZAWrite<"za128", "csilUcUsUiUlhbfd", 
"aarch64_sme_writeq",
 

 // SME - Zero
 
-let TargetGuard = 

[clang] [Clang][SveEmitter] Split up TargetGuard into SVE and SME component. (PR #96482)

2024-06-24 Thread Sander de Smalen via cfe-commits

https://github.com/sdesmalen-arm closed 
https://github.com/llvm/llvm-project/pull/96482
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Clang: convert `__m64` intrinsics to unconditionally use SSE2 instead of MMX. (PR #96540)

2024-06-24 Thread via cfe-commits

github-actions[bot] wrote:




:warning: C/C++ code formatter, clang-format found issues in your code. 
:warning:



You can test this locally with the following command:


``bash
git-clang-format --diff af6acd7442646fde56de919964bd52d7bb7922b2 
a17a0df1c3551693283dd806b901d3020f33e67f --extensions 'c,h,cpp' -- 
mmx-tests/test.c clang/lib/CodeGen/CGBuiltin.cpp clang/lib/Headers/emmintrin.h 
clang/lib/Headers/mmintrin.h clang/lib/Headers/tmmintrin.h 
clang/lib/Headers/xmmintrin.h clang/test/CodeGen/X86/mmx-builtins.c 
clang/test/CodeGen/X86/mmx-inline-asm.c 
clang/test/CodeGen/X86/mmx-shift-with-immediate.c 
clang/test/CodeGen/attr-target-x86-mmx.c clang/test/Headers/xmmintrin.c 
clang/test/Sema/x86-builtin-palignr.c
``





View the diff from clang-format here.


``diff
diff --git a/clang/lib/Headers/emmintrin.h b/clang/lib/Headers/emmintrin.h
index 02160285d5..a3176570a4 100644
--- a/clang/lib/Headers/emmintrin.h
+++ b/clang/lib/Headers/emmintrin.h
@@ -49,10 +49,15 @@ typedef __bf16 __m128bh __attribute__((__vector_size__(16), 
__aligned__(16)));
 #endif
 
 /* Define the default attributes for the functions in this file. */
-#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, 
__target__("sse2,no-evex512"), __min_vector_width__(128)))
-
-#define __trunc64(x) (__m64)__builtin_shufflevector((__v2di)(x), __extension__ 
(__v2di){}, 0)
-#define __anyext128(x) (__m128i)__builtin_shufflevector((__v2si)(x), 
__extension__ (__v2si){}, 0, 1, -1, -1)
+#define __DEFAULT_FN_ATTRS 
\
+  __attribute__((__always_inline__, __nodebug__,   
\
+ __target__("sse2,no-evex512"), __min_vector_width__(128)))
+
+#define __trunc64(x)   
\
+  (__m64) __builtin_shufflevector((__v2di)(x), __extension__(__v2di){}, 0)
+#define __anyext128(x) 
\
+  (__m128i) __builtin_shufflevector((__v2si)(x), __extension__(__v2si){}, 0,   
\
+1, -1, -1)
 
 /// Adds lower double-precision values in both operands and returns the
 ///sum in the lower 64 bits of the result. The upper 64 bits of the result
diff --git a/clang/lib/Headers/mmintrin.h b/clang/lib/Headers/mmintrin.h
index 71d7487673..d4ccb3c92f 100644
--- a/clang/lib/Headers/mmintrin.h
+++ b/clang/lib/Headers/mmintrin.h
@@ -22,8 +22,8 @@ typedef short __v4hi __attribute__((__vector_size__(8)));
 typedef char __v8qi __attribute__((__vector_size__(8)));
 
 /* Unsigned types */
-typedef unsigned long long __v1du __attribute__ ((__vector_size__ (8)));
-typedef unsigned int __v2su __attribute__ ((__vector_size__ (8)));
+typedef unsigned long long __v1du __attribute__((__vector_size__(8)));
+typedef unsigned int __v2su __attribute__((__vector_size__(8)));
 typedef unsigned short __v4hu __attribute__((__vector_size__(8)));
 typedef unsigned char __v8qu __attribute__((__vector_size__(8)));
 
@@ -33,17 +33,23 @@ typedef signed char __v8qs 
__attribute__((__vector_size__(8)));
 
 /* SSE/SSE2 types */
 typedef long long __m128i __attribute__((__vector_size__(16), 
__aligned__(16)));
-typedef long long __v2di __attribute__ ((__vector_size__ (16)));
+typedef long long __v2di __attribute__((__vector_size__(16)));
 typedef int __v4si __attribute__((__vector_size__(16)));
 typedef short __v8hi __attribute__((__vector_size__(16)));
 typedef char __v16qi __attribute__((__vector_size__(16)));
 
 /* Define the default attributes for the functions in this file. */
-#define __DEFAULT_FN_ATTRS_SSE2 __attribute__((__always_inline__, __nodebug__, 
__target__("sse2,no-evex512"), __min_vector_width__(64)))
-
-#define __trunc64(x) (__m64)__builtin_shufflevector((__v2di)(x), __extension__ 
(__v2di){}, 0)
-#define __anyext128(x) (__m128i)__builtin_shufflevector((__v2si)(x), 
__extension__ (__v2si){}, 0, 1, -1, -1)
-#define __extract2_32(a) (__m64)__builtin_shufflevector((__v4si)(a), 
__extension__ (__v4si){}, 0, 2);
+#define __DEFAULT_FN_ATTRS_SSE2
\
+  __attribute__((__always_inline__, __nodebug__,   
\
+ __target__("sse2,no-evex512"), __min_vector_width__(64)))
+
+#define __trunc64(x)   
\
+  (__m64) __builtin_shufflevector((__v2di)(x), __extension__(__v2di){}, 0)
+#define __anyext128(x) 
\
+  (__m128i) __builtin_shufflevector((__v2si)(x), __extension__(__v2si){}, 0,   
\
+1, -1, -1)
+#define __extract2_32(a)   
\
+  (__m64) __builtin_shufflevector((__v4si)(a), __extension__(__v4si){}, 0, 2);
 
 /// Clears the MMX state by setting the state of the x87 stack registers
 ///to empty.
@@ -69,10 +75,8 @@ _mm_empty(void) {
 ///A 32-bit integer 

[clang] [llvm] Clang: convert `__m64` intrinsics to unconditionally use SSE2 instead of MMX. (PR #96540)

2024-06-24 Thread via cfe-commits
quot;_mm_hadd_pi32",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_hadds_pi16",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_hsub_pi16",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_hsub_pi32",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_hsubs_pi16",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_maddubs_pi16",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_mulhrs_pi16",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_shuffle_pi8",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_sign_pi8",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_sign_pi16",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_sign_pi32",
+"__m64",
+(
+"__m64",
+"__m64",
+),
+target="ssse3",
+)
+fn(
+"_mm_alignr_pi8",
+"__m64",
+(
+"__m64",
+"__m64",
+"int",
+),
+imm_range=(0, 18),
+target="ssse3",
+)
+
 
 # Generate a file full of wrapper functions for each of the above mmx
 # functions.
 #
 # If use_xmm is set, pass/return arguments as __m128 rather than of
 # __m64.
 def define_wrappers(prefix, use_xmm=True, header=False):
-  if header:
-print('#pragma once')
-
-  print('#include ')
-  if use_xmm and not header:
-print('#define m128_to_m64(x) ((__m64)((__v2di)(x))[0])')
-print('#define m64_to_m128(x) ((__m128)(__v2di){(long long)(__m64)(x), 
0})')
-
-  def fn(name, ret_ty, arg_tys, imm_range=None, target=None, condition=None):
-if condition:
-  print(f'#if {condition}')
-convert_ret = False
-if use_xmm and ret_ty == '__m64':
-  ret_ty = '__v2di'
-  convert_ret = True
-
-if target:
-  attr = f'__attribute__((target("{target}"))) '
-else:
-  attr = ''
-
-if imm_range:
-  arg_tys = arg_tys[:-1]
-def translate_type(t):
-  if use_xmm and t == '__m64':
-return '__m128'
-  return t
-def translate_arg(t, a):
-  if use_xmm and t == '__m64':
-return f'm128_to_m64({a})'
-  return a
-
-arg_decl = ', '.join(f'{translate_type(v[1])} arg_{v[0]}' for v in 
enumerate(arg_tys)) or 'void'
-call_args = ', '.join(translate_arg(v[1], f'arg_{v[0]}') for v in 
enumerate(arg_tys))
-
-def create_fn(suffix, extraarg):
-  if header:
-print(f'{ret_ty} {prefix}_{name}{suffix}({arg_decl});')
-  else:
-print(f'{attr}{ret_ty} {prefix}_{name}{suffix}({arg_decl})')
-if use_xmm and convert_ret:
-  print(f'{{ return 
({ret_ty})m64_to_m128({name}({call_args}{extraarg})); }}')
+if header:
+print("#pragma once")
+
+print("#include ")
+if use_xmm and not header:
+print("#define m128_to_m64(x) ((__m64)((__v2di)(x))[0])")
+print("#define m64_to_m128(x) ((__m128)(__v2di){(long long)(__m64)(x), 
0})")
+
+def fn(name, ret_ty, arg_tys, imm_range=None, target=None, condition=None):
+if condition:
+print(f"#if {condition}")
+convert_ret = False
+if use_xmm and ret_ty == "__m64":
+ret_ty = "__v2di"
+convert_ret = True
+
+if target:
+attr = f'__attribute__((target("{target}"))) '
 else:
-  print(f'{{ return {name}({call_args}{extraarg}); }}')
-
-if imm_range:
-  for i in range(imm_range[0], imm_range[1]+1):
-create_fn(f'_{i}', f', {i}')
-    else

[clang] [clang-format] Add SpacesInParensOption for filtering repeated parens (PR #77522)

2024-06-24 Thread Owen Pan via cfe-commits

https://github.com/owenca approved this pull request.


https://github.com/llvm/llvm-project/pull/77522
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Clang: convert `__m64` intrinsics to unconditionally use SSE2 instead of MMX. (PR #96540)

2024-06-24 Thread via cfe-commits
 parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_add_pi8(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v8qi)__m2);
+return (__m64)(((__v8qu)__m1) + ((__v8qu)__m2));
 }
 
 /// Adds each 16-bit integer element of the first 64-bit integer vector
@@ -358,10 +384,10 @@ _mm_add_pi8(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [4 x i16].
 /// \returns A 64-bit integer vector of [4 x i16] containing the sums of both
 ///parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_add_pi16(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v4hi)__m2);
+return (__m64)(((__v4hu)__m1) + ((__v4hu)__m2));
 }
 
 /// Adds each 32-bit integer element of the first 64-bit integer vector
@@ -379,10 +405,10 @@ _mm_add_pi16(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [2 x i32].
 /// \returns A 64-bit integer vector of [2 x i32] containing the sums of both
 ///parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_add_pi32(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddd((__v2si)__m1, (__v2si)__m2);
+return (__m64)(((__v2su)__m1) + ((__v2su)__m2));
 }
 
 /// Adds, with saturation, each 8-bit signed integer element of the first
@@ -403,10 +429,10 @@ _mm_add_pi32(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [8 x i8].
 /// \returns A 64-bit integer vector of [8 x i8] containing the saturated sums
 ///of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pi8(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddsb((__v8qi)__m1, (__v8qi)__m2);
+return (__m64)__builtin_elementwise_add_sat((__v8qs)__m1, (__v8qs)__m2);
 }
 
 /// Adds, with saturation, each 16-bit signed integer element of the first
@@ -427,10 +453,10 @@ _mm_adds_pi8(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [4 x i16].
 /// \returns A 64-bit integer vector of [4 x i16] containing the saturated sums
 ///of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pi16(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddsw((__v4hi)__m1, (__v4hi)__m2);
+return (__m64)__builtin_elementwise_add_sat((__v4hi)__m1, (__v4hi)__m2);
 }
 
 /// Adds, with saturation, each 8-bit unsigned integer element of the first
@@ -450,10 +476,10 @@ _mm_adds_pi16(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [8 x i8].
 /// \returns A 64-bit integer vector of [8 x i8] containing the saturated
 ///unsigned sums of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pu8(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddusb((__v8qi)__m1, (__v8qi)__m2);
+return (__m64)__builtin_elementwise_add_sat((__v8qu)__m1, (__v8qu)__m2);
 }
 
 /// Adds, with saturation, each 16-bit unsigned integer element of the first
@@ -473,10 +499,10 @@ _mm_adds_pu8(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [4 x i16].
 /// \returns A 64-bit integer vector of [4 x i16] containing the saturated
 ///    unsigned sums of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pu16(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddusw(...
[truncated]

``




https://github.com/llvm/llvm-project/pull/96540
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] Clang: convert `__m64` intrinsics to unconditionally use SSE2 instead of MMX. (PR #96540)

2024-06-24 Thread via cfe-commits
containing the sums of both
 ///parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_add_pi8(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v8qi)__m2);
+return (__m64)(((__v8qu)__m1) + ((__v8qu)__m2));
 }
 
 /// Adds each 16-bit integer element of the first 64-bit integer vector
@@ -358,10 +384,10 @@ _mm_add_pi8(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [4 x i16].
 /// \returns A 64-bit integer vector of [4 x i16] containing the sums of both
 ///parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_add_pi16(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v4hi)__m2);
+return (__m64)(((__v4hu)__m1) + ((__v4hu)__m2));
 }
 
 /// Adds each 32-bit integer element of the first 64-bit integer vector
@@ -379,10 +405,10 @@ _mm_add_pi16(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [2 x i32].
 /// \returns A 64-bit integer vector of [2 x i32] containing the sums of both
 ///parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_add_pi32(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddd((__v2si)__m1, (__v2si)__m2);
+return (__m64)(((__v2su)__m1) + ((__v2su)__m2));
 }
 
 /// Adds, with saturation, each 8-bit signed integer element of the first
@@ -403,10 +429,10 @@ _mm_add_pi32(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [8 x i8].
 /// \returns A 64-bit integer vector of [8 x i8] containing the saturated sums
 ///of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pi8(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddsb((__v8qi)__m1, (__v8qi)__m2);
+return (__m64)__builtin_elementwise_add_sat((__v8qs)__m1, (__v8qs)__m2);
 }
 
 /// Adds, with saturation, each 16-bit signed integer element of the first
@@ -427,10 +453,10 @@ _mm_adds_pi8(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [4 x i16].
 /// \returns A 64-bit integer vector of [4 x i16] containing the saturated sums
 ///of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pi16(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddsw((__v4hi)__m1, (__v4hi)__m2);
+return (__m64)__builtin_elementwise_add_sat((__v4hi)__m1, (__v4hi)__m2);
 }
 
 /// Adds, with saturation, each 8-bit unsigned integer element of the first
@@ -450,10 +476,10 @@ _mm_adds_pi16(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [8 x i8].
 /// \returns A 64-bit integer vector of [8 x i8] containing the saturated
 ///unsigned sums of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pu8(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddusb((__v8qi)__m1, (__v8qi)__m2);
+return (__m64)__builtin_elementwise_add_sat((__v8qu)__m1, (__v8qu)__m2);
 }
 
 /// Adds, with saturation, each 16-bit unsigned integer element of the first
@@ -473,10 +499,10 @@ _mm_adds_pu8(__m64 __m1, __m64 __m2)
 ///A 64-bit integer vector of [4 x i16].
 /// \returns A 64-bit integer vector of [4 x i16] containing the saturated
 ///    unsigned sums of both parameters.
-static __inline__ __m64 __DEFAULT_FN_ATTRS
+static __inline__ __m64 __DEFAULT_FN_ATTRS_SSE2
 _mm_adds_pu16(__m64 __m1, __m64 __m2)
 {
-return (__m64)__builtin_ia32_paddusw(...
[truncated]

``




https://github.com/llvm/llvm-project/pull/96540
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [lldb] Support new libc++ __compressed_pair layout (PR #96538)

2024-06-24 Thread via lldb-commits
r
+# children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
 children=[ValueCheck(name="pointer")],
 )
 self.assertNotEqual(valobj.child[0].unsigned, 0)
 
 valobj = self.expect_var_path(
 "up_str",
 type=self.make_expected_basic_string_ptr(),
 summary='"hello"',
-#children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
+# children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
 children=[ValueCheck(name="pointer")],
 )
 
 valobj = self.expect_var_path("up_user", 
type=self.make_expected_type("User"))
 self.assertRegex(valobj.summary, "^User @ 0x0*[1-9a-f][0-9a-f]+$")

``




https://github.com/llvm/llvm-project/pull/96538
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb/DWARF] Remove parsing recursion when searching for definition DIEs (PR #96484)

2024-06-24 Thread David Blaikie via lldb-commits

dwblaikie wrote:

> > This patch as-is is NFC?
> 
> NFC_**I**_, I would say :) I don't think this should change the behavior in 
> any way, but it's pretty hard to guarantee that.

Sure enough - I take any claim as a statement of intent/belief, not of 
something mathematically proved, etc.

> > (no tests) but without this patch, the other delay-definition-die patch 
> > would have had a problem?
> > Is it possible to add a test in this patch that would exercise the thing 
> > that would become buggy if the delay-definition-die patch were to be 
> > recommitted?
> 
> Sort of. The situation is a bit complicated, because this touches pretty much 
> the same code as the other patch, so the other patch will not apply cleanly 
> or become magically correct. It's more like a building block that enables us 
> to rewrite the other patch in a more robust manner -- which brings us to the 
> second way this is complicated: It's not that the other patch was wrong on 
> its own. It was just very sensitive to the other bugs. Previously, if we 
> failed to unique the types correctly, we would "just" get the wrong type (or 
> maybe no type). With the patch, that situation would trigger a hard assert. 
> On its own, that might even be considered a good thing (easier to find bugs), 
> we're it not for the fact that this made the logic of the patch very hard to 
> follow. So, this is my attempt to make it more straight-forward.
> 
> As for tests, it is possible to write a test which would reproduce a crash 
> with the original patch, but that test is contingent on the existence of 
> another bug. When I reverted that patch, I added a test (in 
> [de3f1b6](https://github.com/llvm/llvm-project/commit/de3f1b6d68ab8a0e827db84b328803857a4f60df))
>  which triggered the crash. 

Having a bit of a hard time following this - is the test you added the same as 
the test you speculated is possible  to write in the prior sentence? 

> However, now that that bug is fixed (#95905), it does not crash anymore. Now, 
> I happen to know of another bug (which happens to be triggered by the same 
> code, only compiled with type units), but the same thing will happen once 
> that bug is fixed. 

OK - I think I'm following.

> Given all of that, I don't think another test case is needed with this 
> particular patch. It might be interesting for the final delay patch, if we 
> don't fix the type unit thing by then, but I think of this patch mostly as a 
> cleanup.

Perhaps a separate commit could add another RUN line to the existing test you 
added to demonstrate the reason for the revert? Rather than worrying about 
which comes first (the type unit patch or the delay patch)

But in any case, I /think/ I understand why this patch doesn't need a test 
(because this patch avoids the delay patch causing a crash (yeah, more complex 
than that because the patch doesn't apply cleanly over this one) and that crash 
already has a test committed) - thanks for the explanation.



https://github.com/llvm/llvm-project/pull/96484
_______
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Support new libc++ __compressed_pair layout (PR #96538)

2024-06-24 Thread Michael Buch via lldb-commits
pected_type("int"),
 summary="nullptr",
+#children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
 children=[ValueCheck(name="pointer")],
 )
 self.assertEqual(
@@ -59,6 +60,7 @@ def test_unique_ptr_variables(self):
 "up_int",
 type=self.make_expected_type("int"),
 summary="10",
+#children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
 children=[ValueCheck(name="pointer")],
 )
 self.assertNotEqual(valobj.child[0].unsigned, 0)
@@ -67,6 +69,7 @@ def test_unique_ptr_variables(self):
 "up_int_ref",
 type=self.make_expected_type("int", qualifiers="&"),
 summary="10",
+#children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
 children=[ValueCheck(name="pointer")],
 )
 self.assertNotEqual(valobj.child[0].unsigned, 0)
@@ -75,6 +78,7 @@ def test_unique_ptr_variables(self):
 "up_int_ref_ref",
 type=self.make_expected_type("int", qualifiers="&&"),
 summary="10",
+#children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
 children=[ValueCheck(name="pointer")],
 )
 self.assertNotEqual(valobj.child[0].unsigned, 0)
@@ -83,7 +87,8 @@ def test_unique_ptr_variables(self):
 "up_str",
 type=self.make_expected_basic_string_ptr(),
 summary='"hello"',
-children=[ValueCheck(name="pointer", summary='"hello"')],
+#children=[ValueCheck(name="pointer"), 
ValueCheck(name="deleter")], # TODO: shouldn't be printing deleter
+children=[ValueCheck(name="pointer")],
 )
 
 valobj = self.expect_var_path("up_user", 
type=self.make_expected_type("User"))

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Reapply PR/87550 (again) (PR #95571)

2024-06-24 Thread Vy Nguyen via lldb-commits


@@ -65,16 +58,67 @@ DAP::DAP()
 
 DAP::~DAP() = default;
 
+void DAP::PopulateExceptionBreakpoints() {
+  llvm::call_once(initExceptionBreakpoints, [this]() {
+exception_breakpoints = std::vector {};
+
+if (lldb::SBDebugger::SupportsLanguage(lldb::eLanguageTypeC_plus_plus)) {
+  exception_breakpoints->emplace_back("cpp_catch", "C++ Catch",
+  lldb::eLanguageTypeC_plus_plus);
+  exception_breakpoints->emplace_back("cpp_throw", "C++ Throw",
+  lldb::eLanguageTypeC_plus_plus);
+}
+if (lldb::SBDebugger::SupportsLanguage(lldb::eLanguageTypeObjC)) {
+  exception_breakpoints->emplace_back("objc_catch", "Objective-C Catch",
+  lldb::eLanguageTypeObjC);
+  exception_breakpoints->emplace_back("objc_throw", "Objective-C Throw",
+  lldb::eLanguageTypeObjC);
+}
+if (lldb::SBDebugger::SupportsLanguage(lldb::eLanguageTypeSwift)) {
+  exception_breakpoints->emplace_back("swift_catch", "Swift Catch",
+  lldb::eLanguageTypeSwift);
+  exception_breakpoints->emplace_back("swift_throw", "Swift Throw",
+  lldb::eLanguageTypeSwift);
+}
+assert(exception_breakpoints.has_value() && "should have been initted");
+assert(!exception_breakpoints->empty() && "should not be empty");
+  });
+}
+
 ExceptionBreakpoint *DAP::GetExceptionBreakpoint(const std::string ) {
-  for (auto  : exception_breakpoints) {
+  // PopulateExceptionBreakpoints() is called after g_dap.debugger is created
+  // in a request-initialize.
+  //
+  // But this GetExceptionBreakpoint() method may be called before attaching, 
in
+  // which case, we may not have populated the filter yet.
+  //
+  // We also cannot call PopulateExceptionBreakpoints() in DAP::DAP() because
+  // we need SBDebugger::Initialize() to have been called before this.
+  //
+  // So just calling PopulateExceptionBreakoints(),which does lazy-populating
+  // seems easiest. Two other options include:
+  //  + call g_dap.PopulateExceptionBreakpoints() in lldb-dap.cpp::main()
+  //right after the call to SBDebugger::Initialize()
+  //  + Just call PopulateExceptionBreakpoints() to get a fresh list  everytime
+  //we query (a bit overkill since it's not likely to change?)
+  PopulateExceptionBreakpoints();
+  assert(exception_breakpoints.has_value() &&
+ "exception_breakpoints must have been populated");

oontvoo wrote:

done - i've removed the unnecessary asserts(but keeping the method name to make 
it clearer that this function's job is to popualte the list)

https://github.com/llvm/llvm-project/pull/95571
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] Reapply PR/87550 (again) (PR #95571)

2024-06-24 Thread Vy Nguyen via lldb-commits
ditional check on language to prevent potential
 check failed

---
 lldb/source/Symbol/TypeSystem.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lldb/source/Symbol/TypeSystem.cpp 
b/lldb/source/Symbol/TypeSystem.cpp
index 5d56d9b1829da..931ce1b0203a9 100644
--- a/lldb/source/Symbol/TypeSystem.cpp
+++ b/lldb/source/Symbol/TypeSystem.cpp
@@ -337,7 +337,7 @@ TypeSystemMap::GetTypeSystemForLanguage(lldb::LanguageType 
language,
 }
 
 bool TypeSystem::SupportsLanguageStatic(lldb::LanguageType language) {
-  if (language == eLanguageTypeUnknown)
+  if (language == eLanguageTypeUnknown || language >= eNumLanguageTypes)
 return false;
 
   LanguageSet languages =

>From 04e6b5fd467233481edd2048b5dd96c7b9972e17 Mon Sep 17 00:00:00 2001
From: Vy Nguyen 
Date: Thu, 13 Jun 2024 15:00:09 -0400
Subject: [PATCH 3/5] check for empty vs un-initted

---
 lldb/tools/lldb-dap/DAP.cpp | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lldb/tools/lldb-dap/DAP.cpp b/lldb/tools/lldb-dap/DAP.cpp
index 263e841b7254d..e4fb3181a2d99 100644
--- a/lldb/tools/lldb-dap/DAP.cpp
+++ b/lldb/tools/lldb-dap/DAP.cpp
@@ -60,7 +60,8 @@ DAP::~DAP() = default;
 
 void DAP::PopulateExceptionBreakpoints() {
   llvm::call_once(initExceptionBreakpoints, [this]() {
-exception_breakpoints = {};
+exception_breakpoints = std::vector {};
+
 if (lldb::SBDebugger::SupportsLanguage(lldb::eLanguageTypeC_plus_plus)) {
   exception_breakpoints->emplace_back("cpp_catch", "C++ Catch",
   lldb::eLanguageTypeC_plus_plus);
@@ -79,6 +80,8 @@ void DAP::PopulateExceptionBreakpoints() {
   exception_breakpoints->emplace_back("swift_throw", "Swift Throw",
   lldb::eLanguageTypeSwift);
 }
+assert(exception_breakpoints.has_value() && "should have been initted");
+assert(!exception_breakpoints->empty() && "should not be empty");
   });
 }
 

>From c0bd1d8271ccf6102f704f1898a9b3de7d9c026d Mon Sep 17 00:00:00 2001
From: Vy Nguyen 
Date: Fri, 21 Jun 2024 12:51:16 -0400
Subject: [PATCH 4/5] remove some assert since it's already done inside
 PopulateExceptionBreakpoint

---
 lldb/tools/lldb-dap/DAP.cpp | 4 
 1 file changed, 4 deletions(-)

diff --git a/lldb/tools/lldb-dap/DAP.cpp b/lldb/tools/lldb-dap/DAP.cpp
index e4fb3181a2d99..aebe0692da6bb 100644
--- a/lldb/tools/lldb-dap/DAP.cpp
+++ b/lldb/tools/lldb-dap/DAP.cpp
@@ -102,8 +102,6 @@ ExceptionBreakpoint *DAP::GetExceptionBreakpoint(const 
std::string ) {
   //  + Just call PopulateExceptionBreakpoints() to get a fresh list  everytime
   //we query (a bit overkill since it's not likely to change?)
   PopulateExceptionBreakpoints();
-  assert(exception_breakpoints.has_value() &&
- "exception_breakpoints must have been populated");
 
   for (auto  : *exception_breakpoints) {
 if (bp.filter == filter)
@@ -115,8 +113,6 @@ ExceptionBreakpoint *DAP::GetExceptionBreakpoint(const 
std::string ) {
 ExceptionBreakpoint *DAP::GetExceptionBreakpoint(const lldb::break_id_t bp_id) 
{
   // See comment in the other GetExceptionBreakpoint().
   PopulateExceptionBreakpoints();
-  assert(exception_breakpoints.has_value() &&
- "exception_breakpoints must have been populated");
 
   for (auto  : *exception_breakpoints) {
 if (bp.bp.GetID() == bp_id)

>From 53df0d332e0e183c992e1f124b9156b51777ba03 Mon Sep 17 00:00:00 2001
From: Vy Nguyen 
Date: Mon, 24 Jun 2024 15:20:44 -0400
Subject: [PATCH 5/5] rename flag

---
 lldb/tools/lldb-dap/DAP.cpp | 3 +--
 lldb/tools/lldb-dap/DAP.h   | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/lldb/tools/lldb-dap/DAP.cpp b/lldb/tools/lldb-dap/DAP.cpp
index aebe0692da6bb..0196aed819f2b 100644
--- a/lldb/tools/lldb-dap/DAP.cpp
+++ b/lldb/tools/lldb-dap/DAP.cpp
@@ -59,7 +59,7 @@ DAP::DAP()
 DAP::~DAP() = default;
 
 void DAP::PopulateExceptionBreakpoints() {
-  llvm::call_once(initExceptionBreakpoints, [this]() {
+  llvm::call_once(init_exception_breakpoints_flag, [this]() {
 exception_breakpoints = std::vector {};
 
 if (lldb::SBDebugger::SupportsLanguage(lldb::eLanguageTypeC_plus_plus)) {
@@ -80,7 +80,6 @@ void DAP::PopulateExceptionBreakpoints() {
   exception_breakpoints->emplace_back("swift_throw", "Swift Throw",
   lldb::eLanguageTypeSwift);
 }
-assert(exception_breakpoints.has_value() && "should have been initted");
 assert(!exception_breakpoints->empty() && "should not be empty");
   });
 }
diff --git a/lldb/tools/lldb-dap/DAP.h b/lldb/tools/lldb-dap/DAP.h
index daa0d9f1aa7f0..37e57d58968d9 100644
--- a/lldb/tools/lldb-dap/DAP.h
+++ b/lldb/tools/lldb-dap/DAP.h
@@ -157,7 +157,7 @@ struct DAP {
   llvm::StringMap source_breakpoints;
   FunctionBreakpointMap function_breakpoints;
   std::optional> exception_breakpoints;
-  llvm::once_flag initExceptionBreakpoints;
+  llvm::once_flag init_exception_breakpoints_flag;
   std::vector init_commands;
   std::vector pre_run_commands;
   std::vector post_run_commands;

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[jenkinsci/oic-auth-plugin] f6f0ce: Bump org.openrewrite.recipe:rewrite-jenkins from 0...

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: refs/heads/master
  Home:   https://github.com/jenkinsci/oic-auth-plugin
  Commit: f6f0ceaa1601a32516136386a60bc7dbcee8c3e2
  
https://github.com/jenkinsci/oic-auth-plugin/commit/f6f0ceaa1601a32516136386a60bc7dbcee8c3e2
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump org.openrewrite.recipe:rewrite-jenkins from 0.7.0 to 0.8.1

Bumps 
[org.openrewrite.recipe:rewrite-jenkins](https://github.com/openrewrite/rewrite-jenkins)
 from 0.7.0 to 0.8.1.
- [Release notes](https://github.com/openrewrite/rewrite-jenkins/releases)
- 
[Commits](https://github.com/openrewrite/rewrite-jenkins/compare/v0.7.0...v0.8.1)

---
updated-dependencies:
- dependency-name: org.openrewrite.recipe:rewrite-jenkins
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/oic-auth-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/oic-auth-plugin/push/refs/heads/master/f3d35b-f6f0ce%40github.com.


[clang] [clang] [MinGW] Set a predefined __GXX_TYPEINFO_EQUALITY_INLINE=0 for… (PR #96062)

2024-06-24 Thread Silver Zachara via cfe-commits

silverqx wrote:

Thx

https://github.com/llvm/llvm-project/pull/96062
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/oic-auth-plugin] f3d35b: Bump org.openrewrite.maven:rewrite-maven-plugin fr...

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: refs/heads/master
  Home:   https://github.com/jenkinsci/oic-auth-plugin
  Commit: f3d35b40c148d691d1181a306df8cff67771612a
  
https://github.com/jenkinsci/oic-auth-plugin/commit/f3d35b40c148d691d1181a306df8cff67771612a
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump org.openrewrite.maven:rewrite-maven-plugin from 5.33.0 to 5.34.1

Bumps 
[org.openrewrite.maven:rewrite-maven-plugin](https://github.com/openrewrite/rewrite-maven-plugin)
 from 5.33.0 to 5.34.1.
- [Release notes](https://github.com/openrewrite/rewrite-maven-plugin/releases)
- 
[Commits](https://github.com/openrewrite/rewrite-maven-plugin/compare/v5.33.0...v5.34.1)

---
updated-dependencies:
- dependency-name: org.openrewrite.maven:rewrite-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/oic-auth-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/oic-auth-plugin/push/refs/heads/master/579cce-f3d35b%40github.com.


[clang] [clang][OpenMP] Fix teams nesting of region check (PR #94806)

2024-06-24 Thread via cfe-commits

https://github.com/jyu2-git approved this pull request.

LGTM.  Thanks for fixing!

https://github.com/llvm/llvm-project/pull/94806
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] [MinGW] Set a predefined __GXX_TYPEINFO_EQUALITY_INLINE=0 for… (PR #96062)

2024-06-24 Thread Martin Storsjö via cfe-commits

mstorsjo wrote:

> Do you already know in which Clang versions this will be fixed? Also thx for 
> fixing this 

The fix will be in the upcoming 19.x which is going to release candidates in 
August and might be released in September/October. (Although, downstreams may 
pick it up and backport the patch to earlier releases - msys2 does this if the 
fix is relevant to them.)

https://github.com/llvm/llvm-project/pull/96062
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/dingtalk-plugin] d44a18: chore(deps): bump io.jenkins.tools.bom:bom-2.426.x

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.426.x-3143.v347db_7c6db_6e
  Home:   https://github.com/jenkinsci/dingtalk-plugin
  Commit: d44a18d961d203d592b87704451550d5513e91f8
  
https://github.com/jenkinsci/dingtalk-plugin/commit/d44a18d961d203d592b87704451550d5513e91f8
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  chore(deps): bump io.jenkins.tools.bom:bom-2.426.x

Bumps [io.jenkins.tools.bom:bom-2.426.x](https://github.com/jenkinsci/bom) from 
2884.vc36b_64ce114a_ to 3143.v347db_7c6db_6e.
- [Release notes](https://github.com/jenkinsci/bom/releases)
- [Commits](https://github.com/jenkinsci/bom/commits)

---
updated-dependencies:
- dependency-name: io.jenkins.tools.bom:bom-2.426.x
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/dingtalk-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/dingtalk-plugin/push/refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.426.x-3143.v347db_7c6db_6e/00-d44a18%40github.com.


[clang] 2ae0905 - [C23] Claim we do not conform to N2819

2024-06-24 Thread Aaron Ballman via cfe-commits

Author: Aaron Ballman
Date: 2024-06-24T15:09:20-04:00
New Revision: 2ae09052477e1a966afbc5482d88585f95694c53

URL: 
https://github.com/llvm/llvm-project/commit/2ae09052477e1a966afbc5482d88585f95694c53
DIFF: 
https://github.com/llvm/llvm-project/commit/2ae09052477e1a966afbc5482d88585f95694c53.diff

LOG: [C23] Claim we do not conform to N2819

This paper clarified the lifetime of compound literal objects in odd
scopes, such as use at function prototype scope.

We do not currently implement this paper, as the new test demonstrates.

Added: 
clang/test/C/C2x/n2819.c

Modified: 
clang/www/c_status.html

Removed: 




diff  --git a/clang/test/C/C2x/n2819.c b/clang/test/C/C2x/n2819.c
new file mode 100644
index 0..c428fbba80245
--- /dev/null
+++ b/clang/test/C/C2x/n2819.c
@@ -0,0 +1,57 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py 
UTC_ARGS: --version 3
+// RUN: %clang_cc1 -triple=x86_64 -emit-llvm -o - -std=c23 %s | FileCheck %s
+
+/* WG14 N2819: No
+ * Disambiguate the storage class of some compound literals
+ */
+
+int *escaped;
+// CHECK-LABEL: define dso_local i32 @f(
+// CHECK-SAME: ptr noundef [[PTR:%.*]]) #[[ATTR0:[0-9]+]] {
+// CHECK-NEXT:  entry:
+// CHECK-NEXT:[[PTR_ADDR:%.*]] = alloca ptr, align 8
+// CHECK-NEXT:store ptr [[PTR]], ptr [[PTR_ADDR]], align 8
+// CHECK-NEXT:[[TMP0:%.*]] = load ptr, ptr [[PTR_ADDR]], align 8
+// CHECK-NEXT:store ptr [[TMP0]], ptr @escaped, align 8
+// CHECK-NEXT:ret i32 1
+//
+int f(int *ptr) { escaped = ptr; return 1; }
+
+// CHECK-LABEL: define dso_local i32 @g(
+// CHECK-SAME: ptr noundef [[PARA:%.*]]) #[[ATTR0]] {
+// CHECK-NEXT:  entry:
+// CHECK-NEXT:[[PARA_ADDR:%.*]] = alloca ptr, align 8
+// CHECK-NEXT:store ptr [[PARA]], ptr [[PARA_ADDR]], align 8
+// CHECK-NEXT:[[CALL:%.*]] = call i32 @f(ptr noundef @.compoundliteral)
+// CHECK-NEXT:[[TMP0:%.*]] = zext i32 [[CALL]] to i64
+// CHECK-NEXT:ret i32 0
+//
+// FIXME: notice the we are using the global .compoundliteral object, not
+// allocating a new object on each call to g(). That's what was clarified by
+// N2819.
+int g(char *para [f(( int [27]) { 0 })]) {
+  return 0;
+}
+
+// CHECK-LABEL: define dso_local i32 @main(
+// CHECK-SAME: ) #[[ATTR0]] {
+// CHECK-NEXT:  entry:
+// CHECK-NEXT:[[RETVAL:%.*]] = alloca i32, align 4
+// CHECK-NEXT:store i32 0, ptr [[RETVAL]], align 4
+// CHECK-NEXT:[[CALL:%.*]] = call i32 @g(ptr noundef null)
+// CHECK-NEXT:[[TMP0:%.*]] = load ptr, ptr @escaped, align 8
+// CHECK-NEXT:store i32 12, ptr [[TMP0]], align 4
+// CHECK-NEXT:[[TMP1:%.*]] = load ptr, ptr @escaped, align 8
+// CHECK-NEXT:[[TMP2:%.*]] = load i32, ptr [[TMP1]], align 4
+// CHECK-NEXT:ret i32 [[TMP2]]
+//
+int main() {
+  // Sets 'escaped' to the address of the array created by the compound 
literal.
+  g(nullptr);
+
+  // The lifetime of that object should have ended when g() returned, so this
+  // should be a use-after-free.
+  *escaped = 12;
+  return *escaped;
+}
+

diff  --git a/clang/www/c_status.html b/clang/www/c_status.html
index 434c9e20011d4..25656c0304da1 100644
--- a/clang/www/c_status.html
+++ b/clang/www/c_status.html
@@ -1025,7 +1025,7 @@ C23 implementation status
 
   Disambiguate the storage class of some compound literals
   https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2819.pdf;>N2819
-  Unknown
+  No
 
 
   Add annotations for unreachable control flow v2



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [lldb/DWARF] Remove parsing recursion when searching for definition DIEs (PR #96484)

2024-06-24 Thread Pavel Labath via lldb-commits

labath wrote:

> This patch as-is is NFC?
NFC**I**, I would say :) I don't think this should change the behavior in any 
way, but it's pretty hard to guarantee that.

> (no tests) but without this patch, the other delay-definition-die patch would 
> have had a problem?
> 
> Is it possible to add a test in this patch that would exercise the thing that 
> would become buggy if the delay-definition-die patch were to be recommitted?

Sort of. The situation is a bit complicated, because this touches pretty much 
the same code as the other patch, so the other patch will not apply cleanly or 
become magically correct. It's more like a building block that enables us to 
rewrite the other patch in a more robust manner -- which brings us to the 
second way this is complicated: It's not that the other patch was wrong on its 
own. It was just very sensitive to the other bugs. Previously, if we failed to 
unique the types correctly, we would "just" get the wrong type (or maybe no 
type). With the patch, that situation would trigger a hard assert. On its own, 
that might even be considered a good thing (easier to find bugs), we're it not 
for the fact that this made the logic of the patch very hard to follow. So, 
this is my attempt to make it more straight-forward.

As for tests, it is possible to write a test which would reproduce a crash with 
the original patch, but that test is contingent on the existence of another 
bug. When I reverted that patch, I added a test (in 
de3f1b6d68ab8a0e827db84b328803857a4f60df) which triggered the crash. However, 
now that that bug is fixed (#95905), it does not crash anymore. Now, I happen 
to know of another bug (which happens to be triggered by the same code, only 
compiled with type units), but the same thing will happen once that bug is 
fixed. Given all of that, I don't think another test case is needed with this 
particular patch. It might be interesting for the final delay patch, if we 
don't fix the type unit thing by then, but I think of this patch mostly as a 
cleanup.

https://github.com/llvm/llvm-project/pull/96484
_______
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[clang] [compiler-rt] [llvm] [PAC][AArch64] Support init/fini array signing (PR #96478)

2024-06-24 Thread Daniil Kovalev via cfe-commits

kovdan01 wrote:

> Can we have LLVM IR test as well?

I've added llvm/test/CodeGen/AArch64/ptrauth-init-fini.ll, thanks for 
suggestion.

https://github.com/llvm/llvm-project/pull/96478
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/active-choices-plugin] 770172: Bump org.seleniumhq.selenium:selenium-java from 4....

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/org.seleniumhq.selenium-selenium-java-4.22.0
  Home:   https://github.com/jenkinsci/active-choices-plugin
  Commit: 7701729b2ae3bdf7e85547ddcfe70ac332f18166
  
https://github.com/jenkinsci/active-choices-plugin/commit/7701729b2ae3bdf7e85547ddcfe70ac332f18166
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump org.seleniumhq.selenium:selenium-java from 4.21.0 to 4.22.0

Bumps 
[org.seleniumhq.selenium:selenium-java](https://github.com/SeleniumHQ/selenium) 
from 4.21.0 to 4.22.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- 
[Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.21.0...selenium-4.22.0)

---
updated-dependencies:
- dependency-name: org.seleniumhq.selenium:selenium-java
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/active-choices-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/active-choices-plugin/push/refs/heads/dependabot/maven/org.seleniumhq.selenium-selenium-java-4.22.0/00-770172%40github.com.


[jenkinsci/active-choices-plugin] d3cd66: Bump io.github.bonigarcia:webdrivermanager from 5....

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/io.github.bonigarcia-webdrivermanager-5.9.1
  Home:   https://github.com/jenkinsci/active-choices-plugin
  Commit: d3cd66eb486d0cdf1b1176863eec15fb7c8bb65c
  
https://github.com/jenkinsci/active-choices-plugin/commit/d3cd66eb486d0cdf1b1176863eec15fb7c8bb65c
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump io.github.bonigarcia:webdrivermanager from 5.8.0 to 5.9.1

Bumps 
[io.github.bonigarcia:webdrivermanager](https://github.com/bonigarcia/webdrivermanager)
 from 5.8.0 to 5.9.1.
- [Release notes](https://github.com/bonigarcia/webdrivermanager/releases)
- 
[Changelog](https://github.com/bonigarcia/webdrivermanager/blob/master/CHANGELOG.md)
- 
[Commits](https://github.com/bonigarcia/webdrivermanager/compare/webdrivermanager-5.8.0...webdrivermanager-5.9.1)

---
updated-dependencies:
- dependency-name: io.github.bonigarcia:webdrivermanager
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/active-choices-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/active-choices-plugin/push/refs/heads/dependabot/maven/io.github.bonigarcia-webdrivermanager-5.9.1/00-d3cd66%40github.com.


[jenkinsci/active-choices-plugin] 4b8466: Bump org.jenkins-ci.plugins:scriptler

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/org.jenkins-ci.plugins-scriptler-363.vd97ef616cb_f9
  Home:   https://github.com/jenkinsci/active-choices-plugin
  Commit: 4b8466ce5522d9dbcff73edcd177d1c7be0ef6f0
  
https://github.com/jenkinsci/active-choices-plugin/commit/4b8466ce5522d9dbcff73edcd177d1c7be0ef6f0
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump org.jenkins-ci.plugins:scriptler

Bumps 
[org.jenkins-ci.plugins:scriptler](https://github.com/jenkinsci/scriptler-plugin)
 from 348.v5d461e205da_a_ to 363.vd97ef616cb_f9.
- [Release notes](https://github.com/jenkinsci/scriptler-plugin/releases)
- 
[Changelog](https://github.com/jenkinsci/scriptler-plugin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jenkinsci/scriptler-plugin/commits)

---
updated-dependencies:
- dependency-name: org.jenkins-ci.plugins:scriptler
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/active-choices-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/active-choices-plugin/push/refs/heads/dependabot/maven/org.jenkins-ci.plugins-scriptler-363.vd97ef616cb_f9/00-4b8466%40github.com.


[jenkinsci/active-choices-plugin] d92bc7: Bump io.jenkins.tools.bom:bom-2.426.x

2024-06-24 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.426.x-3143.v347db_7c6db_6e
  Home:   https://github.com/jenkinsci/active-choices-plugin
  Commit: d92bc76072412324e00e3b193133098a3c2ef42e
  
https://github.com/jenkinsci/active-choices-plugin/commit/d92bc76072412324e00e3b193133098a3c2ef42e
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump io.jenkins.tools.bom:bom-2.426.x

Bumps [io.jenkins.tools.bom:bom-2.426.x](https://github.com/jenkinsci/bom) from 
3135.v6d6c1f6b_3572 to 3143.v347db_7c6db_6e.
- [Release notes](https://github.com/jenkinsci/bom/releases)
- [Commits](https://github.com/jenkinsci/bom/commits)

---
updated-dependencies:
- dependency-name: io.jenkins.tools.bom:bom-2.426.x
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/active-choices-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/active-choices-plugin/push/refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.426.x-3143.v347db_7c6db_6e/00-d92bc7%40github.com.


[clang] Update Clang extension criteria (PR #96532)

2024-06-24 Thread Aaron Ballman via cfe-commits

https://github.com/AaronBallman closed 
https://github.com/llvm/llvm-project/pull/96532
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [compiler-rt] [llvm] [PAC][AArch64] Support init/fini array signing (PR #96478)

2024-06-24 Thread Daniil Kovalev via cfe-commits
 4   // Name length is always 4 ("GNU")
   .long end - begin // Data length
@@ -123,15 +123,15 @@ begin:
   .long 0xc001  // Type: GNU_PROPERTY_AARCH64_FEATURE_PAUTH
   .long 16  // Data size
   .quad 0x1002  // PAuth ABI platform
-  .quad 128 // PAuth ABI version
+  .quad 256 // PAuth ABI version
   .p2align 3// Align to 8 byte for 64 bit
 end:
 
-# RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x1002-128.s -o 
gnu-0x1002-128.o
-# RUN: llvm-readelf --notes gnu-0x1002-128.o | \
-# RUN:   FileCheck --check-prefix=ELF -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x80 (unknown)" %s
-# RUN: llvm-readobj --notes gnu-0x1002-128.o | \
-# RUN:   FileCheck --check-prefix=OBJ -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x80 (unknown)" %s
+# RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x1002-256.s -o 
gnu-0x1002-256.o
+# RUN: llvm-readelf --notes gnu-0x1002-256.o | \
+# RUN:   FileCheck --check-prefix=ELF -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x100 (unknown)" %s
+# RUN: llvm-readobj --notes gnu-0x1002-256.o | \
+# RUN:   FileCheck --check-prefix=OBJ -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x100 (unknown)" %s
 
 #--- gnu-short.s
 .section ".note.gnu.property", "a"
diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp 
b/llvm/tools/llvm-readobj/ELFDumper.cpp
index c696934a959b2..e53db899c5f41 100644
--- a/llvm/tools/llvm-readobj/ELFDumper.cpp
+++ b/llvm/tools/llvm-readobj/ELFDumper.cpp
@@ -5216,8 +5216,10 @@ static bool printAArch64PAuthABICoreInfo(raw_ostream 
, uint32_t DataSize,
 Flags[AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_VPTRTYPEDISCR] =
 "VTPtrTypeDiscrimination";
 Flags[AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINI] = "InitFini";
+Flags[AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINIADDRDISC] =
+"InitFiniAddressDiscrimination";
 
-static_assert(AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINI ==
+static_assert(AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINIADDRDISC ==
   AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_LAST,
   "Update when new enum items are defined");
 

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] d6a3bd1 - Update Clang extension criteria (#96532)

2024-06-24 Thread via cfe-commits

Author: Aaron Ballman
Date: 2024-06-24T15:06:11-04:00
New Revision: d6a3bd1325c5c54ef59e8a612451757c86186355

URL: 
https://github.com/llvm/llvm-project/commit/d6a3bd1325c5c54ef59e8a612451757c86186355
DIFF: 
https://github.com/llvm/llvm-project/commit/d6a3bd1325c5c54ef59e8a612451757c86186355.diff

LOG: Update Clang extension criteria (#96532)

This updates Clang's extension criteria to explicitly mention impacts on
other projects within the monorepo.

These changes were discussed in the following RFC:
https://discourse.llvm.org/t/rfc-require-discussion-of-impact-to-monorepo-stakeholders-when-adding-new-clang-extensions/79613

Added: 


Modified: 
clang/www/get_involved.html

Removed: 




diff  --git a/clang/www/get_involved.html b/clang/www/get_involved.html
index 3fc688837d0bc..99fa03abb6234 100755
--- a/clang/www/get_involved.html
+++ b/clang/www/get_involved.html
@@ -126,6 +126,12 @@ Contributing Extensions to Clang
   extension is not broken by ongoing maintenance in Clang. The test suite
   should be complete enough that another compiler vendor could conceivably
   validate their implementation of the feature against it.
+
+  A support story for other impacted projects within the monorepo: If the
+  extension can impact other parts of the project (libc++, lldb, compiler-rt,
+  etc), the proposal needs to document the impact for these projects to fully
+  support the extension and what level of support is expected. The impacted
+  project communities need to agree with that plan.
 
 
 



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [compiler-rt] [llvm] [PAC][AArch64] Support init/fini array signing (PR #96478)

2024-06-24 Thread Daniil Kovalev via cfe-commits
turns, !PointerAuthAuthTraps, 
PointerAuthVTPtrAddressDiscrimination, !PointerAuthVTPtrTypeDiscrimination, 
PointerAuthInitFini, !PointerAuthInitFiniAddressDiscrimination)" %s
 # RUN: llvm-readobj --notes gnu-0x1002-85.o | \
 # RUN:   FileCheck --check-prefix=OBJ -DPLATFORM="0x1002 (llvm_linux)" \
-# RUN:   -DVERSION="0x55 (PointerAuthIntrinsics, !PointerAuthCalls, 
PointerAuthReturns, !PointerAuthAuthTraps, 
PointerAuthVTPtrAddressDiscrimination, !PointerAuthVTPtrTypeDiscrimination, 
PointerAuthInitFini)" %s
+# RUN:   -DVERSION="0x55 (PointerAuthIntrinsics, !PointerAuthCalls, 
PointerAuthReturns, !PointerAuthAuthTraps, 
PointerAuthVTPtrAddressDiscrimination, !PointerAuthVTPtrTypeDiscrimination, 
PointerAuthInitFini, !PointerAuthInitFiniAddressDiscrimination)" %s
 
-#--- gnu-0x1002-128.s
+#--- gnu-0x1002-256.s
 .section ".note.gnu.property", "a"
   .long 4   // Name length is always 4 ("GNU")
   .long end - begin // Data length
@@ -123,15 +123,15 @@ begin:
   .long 0xc001  // Type: GNU_PROPERTY_AARCH64_FEATURE_PAUTH
   .long 16  // Data size
   .quad 0x1002  // PAuth ABI platform
-  .quad 128 // PAuth ABI version
+  .quad 256 // PAuth ABI version
   .p2align 3// Align to 8 byte for 64 bit
 end:
 
-# RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x1002-128.s -o 
gnu-0x1002-128.o
-# RUN: llvm-readelf --notes gnu-0x1002-128.o | \
-# RUN:   FileCheck --check-prefix=ELF -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x80 (unknown)" %s
-# RUN: llvm-readobj --notes gnu-0x1002-128.o | \
-# RUN:   FileCheck --check-prefix=OBJ -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x80 (unknown)" %s
+# RUN: llvm-mc -filetype=obj -triple aarch64-linux-gnu gnu-0x1002-256.s -o 
gnu-0x1002-256.o
+# RUN: llvm-readelf --notes gnu-0x1002-256.o | \
+# RUN:   FileCheck --check-prefix=ELF -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x100 (unknown)" %s
+# RUN: llvm-readobj --notes gnu-0x1002-256.o | \
+# RUN:   FileCheck --check-prefix=OBJ -DPLATFORM="0x1002 (llvm_linux)" 
-DVERSION="0x100 (unknown)" %s
 
 #--- gnu-short.s
 .section ".note.gnu.property", "a"
diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp 
b/llvm/tools/llvm-readobj/ELFDumper.cpp
index c696934a959b2..e53db899c5f41 100644
--- a/llvm/tools/llvm-readobj/ELFDumper.cpp
+++ b/llvm/tools/llvm-readobj/ELFDumper.cpp
@@ -5216,8 +5216,10 @@ static bool printAArch64PAuthABICoreInfo(raw_ostream 
, uint32_t DataSize,
 Flags[AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_VPTRTYPEDISCR] =
 "VTPtrTypeDiscrimination";
 Flags[AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINI] = "InitFini";
+Flags[AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINIADDRDISC] =
+"InitFiniAddressDiscrimination";
 
-static_assert(AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINI ==
+static_assert(AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_INITFINIADDRDISC ==
   AARCH64_PAUTH_PLATFORM_LLVM_LINUX_VERSION_LAST,
   "Update when new enum items are defined");
 

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] [MinGW] Set a predefined __GXX_TYPEINFO_EQUALITY_INLINE=0 for… (PR #96062)

2024-06-24 Thread Silver Zachara via cfe-commits

silverqx wrote:

Do you already know in which Clang versions this will be fixed?

https://github.com/llvm/llvm-project/pull/96062
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Qemu-commits] [qemu/qemu] 9bf212: hw/s390x/ccw: Make s390_ccw_get_dev_info() return ...

2024-06-24 Thread Richard Henderson via Qemu-commits
  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 9bf21277c4edabaef3346e2cb566040331fbc6e3
  
https://github.com/qemu/qemu/commit/9bf21277c4edabaef3346e2cb566040331fbc6e3
  Author: Cédric Le Goater 
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M hw/s390x/s390-ccw.c

  Log Message:
  ---
  hw/s390x/ccw: Make s390_ccw_get_dev_info() return a bool

Since s390_ccw_get_dev_info() takes an 'Error **' argument, best
practices suggest to return a bool. See the qapi/error.h Rules
section. While at it, modify the call in s390_ccw_realize().

Signed-off-by: Cédric Le Goater 
Reviewed-by: Zhenzhong Duan 
Reviewed-by: Anthony Krowiak 
Reviewed-by: Eric Farman 
Reviewed-by: Thomas Huth 
Message-ID: <20240522170107.289532-2-...@redhat.com>
Signed-off-by: Thomas Huth 


  Commit: 4a6a90f30fa3b2973bbb6faf985466b4338f903f
  
https://github.com/qemu/qemu/commit/4a6a90f30fa3b2973bbb6faf985466b4338f903f
  Author: Cédric Le Goater 
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M hw/s390x/ccw-device.c
M hw/s390x/ccw-device.h
M hw/s390x/s390-ccw.c

  Log Message:
  ---
  s390x/css: Make CCWDeviceClass::realize return bool

Since the realize() handler of CCWDeviceClass takes an 'Error **'
argument, best practices suggest to return a bool. See the api/error.h
Rules section. While at it, modify the call in s390_ccw_realize().

Signed-off-by: Cédric Le Goater 
Reviewed-by: Zhenzhong Duan 
Reviewed-by: Anthony Krowiak 
Reviewed-by: Eric Farman 
Reviewed-by: Thomas Huth 
Message-ID: <20240522170107.289532-3-...@redhat.com>
Signed-off-by: Thomas Huth 


  Commit: 19a1740fd3eb31ffc5b73ed101f1e3847c546631
  
https://github.com/qemu/qemu/commit/19a1740fd3eb31ffc5b73ed101f1e3847c546631
  Author: Cédric Le Goater 
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M hw/s390x/s390-ccw.c

  Log Message:
  ---
  hw/s390x/ccw: Remove local Error variable from s390_ccw_realize()

Use the 'Error **errp' argument of s390_ccw_realize() instead and
remove the error_propagate() call.

Signed-off-by: Cédric Le Goater 
Reviewed-by: Zhenzhong Duan 
Reviewed-by: Anthony Krowiak 
Reviewed-by: Eric Farman 
Reviewed-by: Thomas Huth 
Message-ID: <20240522170107.289532-4-...@redhat.com>
Signed-off-by: Thomas Huth 


  Commit: 45f4218784ce20b2c303dd07b1fa3aa6838eca73
  
https://github.com/qemu/qemu/commit/45f4218784ce20b2c303dd07b1fa3aa6838eca73
  Author: Cédric Le Goater 
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M hw/s390x/s390-ccw.c
M hw/vfio/ccw.c
M include/hw/s390x/s390-ccw.h

  Log Message:
  ---
  s390x/css: Make S390CCWDeviceClass::realize return bool

Since the realize() handler of S390CCWDeviceClass takes an 'Error **'
argument, best practices suggest to return a bool. See the api/error.h
Rules section. While at it, modify the call in vfio_ccw_realize().

Signed-off-by: Cédric Le Goater 
Reviewed-by: Zhenzhong Duan 
Reviewed-by: Anthony Krowiak 
Reviewed-by: Eric Farman 
Reviewed-by: Thomas Huth 
Message-ID: <20240522170107.289532-5-...@redhat.com>
Signed-off-by: Thomas Huth 


  Commit: 1aeebbd6213af1aef09b4906c487f9079a5d8947
  
https://github.com/qemu/qemu/commit/1aeebbd6213af1aef09b4906c487f9079a5d8947
  Author: Cédric Le Goater 
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M hw/vfio/ccw.c

  Log Message:
  ---
  vfio/ccw: Use the 'Error **errp' argument of vfio_ccw_realize()

The local error variable is kept for vfio_ccw_register_irq_notifier()
because it is not considered as a failing condition. We will change
how error reporting is done in following changes.

Remove the error_propagate() call.

Cc: Zhenzhong Duan 
Signed-off-by: Cédric Le Goater 
Reviewed-by: Zhenzhong Duan 
Reviewed-by: Anthony Krowiak 
Reviewed-by: Eric Farman 
Reviewed-by: Thomas Huth 
Message-ID: <20240522170107.289532-6-...@redhat.com>
Signed-off-by: Thomas Huth 


  Commit: fa8053841efebab7fcdc76252b953f8dafe7a343
  
https://github.com/qemu/qemu/commit/fa8053841efebab7fcdc76252b953f8dafe7a343
  Author: Zhenzhong Duan 
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M hw/vfio/ccw.c

  Log Message:
  ---
  vfio/ccw: Fix the missed unrealize() call in error path

When get name failed, we should call unrealize() so that
vfio_ccw_realize() is self contained.

Fixes: 909a6254eda ("vfio/ccw: Make vfio cdev pre-openable by passing a file 
handle")
Signed-off-by: Zhenzhong Duan 
Reviewed-by: Cédric Le Goater 
Reviewed-by: Eric Farman 
Reviewed-by: Thomas Huth 
Message-ID: <20240522170107.289532-7-...@redhat.com>
Signed-off-by: Thomas Huth 


  Commit: d48a54042f25d6f1fe442e3a524b1f2b7afd6d8e
  
https://github.com/qemu/qemu/commit/d48a54042f25d6f1fe442e3a524b1f2b7afd6d8e
  Author: Cédric Le Goater 
  Date:   2024-06-24 (Mon, 24 Jun 2024)

  Changed paths:
M hw/vfio/ap.c
M hw/vfio/ccw.c

  Log Message:
  ---
  vfio/{ap, ccw}: Use warn_report_err() for IRQ 

[clang-tools-extra] [clang-tidy] Fix assert in performance-unnecessary-copy-init. (PR #96506)

2024-06-24 Thread Piotr Zegar via cfe-commits

https://github.com/PiotrZSL approved this pull request.


https://github.com/llvm/llvm-project/pull/96506
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Update Clang extension criteria (PR #96532)

2024-06-24 Thread Nikita Popov via cfe-commits

https://github.com/nikic approved this pull request.


https://github.com/llvm/llvm-project/pull/96532
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Update Clang extension criteria (PR #96532)

2024-06-24 Thread Fangrui Song via cfe-commits

https://github.com/MaskRay approved this pull request.


https://github.com/llvm/llvm-project/pull/96532
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[llvm-branch-commits] [mlir] [mlir][Transforms][NFC] Dialect Conversion: Move argument materialization logic (PR #96329)

2024-06-24 Thread Oleksandr Alex Zinenko via llvm-branch-commits

https://github.com/ftynse approved this pull request.


https://github.com/llvm/llvm-project/pull/96329
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[clang] [libclang/python] Refactor enum usage (PR #95608)

2024-06-24 Thread Vlad Serebrennikov via cfe-commits

Endilll wrote:

Also worth pinging @linux4life798 

https://github.com/llvm/llvm-project/pull/95608
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [mlir] [polly] [IR][NFC] Update IRBuilder to use InsertPosition (PR #96497)

2024-06-24 Thread Nikita Popov via cfe-commits

nikic wrote:

Looks like using InsertPosition in IRBuilder has some overhead: 
https://llvm-compile-time-tracker.com/compare.php?from=317277e4f961edf13132914a58a26408db4ab0aa=6481dc57612671ebe77fe9c34214fba94e1b3b27=instructions:u

So it might make sense to keep some explicit overloads for IRBuilder (not sure 
which ones are hot though).

https://github.com/llvm/llvm-project/pull/96497
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [lldb] Fix failing TestFind(Ranges)InMemory.py tests. (PR #96511)

2024-06-24 Thread Jonas Devlieghere via lldb-commits

https://github.com/JDevlieghere closed 
https://github.com/llvm/llvm-project/pull/96511
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] 33a9c57 - [lldb] Fix failing TestFind(Ranges)InMemory.py tests. (#96511)

2024-06-24 Thread via lldb-commits

Author: Miro Bucko
Date: 2024-06-24T11:38:05-07:00
New Revision: 33a9c57b89c3ea901a057c3fcc9c9160eaf5a625

URL: 
https://github.com/llvm/llvm-project/commit/33a9c57b89c3ea901a057c3fcc9c9160eaf5a625
DIFF: 
https://github.com/llvm/llvm-project/commit/33a9c57b89c3ea901a057c3fcc9c9160eaf5a625.diff

LOG: [lldb] Fix failing TestFind(Ranges)InMemory.py tests. (#96511)

This is to unblock #95007. Will investigate why the assertion is failing
on some arch.

Added: 


Modified: 
lldb/test/API/python_api/find_in_memory/address_ranges_helper.py

Removed: 




diff  --git a/lldb/test/API/python_api/find_in_memory/address_ranges_helper.py 
b/lldb/test/API/python_api/find_in_memory/address_ranges_helper.py
index 0544100f97b29..2c11fba80766f 100644
--- a/lldb/test/API/python_api/find_in_memory/address_ranges_helper.py
+++ b/lldb/test/API/python_api/find_in_memory/address_ranges_helper.py
@@ -35,7 +35,6 @@ def GetRangeFromAddrValue(test_base, addr):
 )
 
 test_base.assertTrue(region.IsReadable())
-test_base.assertFalse(region.IsExecutable())
 
 address_start = lldb.SBAddress(region.GetRegionBase(), test_base.target)
 stack_size = region.GetRegionEnd() - region.GetRegionBase()



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[clang] Add flag to opt out of wasm-opt (PR #95208)

2024-06-24 Thread Sam Clegg via cfe-commits

sbc100 wrote:

I wonder if there is some why to avoiding adding this new option globally like 
this and instead limit it in scope the wasm target in some way? 



https://github.com/llvm/llvm-project/pull/95208
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Update Clang extension criteria (PR #96532)

2024-06-24 Thread Jonas Devlieghere via cfe-commits

https://github.com/JDevlieghere approved this pull request.


https://github.com/llvm/llvm-project/pull/96532
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Update Clang extension criteria (PR #96532)

2024-06-24 Thread via cfe-commits

llvmbot wrote:




@llvm/pr-subscribers-clang

Author: Aaron Ballman (AaronBallman)


Changes

This updates Clang's extension criteria to explicitly mention impacts on other 
projects within the monorepo.

These changes were discussed in the following RFC: 
https://discourse.llvm.org/t/rfc-require-discussion-of-impact-to-monorepo-stakeholders-when-adding-new-clang-extensions/79613

---
Full diff: https://github.com/llvm/llvm-project/pull/96532.diff


1 Files Affected:

- (modified) clang/www/get_involved.html (+6) 


``diff
diff --git a/clang/www/get_involved.html b/clang/www/get_involved.html
index 3fc688837d0bc..99fa03abb6234 100755
--- a/clang/www/get_involved.html
+++ b/clang/www/get_involved.html
@@ -126,6 +126,12 @@ Contributing Extensions to Clang
   extension is not broken by ongoing maintenance in Clang. The test suite
   should be complete enough that another compiler vendor could conceivably
   validate their implementation of the feature against it.
+
+  A support story for other impacted projects within the monorepo: If the
+  extension can impact other parts of the project (libc++, lldb, compiler-rt,
+  etc), the proposal needs to document the impact for these projects to fully
+  support the extension and what level of support is expected. The impacted
+  project communities need to agree with that plan.
 
 
 

``




https://github.com/llvm/llvm-project/pull/96532
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Update Clang extension criteria (PR #96532)

2024-06-24 Thread Aaron Ballman via cfe-commits

https://github.com/AaronBallman created 
https://github.com/llvm/llvm-project/pull/96532

This updates Clang's extension criteria to explicitly mention impacts on other 
projects within the monorepo.

These changes were discussed in the following RFC: 
https://discourse.llvm.org/t/rfc-require-discussion-of-impact-to-monorepo-stakeholders-when-adding-new-clang-extensions/79613

>From a9663aca9fd5454eef2ea36284c6c690d1e44a12 Mon Sep 17 00:00:00 2001
From: Aaron Ballman 
Date: Mon, 24 Jun 2024 14:25:39 -0400
Subject: [PATCH] Update Clang extension criteria

This updates Clang's extension criteria to explicitly mention impacts
on other projects within the monorepo.

These changes were discussed in the following RFC:
https://discourse.llvm.org/t/rfc-require-discussion-of-impact-to-monorepo-stakeholders-when-adding-new-clang-extensions/79613
---
 clang/www/get_involved.html | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/clang/www/get_involved.html b/clang/www/get_involved.html
index 3fc688837d0bc..99fa03abb6234 100755
--- a/clang/www/get_involved.html
+++ b/clang/www/get_involved.html
@@ -126,6 +126,12 @@ Contributing Extensions to Clang
   extension is not broken by ongoing maintenance in Clang. The test suite
   should be complete enough that another compiler vendor could conceivably
   validate their implementation of the feature against it.
+
+  A support story for other impacted projects within the monorepo: If the
+  extension can impact other parts of the project (libc++, lldb, compiler-rt,
+  etc), the proposal needs to document the impact for these projects to fully
+  support the extension and what level of support is expected. The impacted
+  project communities need to agree with that plan.
 
 
 

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang][CGRecordLayout] Remove dependency on isZeroSize (PR #96422)

2024-06-24 Thread Eli Friedman via cfe-commits

efriedma-quic wrote:

(Please move out of "draft" when you think this is ready.)

https://github.com/llvm/llvm-project/pull/96422
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Add flag to opt out of wasm-opt (PR #95208)

2024-06-24 Thread via cfe-commits

github-actions[bot] wrote:



@mh4ck-Thales Congratulations on having your first Pull Request (PR) merged 
into the LLVM Project!

Your changes will be combined with recent changes from other authors, then 
tested
by our [build bots](https://lab.llvm.org/buildbot/). If there is a problem with 
a build, you may receive a report in an email or a comment on this PR.

Please check whether problems have been caused by your change specifically, as
the builds can include changes from many authors. It is not uncommon for your
change to be included in a build that fails due to someone else's changes, or
infrastructure issues.

How to do this, and the rest of the post-merge process, is covered in detail 
[here](https://llvm.org/docs/MyFirstTypoFix.html#myfirsttypofix-issues-after-landing-your-pr).

If your change does cause a problem, it may be reverted, or you can revert it 
yourself.
This is a normal part of [LLVM 
development](https://llvm.org/docs/DeveloperPolicy.html#patch-reversion-policy).
 You can fix your changes and open a new PR to merge them again.

If you don't get any reports, no action is required from you. Your changes are 
working as expected, well done!


https://github.com/llvm/llvm-project/pull/95208
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Add flag to opt out of wasm-opt (PR #95208)

2024-06-24 Thread Dan Gohman via cfe-commits

https://github.com/sunfishcode closed 
https://github.com/llvm/llvm-project/pull/95208
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] 962d7ac - Add flag to opt out of wasm-opt (#95208)

2024-06-24 Thread via cfe-commits
ngList OptArgs;
-OptArgs.push_back(Output.getFilename());
-OptArgs.push_back(Args.MakeArgString(llvm::Twine("-O") + OOpt));
-OptArgs.push_back("-o");
-OptArgs.push_back(Output.getFilename());
-C.addCommand(std::make_unique(
-JA, *this, ResponseFileSupport::AtFileCurCP(), WasmOpt, OptArgs,
-Inputs, Output));
+  CmdArgs.push_back("--keep-section=target_features");
+}
+
+C.addCommand(std::make_unique(JA, *this,
+   ResponseFileSupport::AtFileCurCP(),
+   Linker, CmdArgs, Inputs, Output));
+
+if (Arg *A = Args.getLastArg(options::OPT_O_Group)) {
+  if (!WasmOptPath.empty()) {
+StringRef OOpt = "s";
+if (A->getOption().matches(options::OPT_O4) ||
+A->getOption().matches(options::OPT_Ofast))
+  OOpt = "4";
+else if (A->getOption().matches(options::OPT_O0))
+  OOpt = "0";
+else if (A->getOption().matches(options::OPT_O))
+  OOpt = A->getValue();
+
+if (OOpt != "0") {
+  const char *WasmOpt = Args.MakeArgString(WasmOptPath);
+  ArgStringList OptArgs;
+  OptArgs.push_back(Output.getFilename());
+  OptArgs.push_back(Args.MakeArgString(llvm::Twine("-O") + OOpt));
+  OptArgs.push_back("-o");
+  OptArgs.push_back(Output.getFilename());
+  C.addCommand(std::make_unique(
+  JA, *this, ResponseFileSupport::AtFileCurCP(), WasmOpt, OptArgs,
+  Inputs, Output));
+}
   }
 }
   }



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [flang] [Flang][Driver] Add -print-resource-dir command line flag to emit Flang's resource directory (PR #90886)

2024-06-24 Thread Michael Klemm via cfe-commits

mjklemm wrote:

Yeah, go ahead and revert. I can create a new PR from it just print the 
resource dir. 

https://github.com/llvm/llvm-project/pull/90886
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] inherit GD to let the codegen add kcfi type for ifunc (PR #96400)

2024-06-24 Thread Eli Friedman via cfe-commits

efriedma-quic wrote:

Please fix buildbot failure (it looks like clang/test/CodeGen/ifunc.c is 
failing).

https://github.com/llvm/llvm-project/pull/96400
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Clang] use const references for function parameters in operator== and operator!= overloads in Redeclarable.h (PR #92963)

2024-06-24 Thread Oleksandr T. via cfe-commits

https://github.com/a-tarasyuk updated 
https://github.com/llvm/llvm-project/pull/92963

>From c94e7cbe04c0f23094a7f2a3d2a7cbd103750301 Mon Sep 17 00:00:00 2001
From: Oleksandr T 
Date: Tue, 21 May 2024 22:56:06 +0300
Subject: [PATCH] [Clang] use const references for function parameters in
 operator== and operator!= overloads in Redeclarable.h

---
 clang/include/clang/AST/Redeclarable.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/clang/include/clang/AST/Redeclarable.h 
b/clang/include/clang/AST/Redeclarable.h
index 091bb886f2d49..74ccd74ed60d6 100644
--- a/clang/include/clang/AST/Redeclarable.h
+++ b/clang/include/clang/AST/Redeclarable.h
@@ -281,10 +281,10 @@ class Redeclarable {
   return tmp;
 }
 
-friend bool operator==(redecl_iterator x, redecl_iterator y) {
+friend bool operator==(const redecl_iterator , const redecl_iterator ) 
{
   return x.Current == y.Current;
 }
-friend bool operator!=(redecl_iterator x, redecl_iterator y) {
+friend bool operator!=(const redecl_iterator , const redecl_iterator ) 
{
   return x.Current != y.Current;
 }
   };

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Clang] improve RewriteModernObjC code quality by using const reference for function parameters (PR #93252)

2024-06-24 Thread Oleksandr T. via cfe-commits

https://github.com/a-tarasyuk updated 
https://github.com/llvm/llvm-project/pull/93252

>From d160eb6c869d41ac64ff27442d2f8d964beb3ebf Mon Sep 17 00:00:00 2001
From: Oleksandr T 
Date: Fri, 24 May 2024 01:39:35 +0300
Subject: [PATCH] [Clang] improve RewriteModernObjC code quality by using const
 reference for function parameters

---
 .../Frontend/Rewrite/RewriteModernObjC.cpp| 37 +--
 1 file changed, 18 insertions(+), 19 deletions(-)

diff --git a/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp 
b/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
index 6ae955a2380b7..764cdc6f07cf6 100644
--- a/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
+++ b/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
@@ -465,15 +465,15 @@ namespace {
 
 std::string SynthesizeByrefCopyDestroyHelper(VarDecl *VD, int flag);
 std::string SynthesizeBlockHelperFuncs(BlockExpr *CE, int i,
-  StringRef funcName, std::string Tag);
-std::string SynthesizeBlockFunc(BlockExpr *CE, int i,
-  StringRef funcName, std::string Tag);
-std::string SynthesizeBlockImpl(BlockExpr *CE,
-std::string Tag, std::string Desc);
-std::string SynthesizeBlockDescriptor(std::string DescTag,
-  std::string ImplTag,
-  int i, StringRef funcName,
-  unsigned hasCopy);
+   StringRef funcName,
+   const std::string );
+std::string SynthesizeBlockFunc(BlockExpr *CE, int i, StringRef funcName,
+const std::string );
+std::string SynthesizeBlockImpl(BlockExpr *CE, const std::string ,
+const std::string );
+std::string SynthesizeBlockDescriptor(const std::string ,
+  const std::string , int i,
+  StringRef funcName, unsigned 
hasCopy);
 Stmt *SynthesizeBlockCall(CallExpr *Exp, const Expr* BlockExp);
 void SynthesizeBlockLiterals(SourceLocation FunLocStart,
  StringRef FunName);
@@ -4037,7 +4037,7 @@ static bool HasLocalVariableExternalStorage(ValueDecl 
*VD) {
 
 std::string RewriteModernObjC::SynthesizeBlockFunc(BlockExpr *CE, int i,
StringRef funcName,
-   std::string Tag) {
+   const std::string ) {
   const FunctionType *AFT = CE->getFunctionType();
   QualType RT = AFT->getReturnType();
   std::string StructRef = "struct " + Tag;
@@ -4131,9 +4131,8 @@ std::string 
RewriteModernObjC::SynthesizeBlockFunc(BlockExpr *CE, int i,
   return S;
 }
 
-std::string RewriteModernObjC::SynthesizeBlockHelperFuncs(BlockExpr *CE, int i,
-   StringRef funcName,
-   std::string Tag) {
+std::string RewriteModernObjC::SynthesizeBlockHelperFuncs(
+BlockExpr *CE, int i, StringRef funcName, const std::string ) {
   std::string StructRef = "struct " + Tag;
   std::string S = "static void __";
 
@@ -4175,8 +4174,9 @@ std::string 
RewriteModernObjC::SynthesizeBlockHelperFuncs(BlockExpr *CE, int i,
   return S;
 }
 
-std::string RewriteModernObjC::SynthesizeBlockImpl(BlockExpr *CE, std::string 
Tag,
- std::string Desc) {
+std::string RewriteModernObjC::SynthesizeBlockImpl(BlockExpr *CE,
+   const std::string ,
+   const std::string ) {
   std::string S = "\nstruct " + Tag;
   std::string Constructor = "  " + Tag;
 
@@ -4290,10 +4290,9 @@ std::string 
RewriteModernObjC::SynthesizeBlockImpl(BlockExpr *CE, std::string Ta
   return S;
 }
 
-std::string RewriteModernObjC::SynthesizeBlockDescriptor(std::string DescTag,
-   std::string ImplTag, int i,
-   StringRef FunName,
-   unsigned hasCopy) {
+std::string RewriteModernObjC::SynthesizeBlockDescriptor(
+const std::string , const std::string , int i,
+StringRef FunName, unsigned hasCopy) {
   std::string S = "\nstatic struct " + DescTag;
 
   S += " {\n  size_t reserved;\n";

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[llvm-branch-commits] [sanitizer] Rename DEFINE_REAL_PTHREAD_FUNCTIONS (PR #96527)

2024-06-24 Thread Florian Mayer via llvm-branch-commits

https://github.com/fmayer approved this pull request.


https://github.com/llvm/llvm-project/pull/96527
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[clang] [llvm] [PowerPC] Diagnose musttail instead of crash inside backend (PR #93267)

2024-06-24 Thread Eli Friedman via cfe-commits


@@ -5751,8 +5751,29 @@ RValue CodeGenFunction::EmitCall(const CGFunctionInfo 
,
   if (llvm::CallInst *Call = dyn_cast(CI)) {
 if (TargetDecl && TargetDecl->hasAttr())
   Call->setTailCallKind(llvm::CallInst::TCK_NoTail);
-else if (IsMustTail)
+else if (IsMustTail) {
+  if (getTarget().getTriple().isPPC()) {
+if (getTarget().getTriple().isOSAIX())
+  CGM.getDiags().Report(Loc, diag::err_aix_musttail_unsupported);
+else if (!getTarget().hasFeature("pcrelative-memops")) {
+  if (getTarget().hasFeature("longcall"))
+CGM.getDiags().Report(Loc, diag::err_ppc_impossible_musttail) << 0;
+  else if (Call->isIndirectCall())
+CGM.getDiags().Report(Loc, diag::err_ppc_impossible_musttail) << 1;
+  else if (isa_and_nonnull(TargetDecl) &&
+   cast(TargetDecl)->isWeak())

efriedma-quic wrote:

This isn't the right way to check the definition is "weak", I think.  In 
addition to explicit weak attributes, you need some check for inline functions 
(both C and C++, which have different semantics).  Not sure what the CodeGen 
API for this is off the top of my head.

I think you also need to check for weak definitions in 
MustTailCallUndefinedGlobals.

https://github.com/llvm/llvm-project/pull/93267
_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [ParserHLSL] Attempt to parse HLSL annotations on Field Decls. (PR #96346)

2024-06-24 Thread Xiang Li via cfe-commits

https://github.com/python3kgae approved this pull request.


https://github.com/llvm/llvm-project/pull/96346
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [ObjC][CodeGen] Assume a for-in loop is in bounds and cannot overflow (PR #94885)

2024-06-24 Thread John McCall via cfe-commits

rjmccall wrote:

I don't usually do that for people, sorry.

https://github.com/llvm/llvm-project/pull/94885
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [libclang/python] Refactor enum usage (PR #95608)

2024-06-24 Thread Jannick Kremer via cfe-commits

DeinAlptraum wrote:

@Endilll done with the TokenKind refactoring, so this is ready to go from my 
side.

Regarding reviewers, can you recommend any others? Since I assume I'll open a 
couple more PRs for the Python bindings after this

https://github.com/llvm/llvm-project/pull/95608
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Clang] fix cast failures by adjusting the resolution of record declaration contexts to handle semantic and lexical distinctions (PR #96228)

2024-06-24 Thread Oleksandr T. via cfe-commits

https://github.com/a-tarasyuk edited 
https://github.com/llvm/llvm-project/pull/96228
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[llvm-branch-commits] [llvm] AMDGPU: Add a subtarget feature for fine-grained remote memory support (PR #96442)

2024-06-24 Thread Yaxun Liu via llvm-branch-commits


@@ -788,6 +788,14 @@ def FeatureFlatAtomicFaddF32Inst
   "Has flat_atomic_add_f32 instruction"
 >;
 
+def FeatureAgentScopeFineGrainedRemoteMemoryAtomics
+  : SubtargetFeature<"agent-scope-fine-grained-remote-memory-atomics",
+  "HasAgentScopeFineGrainedRemoteMemoryAtomics",
+  "true",
+  "Agent (device) scoped atomic operations not directly supported by "

yxsamliu wrote:

I feel the description is a little bit confusing, at least for me.

how about

"Agent (device) scoped atomic operations, excluding those directly supported by 
PCIe (i.e., integer atomic add, exchange, and compare-and-swap), are functional 
for allocations in host or peer PCIe device memory."

https://github.com/llvm/llvm-project/pull/96442
_______
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [sanitizer] Rename DEFINE_REAL_PTHREAD_FUNCTIONS (PR #96527)

2024-06-24 Thread Vitaly Buka via llvm-branch-commits

https://github.com/vitalybuka edited 
https://github.com/llvm/llvm-project/pull/96527
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [sanitizer] Rename DEFINE_REAL_PTHREAD_FUNCTIONS (PR #96527)

2024-06-24 Thread via llvm-branch-commits
gnals.
   ScopedBlockSignals block(nullptr);
   void *th;
-  real_pthread_create(, nullptr, func, arg);
+  internal_pthread_create(, nullptr, func, arg);
   return th;
 }
 
 void internal_join_thread(void *th) {
-  if (_pthread_join)
-real_pthread_join(th, nullptr);
+  if (_pthread_join)
+internal_pthread_join(th, nullptr);
 }
 #  else
 void *internal_start_thread(void *(*func)(void *), void *arg) { return 0; }
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_posix.h 
b/compiler-rt/lib/sanitizer_common/sanitizer_posix.h
index c5811dffea94b..14617e4771bec 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_posix.h
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_posix.h
@@ -74,21 +74,21 @@ int internal_sysctlbyname(const char *sname, void *oldp, 
uptr *oldlenp,
 // These functions call appropriate pthread_ functions directly, bypassing
 // the interceptor. They are weak and may not be present in some tools.
 SANITIZER_WEAK_ATTRIBUTE
-int real_pthread_create(void *th, void *attr, void *(*callback)(void *),
-void *param);
+int internal_pthread_create(void *th, void *attr, void *(*callback)(void *),
+void *param);
 SANITIZER_WEAK_ATTRIBUTE
-int real_pthread_join(void *th, void **ret);
-
-#define DEFINE_REAL_PTHREAD_FUNCTIONS  
\
-  namespace __sanitizer {  
\
-  int real_pthread_create(void *th, void *attr, void *(*callback)(void *), 
\
-  void *param) {   
\
-return REAL(pthread_create)(th, attr, callback, param);
\
-  }
\
-  int real_pthread_join(void *th, void **ret) {
\
-return REAL(pthread_join(th, ret));
\
-  }
\
-  }  // namespace __sanitizer
+int internal_pthread_join(void *th, void **ret);
+
+#  define DEFINE_INTERNAL_PTHREAD_FUNCTIONS   \
+namespace __sanitizer {   \
+int internal_pthread_create(void *th, void *attr, \
+void *(*callback)(void *), void *param) { \
+  return REAL(pthread_create)(th, attr, callback, param); \
+} \
+int internal_pthread_join(void *th, void **ret) { \
+  return REAL(pthread_join(th, ret)); \
+} \
+}  // namespace __sanitizer
 
 int internal_pthread_attr_getstack(void *attr, void **addr, uptr *size);
 
diff --git a/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp 
b/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
index 151693112158b..034ae3d322b56 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
+++ b/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
@@ -1088,14 +1088,14 @@ TSAN_INTERCEPTOR(int, pthread_join, void *th, void 
**ret) {
   return res;
 }
 
-// DEFINE_REAL_PTHREAD_FUNCTIONS
+// DEFINE_INTERNAL_PTHREAD_FUNCTIONS
 namespace __sanitizer {
-int real_pthread_create(void *th, void *attr, void *(*callback)(void *),
-void *param) {
+int internal_pthread_create(void *th, void *attr, void *(*callback)(void *),
+void *param) {
   ScopedIgnoreInterceptors ignore;
   return REAL(pthread_create)(th, attr, callback, param);
 }
-int real_pthread_join(void *th, void **ret) {
+int internal_pthread_join(void *th, void **ret) {
   ScopedIgnoreInterceptors ignore;
   return REAL(pthread_join(th, ret));
 }

``




https://github.com/llvm/llvm-project/pull/96527
___________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [sanitizer] Rename DEFINE_REAL_PTHREAD_FUNCTIONS (PR #96527)

2024-06-24 Thread Vitaly Buka via llvm-branch-commits

https://github.com/vitalybuka created 
https://github.com/llvm/llvm-project/pull/96527

We use REAL() calls in interceptors, but
DEFINE_REAL_PTHREAD_FUNCTIONS has nothing to do
with them and only used for internal maintenance
threads.



___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[clang] [PAC][clang][Driver] Add signed GOT flag (PR #96160)

2024-06-24 Thread Daniil Kovalev via cfe-commits

https://github.com/kovdan01 milestoned 
https://github.com/llvm/llvm-project/pull/96160
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [PAC][ELF][AArch64] Encode signed GOT flag in PAuth core info (PR #96159)

2024-06-24 Thread Daniil Kovalev via cfe-commits

https://github.com/kovdan01 milestoned 
https://github.com/llvm/llvm-project/pull/96159
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [llvm][misexpect] Update MisExpect to use provenance tracking metadata (PR #86610)

2024-06-24 Thread Paul Kirth via cfe-commits

ilovepi wrote:

Ping. Now that the metadata patches have landed, I think we can start 
discussing using that in MisExpect.

https://github.com/llvm/llvm-project/pull/86610
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [llvm] [LLDB][Minidump] Add 64b support to LLDB's minidump file builder. (PR #95312)

2024-06-24 Thread Greg Clayton via lldb-commits

https://github.com/clayborg closed 
https://github.com/llvm/llvm-project/pull/95312
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[llvm-branch-commits] [clang][misexpect] Add support to clang for profitable annotation diagnostics (PR #96525)

2024-06-24 Thread via llvm-branch-commits
ocation::CreateFromArgsImpl(
 }
   }
 
+  if(Args.hasArg(OPT_fdiagnostics_missing_annotations))
+Res.getCodeGenOpts().MissingAnnotations = true;
+
   if (LangOpts.CUDA) {
 // During CUDA device-side compilation, the aux triple is the
 // triple used for host compilation.
diff --git a/clang/test/Profile/Inputs/missing-annotation.proftext 
b/clang/test/Profile/Inputs/missing-annotation.proftext
new file mode 100644
index 0..0bf7158702e28
--- /dev/null
+++ b/clang/test/Profile/Inputs/missing-annotation.proftext
@@ -0,0 +1,18 @@
+bar
+# Func Hash:
+11262309464
+# Num Counters:
+2
+# Counter Values:
+20
+1
+
+fizz
+# Func Hash:
+11262309464
+# Num Counters:
+2
+# Counter Values:
+20
+1
+
diff --git a/clang/test/Profile/missing-annotation.c 
b/clang/test/Profile/missing-annotation.c
new file mode 100644
index 0..5cf2a87a94c8d
--- /dev/null
+++ b/clang/test/Profile/missing-annotation.c
@@ -0,0 +1,35 @@
+/// Test that missing annotation diagnostics are suggested for hot branches
+
+// note test diagnostics are issued when profiling data mis-matches annotations
+// RUN: llvm-profdata merge %S/Inputs/missing-annotation.proftext -o 
%t.profdata
+// RUN: %clang %s -O2 -c -S -emit-llvm -o - -fprofile-instr-use=%t.profdata 
-Xclang -verify=exact -fdiagnostics-missing-annotations 
-debug-info-kind=line-tables-only -Rpass=missing-annotations
+
+// foo-no-diagnostics
+
+int foo(int);
+int baz(int);
+int buzz();
+
+const int inner_loop = 100;
+const int outer_loop = 2000;
+int bar() { 
+  int rando = buzz();
+  int x = 0;
+  if (rando % (outer_loop * inner_loop) == 0) { // exact-remark {{Extremely 
hot condition. Consider adding llvm.expect intrinsic}}
+x = baz(rando);
+  } else {
+x = foo(50);
+  }
+  return x;
+}
+
+int fizz() {
+  int rando = buzz();
+  int x = 0;
+  if (rando % (outer_loop * inner_loop) == 0) { // exact-remark {{Extremely 
hot condition. Consider adding llvm.expect intrinsic}}
+x = baz(rando);
+  } else {
+x = foo(50);
+  }
+  return x;
+}
diff --git a/llvm/lib/Transforms/Utils/MisExpect.cpp 
b/llvm/lib/Transforms/Utils/MisExpect.cpp
index 1d88f867971e8..1becd32cde968 100644
--- a/llvm/lib/Transforms/Utils/MisExpect.cpp
+++ b/llvm/lib/Transforms/Utils/MisExpect.cpp
@@ -108,6 +108,8 @@ uint64_t getScaledThreshold(const ProfDataSummary ) {
 bool isAnnotationDiagEnabled(LLVMContext ) {
   LLVM_DEBUG(dbgs() << "PGOMissingAnnotations = " << PGOMissingAnnotations
 << "\n");
+  LLVM_DEBUG(dbgs() << "getAnnotationDiagsRequested = " << 
Ctx.getAnnotationDiagsRequested()
+<< "\n");
   return PGOMissingAnnotations || Ctx.getAnnotationDiagsRequested();
 }
 
@@ -304,10 +306,8 @@ void checkMissingAnnotations(Instruction ,
   if (IsFrontendInstr) {
 verifyMissingAnnotations(I, ExistingWeights);
   } else {
-SmallVector ExpectedWeights;
-if (extractBranchWeights(I, ExpectedWeights))
-  return;
-verifyMissingAnnotations(I, ExistingWeights);
+if (!hasBranchWeightOrigin(I))
+  verifyMissingAnnotations(I, ExistingWeights);
   }
 }
 

``




https://github.com/llvm/llvm-project/pull/96525
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[Lldb-commits] [lldb] a27164c - [LLDB][Minidump] Add 64b support to LLDB's minidump file builder. (#95312)

2024-06-24 Thread via lldb-commits
ontents, remember where it is so we don't have
   // to duplicate it in the exception data.
-  std::map m_tid_to_reg_ctx;
+  std::unordered_map
+  m_tid_to_reg_ctx;
+  lldb::FileUP m_core_file;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_OBJECTFILE_MINIDUMP_MINIDUMPFILEBUILDER_H

diff  --git a/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp 
b/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
index 1af5d99f0b160..3668c37c5191d 100644
--- a/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
+++ b/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
@@ -15,8 +15,10 @@
 #include "lldb/Core/Section.h"
 #include "lldb/Target/Process.h"
 #include "lldb/Utility/LLDBLog.h"
+#include "lldb/Utility/Log.h"
 
 #include "llvm/Support/FileSystem.h"
+#include 
 
 using namespace lldb;
 using namespace lldb_private;
@@ -65,56 +67,70 @@ bool ObjectFileMinidump::SaveCore(const lldb::ProcessSP 
_sp,
   if (!process_sp)
 return false;
 
-  MinidumpFileBuilder builder;
-
-  Target  = process_sp->GetTarget();
+  llvm::Expected maybe_core_file = FileSystem::Instance().Open(
+  outfile, File::eOpenOptionWriteOnly | File::eOpenOptionCanCreate);
+  if (!maybe_core_file) {
+error = maybe_core_file.takeError();
+return false;
+  }
+  MinidumpFileBuilder builder(std::move(maybe_core_file.get()), process_sp);
 
   Log *log = GetLog(LLDBLog::Object);
-  error = builder.AddSystemInfo(target.GetArchitecture().GetTriple());
+  error = builder.AddHeaderAndCalculateDirectories();
   if (error.Fail()) {
-LLDB_LOG(log, "AddSystemInfo failed: %s", error.AsCString());
+LLDB_LOGF(log, "AddHeaderAndCalculateDirectories failed: %s",
+  error.AsCString());
+return false;
+  };
+  error = builder.AddSystemInfo();
+  if (error.Fail()) {
+LLDB_LOGF(log, "AddSystemInfo failed: %s", error.AsCString());
 return false;
   }
 
-  error = builder.AddModuleList(target);
+  error = builder.AddModuleList();
   if (error.Fail()) {
-LLDB_LOG(log, "AddModuleList failed: %s", error.AsCString());
+LLDB_LOGF(log, "AddModuleList failed: %s", error.AsCString());
 return false;
   }
-
-  builder.AddMiscInfo(process_sp);
-
-  error = builder.AddThreadList(process_sp);
+  error = builder.AddMiscInfo();
   if (error.Fail()) {
-LLDB_LOG(log, "AddThreadList failed: %s", error.AsCString());
+LLDB_LOGF(log, "AddMiscInfo failed: %s", error.AsCString());
 return false;
   }
 
-  // Add any exceptions but only if there are any in any threads.
-  builder.AddExceptions(process_sp);
+  error = builder.AddThreadList();
+  if (error.Fail()) {
+LLDB_LOGF(log, "AddThreadList failed: %s", error.AsCString());
+return false;
+  }
 
-  error = builder.AddMemoryList(process_sp, core_style);
+  error = builder.AddLinuxFileStreams();
   if (error.Fail()) {
-LLDB_LOG(log, "AddMemoryList failed: %s", error.AsCString());
+LLDB_LOGF(log, "AddLinuxFileStreams failed: %s", error.AsCString());
 return false;
   }
 
-  if (target.GetArchitecture().GetTriple().getOS() ==
-  llvm::Triple::OSType::Linux) {
-builder.AddLinuxFileStreams(process_sp);
+  // Add any exceptions but only if there are any in any threads.
+  error = builder.AddExceptions();
+  if (error.Fail()) {
+LLDB_LOGF(log, "AddExceptions failed: %s", error.AsCString());
+return false;
   }
 
-  llvm::Expected maybe_core_file = FileSystem::Instance().Open(
-  outfile, File::eOpenOptionWriteOnly | File::eOpenOptionCanCreate);
-  if (!maybe_core_file) {
-error = maybe_core_file.takeError();
+  // Note: add memory HAS to be the last thing we do. It can overflow into 64b
+  // land and many RVA's only support 32b
+  error = builder.AddMemoryList(core_style);
+  if (error.Fail()) {
+LLDB_LOGF(log, "AddMemoryList failed: %s", error.AsCString());
 return false;
   }
-  lldb::FileUP core_file = std::move(maybe_core_file.get());
 
-  error = builder.Dump(core_file);
-  if (error.Fail())
+  error = builder.DumpFile();
+  if (error.Fail()) {
+LLDB_LOGF(log, "DumpFile failed: %s", error.AsCString());
 return false;
+  }
 
   return true;
 }

diff  --git a/llvm/include/llvm/BinaryFormat/Minidump.h 
b/llvm/include/llvm/BinaryFormat/Minidump.h
index bc303929498d0..9669303252615 100644
--- a/llvm/include/llvm/BinaryFormat/Minidump.h
+++ b/llvm/include/llvm/BinaryFormat/Minidump.h
@@ -70,6 +70,11 @@ struct MemoryDescriptor {
 };
 static_assert(sizeof(MemoryDescriptor) == 16);
 
+struct MemoryDescriptor_64 {
+  support::ulittle64_t StartOfMemoryRange;
+  support::ulittle64_t DataSize;
+};
+
 struct MemoryInfoListHeader {
   support::ulittle32_t SizeOfHeader;
   support::ulittle32_t SizeOfEntry;



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[llvm-branch-commits] [misexpect] Support diagnostics from frontend profile data (PR #96524)

2024-06-24 Thread via llvm-branch-commits

llvmbot wrote:



@llvm/pr-subscribers-pgo

@llvm/pr-subscribers-llvm-transforms

Author: Paul Kirth (ilovepi)


Changes



---
Full diff: https://github.com/llvm/llvm-project/pull/96524.diff


3 Files Affected:

- (modified) llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp (+18) 
- (modified) llvm/lib/Transforms/Utils/MisExpect.cpp (+1-2) 
- (modified) llvm/test/Transforms/PGOProfile/missing-annotation.ll (+1-1) 


``diff
diff --git a/llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp 
b/llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp
index 17c5a4ee1fd0b..4075749d0d574 100644
--- a/llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp
+++ b/llvm/lib/Transforms/Scalar/LowerExpectIntrinsic.cpp
@@ -369,9 +369,21 @@ static bool lowerExpectIntrinsic(Function ) {
 if (BranchInst *BI = dyn_cast(BB.getTerminator())) {
   if (handleBranchExpect(*BI))
 ExpectIntrinsicsHandled++;
+  else {
+SmallVector Weights;
+if (extractBranchWeights(*BI, Weights))
+  misexpect::checkMissingAnnotations(*BI, Weights,
+ /*IsFrontendInstr=*/false);
+  }
 } else if (SwitchInst *SI = dyn_cast(BB.getTerminator())) {
   if (handleSwitchExpect(*SI))
 ExpectIntrinsicsHandled++;
+  else {
+SmallVector Weights;
+if (extractBranchWeights(*SI, Weights))
+  misexpect::checkMissingAnnotations(*SI, Weights,
+ /*isFrontend=*/false);
+  }
 }
 
 // Remove llvm.expect intrinsics. Iterate backwards in order
@@ -383,6 +395,12 @@ static bool lowerExpectIntrinsic(Function ) {
 if (SelectInst *SI = dyn_cast()) {
   if (handleBrSelExpect(*SI))
 ExpectIntrinsicsHandled++;
+  else {
+SmallVector Weights;
+if (extractBranchWeights(*SI, Weights))
+  misexpect::checkMissingAnnotations(*SI, Weights,
+ /*isFrontend=*/false);
+  }
 }
 continue;
   }
diff --git a/llvm/lib/Transforms/Utils/MisExpect.cpp 
b/llvm/lib/Transforms/Utils/MisExpect.cpp
index 933d9a146533d..1d88f867971e8 100644
--- a/llvm/lib/Transforms/Utils/MisExpect.cpp
+++ b/llvm/lib/Transforms/Utils/MisExpect.cpp
@@ -302,8 +302,7 @@ void checkMissingAnnotations(Instruction ,
 return;
 
   if (IsFrontendInstr) {
-// TODO: Frontend checking will have to be thought through, since we need
-// to do the check on branches that don't have expect intrinsics
+verifyMissingAnnotations(I, ExistingWeights);
   } else {
 SmallVector ExpectedWeights;
 if (extractBranchWeights(I, ExpectedWeights))
diff --git a/llvm/test/Transforms/PGOProfile/missing-annotation.ll 
b/llvm/test/Transforms/PGOProfile/missing-annotation.ll
index 6b52302449900..03b0b3bb5cc54 100644
--- a/llvm/test/Transforms/PGOProfile/missing-annotation.ll
+++ b/llvm/test/Transforms/PGOProfile/missing-annotation.ll
@@ -3,7 +3,7 @@
 
 ; RUN: llvm-profdata merge %S/Inputs/misexpect-branch-correct.proftext -o 
%t.profdata
 
-; RUN: opt < %s -passes="function(lower-expect),pgo-instr-use" 
-pgo-test-profile-file=%t.profdata -pgo-missing-annotations 
-pass-remarks=missing-annotation -S 2>&1 | FileCheck %s 
--check-prefix=MISSING_ANNOTATION
+; RUN: opt < %s -passes="function(lower-expect),pgo-instr-use" 
-pgo-test-profile-file=%t.profdata -pgo-missing-annotations 
-pass-remarks=missing-annotations -S 2>&1 | FileCheck %s 
--check-prefix=MISSING_ANNOTATION
 
 ; MISSING_ANNOTATION: remark: misexpect-branch.c:22:0:  Extremely hot 
condition. Consider adding llvm.expect intrinsic
 

``




https://github.com/llvm/llvm-project/pull/96524
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [clang][misexpect] Add support to clang for profitable annotation diagnostics (PR #96525)

2024-06-24 Thread Paul Kirth via llvm-branch-commits

https://github.com/ilovepi created 
https://github.com/llvm/llvm-project/pull/96525

Add basic plumbing to clang so that diagnostics can be surfaced to
users.



___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm][misexpect] Enable diagnostics for profitable llvm.expect annotations (PR #96523)

2024-06-24 Thread via llvm-branch-commits
ule.flags = !{!3, !4}
+!llvm.ident = !{!5}
+
+!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang 
version 10.0.0 (trunk c20270bfffc9d6965219de339d66c61e9fe7d82d)", isOptimized: 
true, runtimeVersion: 0, emissionKind: LineTablesOnly, enums: !2, 
nameTableKind: None)
+!1 = !DIFile(filename: "", directory: ".")
+!2 = !{}
+!3 = !{i32 2, !"Debug Info Version", i32 3}
+!4 = !{i32 1, !"wchar_size", i32 4}
+!5 = !{!"clang version 10.0.0 (trunk 
c20270bfffc9d6965219de339d66c61e9fe7d82d)"}
+!6 = distinct !DISubprogram(name: "bar", scope: !7, file: !7, line: 19, type: 
!8, scopeLine: 19, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0, 
retainedNodes: !2)
+!7 = !DIFile(filename: "misexpect-branch.c", directory: ".")
+!8 = !DISubroutineType(types: !2)
+!9 = !DILocation(line: 20, scope: !6)
+!10 = !{!11, !11, i64 0}
+!11 = !{!"int", !12, i64 0}
+!12 = !{!"omnipotent char", !13, i64 0}
+!13 = !{!"Simple C/C++ TBAA"}
+!14 = !DILocation(line: 21, scope: !6)
+!15 = !DILocation(line: 22, scope: !6)
+!16 = !DILocation(line: 23, scope: !6)
+!17 = !DILocation(line: 24, scope: !6)
+!18 = !DILocation(line: 25, scope: !6)
+!19 = !DILocation(line: 27, scope: !6)
+!20 = !DILocation(line: 28, scope: !6)

``




https://github.com/llvm/llvm-project/pull/96523
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [misexpect] Support diagnostics from frontend profile data (PR #96524)

2024-06-24 Thread Paul Kirth via llvm-branch-commits

https://github.com/ilovepi created 
https://github.com/llvm/llvm-project/pull/96524

None


___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm][misexpect] Enable diagnostics for profitable llvm.expect annotations (PR #96523)

2024-06-24 Thread Paul Kirth via llvm-branch-commits

https://github.com/ilovepi created 
https://github.com/llvm/llvm-project/pull/96523

Issue #56502 describes an enhancement related to the use of llvm.expect.
The request is for a diagnostic mode that can identify branches that
would benefit from the use of llvm.expect based on the branch_weights
assigned from a PGO or sample profile.

To support identify branches(or switches) that would benefit from the
use of an llvm.expect intrinsic, we follow a similar checking pattern to
that used in MisExpect, but only in cases where MisExpect diagnostics
would not be used (i.e., when an llvm.expect intrinsic has already been
used).



___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[clang] [TBAA] Emit int TBAA metadata on FP math libcalls (PR #96025)

2024-06-24 Thread Eli Friedman via cfe-commits


@@ -707,7 +707,36 @@ static RValue emitLibraryCall(CodeGenFunction , const 
FunctionDecl *FD,
   const CallExpr *E, llvm::Constant *calleeValue) {
   CodeGenFunction::CGFPOptionsRAII FPOptsRAII(CGF, E);
   CGCallee callee = CGCallee::forDirect(calleeValue, GlobalDecl(FD));
-  return CGF.EmitCall(E->getCallee()->getType(), callee, E, ReturnValueSlot());
+  RValue Call =
+  CGF.EmitCall(E->getCallee()->getType(), callee, E, ReturnValueSlot());
+
+  // Check the supported intrinsic.
+  if (unsigned BuiltinID = FD->getBuiltinID()) {
+auto IntrinsicID = [&]() -> unsigned {
+  switch (BuiltinID) {
+  case Builtin::BIexpf:
+  case Builtin::BI__builtin_expf:
+  case Builtin::BI__builtin_expf128:
+return true;
+  }
+  // TODO: support more FP math libcalls
+  return false;
+}();
+
+const llvm::Triple  = CGF.getTarget().getTriple();
+// Restrict to Linux because not all targets set errno, such as MacOS.

efriedma-quic wrote:

LangOpts.MathErrno

https://github.com/llvm/llvm-project/pull/96025
_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [TBAA] Emit int TBAA metadata on FP math libcalls (PR #96025)

2024-06-24 Thread Eli Friedman via cfe-commits


@@ -707,7 +707,34 @@ static RValue emitLibraryCall(CodeGenFunction , const 
FunctionDecl *FD,
   const CallExpr *E, llvm::Constant *calleeValue) {
   CodeGenFunction::CGFPOptionsRAII FPOptsRAII(CGF, E);
   CGCallee callee = CGCallee::forDirect(calleeValue, GlobalDecl(FD));
-  return CGF.EmitCall(E->getCallee()->getType(), callee, E, ReturnValueSlot());
+  RValue Call =
+  CGF.EmitCall(E->getCallee()->getType(), callee, E, ReturnValueSlot());
+
+  // Check the supported intrinsic.
+  if (unsigned BuiltinID = FD->getBuiltinID()) {
+auto IntrinsicID = [&]() -> unsigned {
+  switch (BuiltinID) {
+  case Builtin::BIexpf:
+  case Builtin::BI__builtin_expf:
+  case Builtin::BI__builtin_expf128:
+return true;
+  }
+  // TODO: support more FP math libcalls
+  return false;
+}();
+
+if (IntrinsicID) {
+  llvm::MDBuilder MDHelper(CGF.getLLVMContext());
+  MDNode *RootMD = CGF.CGM.getTBAARoot();
+  // Emit "int" TBAA metadata on FP math libcalls.
+  MDNode *AliasType = MDHelper.createTBAANode("int", RootMD);

efriedma-quic wrote:

Looked it up; should be `CGM.getTBAATypeInfo(Context.IntTy)`?

https://github.com/llvm/llvm-project/pull/96025
___________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[llvm-branch-commits] [llvm] AMDGPU: Add a subtarget feature for fine-grained remote memory support (PR #96442)

2024-06-24 Thread Matt Arsenault via llvm-branch-commits

arsenm wrote:

> need some tests

This does nothing as it is. The real use patches have thousands of tests 

https://github.com/llvm/llvm-project/pull/96442
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm] AMDGPU: Add subtarget feature for global atomic fadd denormal support (PR #96443)

2024-06-24 Thread Stanislav Mekhanoshin via llvm-branch-commits

rampitec wrote:

It is worse than that. It behaves differently depending on where atomic is 
executed. There is no single answer if this instruction supports denorms or not.

https://github.com/llvm/llvm-project/pull/96443
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [llvm] AMDGPU: Add subtarget feature for memory atomic fadd f64 (PR #96444)

2024-06-24 Thread Stanislav Mekhanoshin via llvm-branch-commits

rampitec wrote:

Use it in a predicate when defining pseudos?

https://github.com/llvm/llvm-project/pull/96444
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[clang] [llvm] [mlir] [polly] [IR][NFC] Update IRBuilder to use InsertPosition (PR #96497)

2024-06-24 Thread LLVM Continuous Integration via cfe-commits
357.285 [3503/57/2047] Building CXX object 
examples/Kaleidoscope/Chapter5/CMakeFiles/Kaleidoscope-Ch5.dir/toy.cpp.o
357.903 [3503/56/2048] Building CXX object 
tools/clang/tools/clang-linker-wrapper/CMakeFiles/clang-linker-wrapper.dir/ClangLinkerWrapper.cpp.o
358.194 [3503/55/2049] Building CXX object 
tools/clang/tools/clang-repl/CMakeFiles/clang-repl.dir/ClangRepl.cpp.o
358.250 [3503/54/2050] Building CXX object 
tools/flang/lib/Optimizer/Builder/CMakeFiles/obj.FIRBuilder.dir/Runtime/Support.cpp.o
358.444 [3503/53/2051] Building CXX object 
tools/clang/lib/Interpreter/CMakeFiles/obj.clangInterpreter.dir/Interpreter.cpp.o
358.538 [3503/52/2052] Building CXX object 
tools/clang/lib/CodeGen/CMakeFiles/obj.clangCodeGen.dir/ObjectFilePCHContainerOperations.cpp.o
358.638 [3503/51/2053] Building CXX object 
tools/flang/lib/Optimizer/Dialect/CMakeFiles/obj.FIRDialect.dir/FirAliasTagOpInterface.cpp.o
359.447 [3503/50/2054] Building CXX object 
tools/flang/lib/Optimizer/CodeGen/CMakeFiles/obj.FIRCodeGen.dir/BoxedProcedure.cpp.o
359.669 [3503/49/2055] Building CXX object 
tools/flang/lib/Optimizer/Dialect/Support/CMakeFiles/obj.FIRDialectSupport.dir/FIRContext.cpp.o
359.780 [3503/48/2056] Building CXX object 
tools/flang/lib/Optimizer/Dialect/Support/CMakeFiles/obj.FIRDialectSupport.dir/KindMapping.cpp.o
359.997 [3503/47/2057] Building CXX object 
tools/flang/lib/Optimizer/Support/CMakeFiles/obj.FIRSupport.dir/DataLayout.cpp.o
360.244 [3503/46/2058] Building CXX object 
tools/flang/lib/Optimizer/CodeGen/CMakeFiles/obj.FIRCodeGen.dir/PreCGRewrite.cpp.o
360.577 [3503/45/2059] Building CXX object 
tools/flang/lib/Optimizer/CodeGen/CMakeFiles/obj.FIRCodeGen.dir/TBAABuilder.cpp.o
361.963 [3503/44/2060] Building CXX object 
tools/flang/lib/Optimizer/CodeGen/CMakeFiles/obj.FIRCodeGen.dir/FIROpPatterns.cpp.o
361.973 [3503/43/2061] Building CXX object 
tools/flang/lib/Optimizer/CodeGen/CMakeFiles/obj.FIRCodeGen.dir/CodeGenOpenMP.cpp.o
363.030 [3503/42/2062] Building CXX object 
tools/flang/lib/Optimizer/CodeGen/CMakeFiles/obj.FIRCodeGen.dir/TypeConverter.cpp.o
364.725 [3503/41/2063] Building CXX object 
tools/flang/lib/Optimizer/Transforms/CMakeFiles/obj.FIRTransforms.dir/OMPFunctionFiltering.cpp.o
364.966 [3503/40/2064] Building CXX object 
tools/flang/lib/Optimizer/CodeGen/CMakeFiles/obj.FIRCodeGen.dir/TargetRewrite.cpp.o

```

https://github.com/llvm/llvm-project/pull/96497
___________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] e6ec366 - [clang][Interp] Fix classifying __builtin_addressof() argument

2024-06-24 Thread Timm Bäder via cfe-commits

Author: Timm Bäder
Date: 2024-06-24T19:27:28+02:00
New Revision: e6ec3664cb72fd95669cb516b21572da4236fd91

URL: 
https://github.com/llvm/llvm-project/commit/e6ec3664cb72fd95669cb516b21572da4236fd91
DIFF: 
https://github.com/llvm/llvm-project/commit/e6ec3664cb72fd95669cb516b21572da4236fd91.diff

LOG: [clang][Interp] Fix classifying __builtin_addressof() argument

It's an lvalue, so we need to use the classify() taking an expression.

Added: 


Modified: 
clang/lib/AST/Interp/InterpBuiltin.cpp
clang/test/AST/Interp/functions.cpp

Removed: 




diff  --git a/clang/lib/AST/Interp/InterpBuiltin.cpp 
b/clang/lib/AST/Interp/InterpBuiltin.cpp
index aeb6ec42eb39e..98928b3c22d7c 100644
--- a/clang/lib/AST/Interp/InterpBuiltin.cpp
+++ b/clang/lib/AST/Interp/InterpBuiltin.cpp
@@ -609,8 +609,8 @@ static bool interp__builtin_addressof(InterpState , 
CodePtr OpPC,
   const InterpFrame *Frame,
   const Function *Func,
   const CallExpr *Call) {
-  PrimType PtrT =
-  S.getContext().classify(Call->getArg(0)->getType()).value_or(PT_Ptr);
+  assert(Call->getArg(0)->isLValue());
+  PrimType PtrT = S.getContext().classify(Call->getArg(0)).value_or(PT_Ptr);
 
   if (PtrT == PT_FnPtr) {
 const FunctionPointer  = S.Stk.peek();

diff  --git a/clang/test/AST/Interp/functions.cpp 
b/clang/test/AST/Interp/functions.cpp
index 10c62a43ef33b..f43be1d3c0403 100644
--- a/clang/test/AST/Interp/functions.cpp
+++ b/clang/test/AST/Interp/functions.cpp
@@ -473,6 +473,10 @@ namespace AddressOf {
 
   constexpr _Complex float F = {3, 4};
   static_assert(__builtin_addressof(F) == , "");
+
+  void testAddressof(int x) {
+static_assert( == __builtin_addressof(x), "");
+  }
 }
 
 namespace std {



_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang-tools-extra] [compiler-rt] [lldb] [llvm] [Memprof] Adds the option to collect AccessCountHistograms for memprof. (PR #94264)

2024-06-24 Thread Matthew Weingarten via cfe-commits

https://github.com/mattweingarten edited 
https://github.com/llvm/llvm-project/pull/94264
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [clang-tools-extra] [compiler-rt] [lldb] [llvm] [Memprof] Adds the option to collect AccessCountHistograms for memprof. (PR #94264)

2024-06-24 Thread Matthew Weingarten via lldb-commits

https://github.com/mattweingarten edited 
https://github.com/llvm/llvm-project/pull/94264
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[clang-tools-extra] [compiler-rt] [lldb] [llvm] [Memprof] Adds the option to collect AccessCountHistograms for memprof. (PR #94264)

2024-06-24 Thread Matthew Weingarten via cfe-commits

https://github.com/mattweingarten updated 
https://github.com/llvm/llvm-project/pull/94264

error: too big or took too long to generate
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [clang-tools-extra] [compiler-rt] [lldb] [llvm] [Memprof] Adds the option to collect AccessCountHistograms for memprof. (PR #94264)

2024-06-24 Thread Matthew Weingarten via lldb-commits

https://github.com/mattweingarten updated 
https://github.com/llvm/llvm-project/pull/94264

error: too big or took too long to generate
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[clang] Add support for builtin_verbose_trap (PR #79230)

2024-06-24 Thread David Blaikie via cfe-commits

https://github.com/dwblaikie approved this pull request.


https://github.com/llvm/llvm-project/pull/79230
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Add support for builtin_verbose_trap (PR #79230)

2024-06-24 Thread David Blaikie via cfe-commits


@@ -28,7 +29,7 @@ namespace llvm {
 }
 
 // Prefix of the name of the artificial inline frame.
-#define CLANG_TRAP_PREFIX "__clang_trap_msg"
+inline constexpr llvm::StringRef CLANG_TRAP_PREFIX = "__clang_trap_msg";

dwblaikie wrote:

The name should be changed to use the usual variable/constant naming convention 
(ClangTrapPrefix, I think, in this case).

https://github.com/llvm/llvm-project/pull/79230
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] Add support for builtin_verbose_trap (PR #79230)

2024-06-24 Thread David Blaikie via cfe-commits

https://github.com/dwblaikie edited 
https://github.com/llvm/llvm-project/pull/79230
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [llvm] Add support for using foreign type units in .debug_names. (PR #87740)

2024-06-24 Thread Greg Clayton via lldb-commits

clayborg wrote:

An extra character snuck in and messed with the buildbots, fixed with:
```
commit fc066ca1c32b4aef549f3e371dc70589804aba0f (HEAD -> main, origin/main, 
origin/HEAD)
Author: Greg Clayton 
Date:   Mon Jun 24 10:15:55 2024 -0700

Fix buildbots for https://github.com/llvm/llvm-project/pull/87740
```

https://github.com/llvm/llvm-project/pull/87740
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] fc066ca - Fix buildbots for https://github.com/llvm/llvm-project/pull/87740

2024-06-24 Thread Greg Clayton via lldb-commits

Author: Greg Clayton
Date: 2024-06-24T10:16:39-07:00
New Revision: fc066ca1c32b4aef549f3e371dc70589804aba0f

URL: 
https://github.com/llvm/llvm-project/commit/fc066ca1c32b4aef549f3e371dc70589804aba0f
DIFF: 
https://github.com/llvm/llvm-project/commit/fc066ca1c32b4aef549f3e371dc70589804aba0f.diff

LOG: Fix buildbots for https://github.com/llvm/llvm-project/pull/87740

Added: 


Modified: 
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp

Removed: 




diff  --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp 
b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
index bd81618ac914d..70aa4b9e1f203 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
@@ -1746,7 +1746,7 @@ SymbolFileDWARF 
*SymbolFileDWARF::GetDIERefSymbolFile(const DIERef _ref) {
 
   if (file_index) {
   // We have a SymbolFileDWARFDebugMap, so let it find the right file
-\if (SymbolFileDWARFDebugMap *debug_map = GetDebugMapSymfile())
+if (SymbolFileDWARFDebugMap *debug_map = GetDebugMapSymfile())
   return debug_map->GetSymbolFileByOSOIndex(*file_index);
 
 // Handle the .dwp file case correctly



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


<    4   5   6   7   8   9   10   11   12   13   >