[PATCH] D128757: [Driver][test] Add -fuse-ld= option tests for NetBSD

2022-08-09 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

Agreed, that makes sense. Sorry for the noise.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128757/new/

https://reviews.llvm.org/D128757

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


[PATCH] D128757: [Driver][test] Add -fuse-ld= option tests for NetBSD

2022-07-03 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

In D128757#3616795 , @MaskRay wrote:

> I am unsure it is useful to add a test for all OSxfuse_ld_value combinations, 
> especially for an ELF OS like NetBSD which shares many characteristics with 
> other ELF OSes. It will be overwhelming.
> The option may be better added in a netbsd specific file.

I noticed there is a `fuse-ld-windows.c` file with some tests, so would putting 
NetBSD ones in a new `fuse-ld-netbsd.c` file make sense?

Either way, I don't have any strong opinion on this. I can also drop the 
revision if those tests do not seem useful.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128757/new/

https://reviews.llvm.org/D128757

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


[PATCH] D128757: [Driver][test] Add -fuse-ld= option tests for NetBSD

2022-06-28 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: MaskRay.
Herald added a subscriber: StephenFan.
Herald added a project: All.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D128757

Files:
  clang/test/Driver/Inputs/basic_netbsd_tree/usr/bin/ld.bfd
  clang/test/Driver/Inputs/basic_netbsd_tree/usr/bin/ld.gold
  clang/test/Driver/fuse-ld.c


Index: clang/test/Driver/fuse-ld.c
===
--- clang/test/Driver/fuse-ld.c
+++ clang/test/Driver/fuse-ld.c
@@ -40,6 +40,25 @@
 // RUN:   | FileCheck %s -check-prefix=CHECK-FREEBSD-PLIB
 // CHECK-FREEBSD-PLIB: error: invalid linker name
 
+// RUN: %clang %s -### \
+// RUN: -target x86_64-unknown-netbsd 2>&1 \
+// RUN:   | FileCheck %s --check-prefix=CHECK-NETBSD-LD
+// CHECK-NETBSD-LD: ld
+
+// RUN: %clang %s -### -fuse-ld=bfd \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN: -target x86_64-unknown-netbsd \
+// RUN: -B%S/Inputs/basic_netbsd_tree/usr/bin 2>&1 \
+// RUN:   | FileCheck %s -check-prefix=CHECK-NETBSD-BFD
+// CHECK-NETBSD-BFD: Inputs/basic_netbsd_tree/usr/bin{{/|\\+}}ld.bfd
+
+// RUN: %clang %s -### -fuse-ld=gold \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN: -target x86_64-unknown-netbsd \
+// RUN: -B%S/Inputs/basic_netbsd_tree/usr/bin 2>&1 \
+// RUN:   | FileCheck %s -check-prefix=CHECK-NETBSD-GOLD
+// CHECK-NETBSD-GOLD: Inputs/basic_netbsd_tree/usr/bin{{/|\\+}}ld.gold
+
 // RUN: %clang %s -### -fuse-ld=ld \
 // RUN: -target arm-linux-androideabi \
 // RUN: -B%S/Inputs/basic_android_tree/bin/arm-linux-androideabi- 2>&1 \


Index: clang/test/Driver/fuse-ld.c
===
--- clang/test/Driver/fuse-ld.c
+++ clang/test/Driver/fuse-ld.c
@@ -40,6 +40,25 @@
 // RUN:   | FileCheck %s -check-prefix=CHECK-FREEBSD-PLIB
 // CHECK-FREEBSD-PLIB: error: invalid linker name
 
+// RUN: %clang %s -### \
+// RUN: -target x86_64-unknown-netbsd 2>&1 \
+// RUN:   | FileCheck %s --check-prefix=CHECK-NETBSD-LD
+// CHECK-NETBSD-LD: ld
+
+// RUN: %clang %s -### -fuse-ld=bfd \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN: -target x86_64-unknown-netbsd \
+// RUN: -B%S/Inputs/basic_netbsd_tree/usr/bin 2>&1 \
+// RUN:   | FileCheck %s -check-prefix=CHECK-NETBSD-BFD
+// CHECK-NETBSD-BFD: Inputs/basic_netbsd_tree/usr/bin{{/|\\+}}ld.bfd
+
+// RUN: %clang %s -### -fuse-ld=gold \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN: -target x86_64-unknown-netbsd \
+// RUN: -B%S/Inputs/basic_netbsd_tree/usr/bin 2>&1 \
+// RUN:   | FileCheck %s -check-prefix=CHECK-NETBSD-GOLD
+// CHECK-NETBSD-GOLD: Inputs/basic_netbsd_tree/usr/bin{{/|\\+}}ld.gold
+
 // RUN: %clang %s -### -fuse-ld=ld \
 // RUN: -target arm-linux-androideabi \
 // RUN: -B%S/Inputs/basic_android_tree/bin/arm-linux-androideabi- 2>&1 \
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D128620: [Driver][test] Add libclang_rt.profile{{.*}}.a tests for NetBSD

2022-06-27 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

In D128620#3611156 , @MaskRay wrote:

> It's best to switch to LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on layout at some 
> point.

Noted, thanks. I will investigate switching both NetBSD and OpenBSD in the 
future.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128620/new/

https://reviews.llvm.org/D128620

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


[PATCH] D128620: [Driver][test] Add libclang_rt.profile{{.*}}.a tests for NetBSD

2022-06-27 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rGaa89bb3435e0: [Driver][test] Add libclang_rt.profile{{.*}}.a 
tests for NetBSD (authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128620/new/

https://reviews.llvm.org/D128620

Files:
  clang/test/Driver/coverage-ld.c
  clang/test/Driver/instrprof-ld.c


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -36,6 +36,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
+
+// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
@@ -75,6 +84,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64-SHARED %s
+
+// CHECK-NETBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: -shared \
 // RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
Index: clang/test/Driver/coverage-ld.c
===
--- clang/test/Driver/coverage-ld.c
+++ clang/test/Driver/coverage-ld.c
@@ -35,6 +35,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-netbsd --coverage -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
+
+// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-unknown-openbsd --coverage -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -36,6 +36,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
+
+// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
@@ -75,6 +84,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64-SHARED %s
+
+// CHECK-NETBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64

[PATCH] D128620: [Driver][test] Add libclang_rt.profile{{.*}}.a tests for NetBSD

2022-06-26 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: MaskRay.
Herald added a subscriber: StephenFan.
Herald added a project: All.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Similar to D128512 .


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D128620

Files:
  clang/test/Driver/coverage-ld.c
  clang/test/Driver/instrprof-ld.c


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -36,6 +36,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
+
+// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
@@ -75,6 +84,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64-SHARED %s
+
+// CHECK-NETBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: -shared \
 // RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
Index: clang/test/Driver/coverage-ld.c
===
--- clang/test/Driver/coverage-ld.c
+++ clang/test/Driver/coverage-ld.c
@@ -35,6 +35,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-netbsd --coverage -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
+
+// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-unknown-openbsd --coverage -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -36,6 +36,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64 %s
+
+// CHECK-NETBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-NETBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}netbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
@@ -75,6 +84,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-netbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_netbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-NETBSD-X86-64-SHARED %s
+
+// CHECK-NETBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z

[PATCH] D128512: [Driver][test] Add libclang_rt.profile{{.*}}.a tests for OpenBSD

2022-06-26 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG2ff4fb6573c1: [Driver][test] Add libclang_rt.profile{{.*}}.a 
tests for OpenBSD (authored by fcambus).

Changed prior to commit:
  https://reviews.llvm.org/D128512?vs=439684&id=440088#toc

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128512/new/

https://reviews.llvm.org/D128512

Files:
  clang/test/Driver/coverage-ld.c
  clang/test/Driver/instrprof-ld.c


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -36,6 +36,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
+
+// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: -shared \
 // RUN: --target=i386-unknown-linux -fprofile-instr-generate -fuse-ld=ld \
@@ -66,6 +75,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64-SHARED %s
+
+// CHECK-OPENBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-apple-darwin14 -fprofile-instr-generate 
-fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
Index: clang/test/Driver/coverage-ld.c
===
--- clang/test/Driver/coverage-ld.c
+++ clang/test/Driver/coverage-ld.c
@@ -35,6 +35,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-openbsd --coverage -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
+
+// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: --target=arm-linux-androideabi --coverage -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -36,6 +36,15 @@
 // CHECK-FREEBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
+
+// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+
 // RUN: %clang -### %s 2>&1 \
 // RUN: -shared \
 // RUN: --target=i386-unknown-linux -fprofile-instr-generate -fuse-ld=ld \
@@ -66,6 +75,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
 // CHECK-FREEBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
+// RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix

[PATCH] D109051: Use Component in OpenBSD::getCompilerRT to find libraries

2022-06-26 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG3caa32b26f5a: [Driver] Use Component in 
OpenBSD::getCompilerRT to find libraries (authored by blackgnezdo, committed by 
fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D109051/new/

https://reviews.llvm.org/D109051

Files:
  clang/lib/Driver/ToolChains/OpenBSD.cpp


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -17,6 +17,7 @@
 #include "clang/Driver/SanitizerArgs.h"
 #include "llvm/Option/ArgList.h"
 #include "llvm/Support/Path.h"
+#include "llvm/Support/VirtualFileSystem.h"
 
 using namespace clang::driver;
 using namespace clang::driver::tools;
@@ -334,12 +335,21 @@
   CmdArgs.push_back(Profiling ? "-lpthread_p" : "-lpthread");
 }
 
-std::string OpenBSD::getCompilerRT(const ArgList &Args,
-   StringRef Component,
+std::string OpenBSD::getCompilerRT(const ArgList &Args, StringRef Component,
FileType Type) const {
-  SmallString<128> Path(getDriver().SysRoot);
-  llvm::sys::path::append(Path, "/usr/lib/libcompiler_rt.a");
-  return std::string(Path.str());
+  if (Component == "builtins") {
+SmallString<128> Path(getDriver().SysRoot);
+llvm::sys::path::append(Path, "/usr/lib/libcompiler_rt.a");
+return std::string(Path.str());
+  }
+  SmallString<128> P(getDriver().ResourceDir);
+  std::string CRTBasename =
+  buildCompilerRTBasename(Args, Component, Type, /*AddArch=*/false);
+  llvm::sys::path::append(P, "lib", CRTBasename);
+  // Checks if this is the base system case which uses a different location.
+  if (getVFS().exists(P))
+return std::string(P.str());
+  return ToolChain::getCompilerRT(Args, Component, Type);
 }
 
 Tool *OpenBSD::buildAssembler() const {


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -17,6 +17,7 @@
 #include "clang/Driver/SanitizerArgs.h"
 #include "llvm/Option/ArgList.h"
 #include "llvm/Support/Path.h"
+#include "llvm/Support/VirtualFileSystem.h"
 
 using namespace clang::driver;
 using namespace clang::driver::tools;
@@ -334,12 +335,21 @@
   CmdArgs.push_back(Profiling ? "-lpthread_p" : "-lpthread");
 }
 
-std::string OpenBSD::getCompilerRT(const ArgList &Args,
-   StringRef Component,
+std::string OpenBSD::getCompilerRT(const ArgList &Args, StringRef Component,
FileType Type) const {
-  SmallString<128> Path(getDriver().SysRoot);
-  llvm::sys::path::append(Path, "/usr/lib/libcompiler_rt.a");
-  return std::string(Path.str());
+  if (Component == "builtins") {
+SmallString<128> Path(getDriver().SysRoot);
+llvm::sys::path::append(Path, "/usr/lib/libcompiler_rt.a");
+return std::string(Path.str());
+  }
+  SmallString<128> P(getDriver().ResourceDir);
+  std::string CRTBasename =
+  buildCompilerRTBasename(Args, Component, Type, /*AddArch=*/false);
+  llvm::sys::path::append(P, "lib", CRTBasename);
+  // Checks if this is the base system case which uses a different location.
+  if (getVFS().exists(P))
+return std::string(P.str());
+  return ToolChain::getCompilerRT(Args, Component, Type);
 }
 
 Tool *OpenBSD::buildAssembler() const {
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D128512: [Driver][test] Add libclang_rt.profile{{.*}}.a tests for OpenBSD.

2022-06-24 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: MaskRay.
Herald added subscribers: StephenFan, krytarowski.
Herald added a project: All.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

This was requested in D109244 .

It needs D109051  to be applied for the 
OpenBSD driver to generate the correct library names, otherwise we always get 
`libcompiler_rt.a`.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D128512

Files:
  clang/test/Driver/coverage-ld.c
  clang/test/Driver/instrprof-ld.c


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -37,6 +37,15 @@
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
 // RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
+//
+// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+//
+// RUN: %clang -### %s 2>&1 \
 // RUN: -shared \
 // RUN: --target=i386-unknown-linux -fprofile-instr-generate -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
@@ -67,6 +76,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
 // RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate 
-fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64-SHARED %s
+//
+// CHECK-OPENBSD-X86-64-SHARED: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64-SHARED: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+//
+// RUN: %clang -### %s 2>&1 \
 // RUN: --target=x86_64-apple-darwin14 -fprofile-instr-generate 
-fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
 // RUN:   | FileCheck --check-prefix=CHECK-DARWIN-X86-64 %s
Index: clang/test/Driver/coverage-ld.c
===
--- clang/test/Driver/coverage-ld.c
+++ clang/test/Driver/coverage-ld.c
@@ -36,6 +36,15 @@
 // CHECK-FREEBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
 // RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-openbsd --coverage -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
+//
+// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64: 
"{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+//
+// RUN: %clang -### %s 2>&1 \
 // RUN: --target=arm-linux-androideabi --coverage -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
 // RUN: --sysroot=%S/Inputs/basic_android_tree/sysroot \


Index: clang/test/Driver/instrprof-ld.c
===
--- clang/test/Driver/instrprof-ld.c
+++ clang/test/Driver/instrprof-ld.c
@@ -37,6 +37,15 @@
 // CHECK-FREEBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
 // RUN: %clang -### %s 2>&1 \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=CHECK-OPENBSD-X86-64 %s
+//
+// CHECK-OPENBSD-X86-64: "{{(.*[^-.0-9A-Z_a-z])?}}ld{{(.exe)?}}"
+// CHECK-OPENBSD-X86-64: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}openbsd{{/|}}libclang_rt.profile-x86_64.a"
+//
+// RUN: %clang -### %s 2>&1 \
 // RUN: -shared \
 // RUN: --target=i386-unknown-linux -fprofile-instr-generate -fuse-ld=ld \
 // RUN: -resource-dir=%S/Inputs/resource_dir \
@@ -67,6 +76,16 @@
 // CHECK-FREEBSD-X86-64-SHARED: "{{.*}}/Inputs/resource_dir{{/|}}lib{{/|}}freebsd{{/|}}libclang_rt.profile-x86_64.a"
 //
 // RUN: %clang -### %s 2>&1 \
+// RUN: -shared \
+// RUN: --target=x86_64-unknown-openbsd -fprofile-instr-generate -fuse-ld=ld \
+// RUN: -resource-dir=%S/Inputs/resource_dir \
+// RUN: --sysroot=%S/Inputs/basic_openbsd_tree \
+// RUN:   | FileCheck --check-prefix=C

[PATCH] D114530: [clang][scan-build] Use cc/c++ instead of gcc/g++ on FreeBSD.

2021-12-02 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rG69deb1371fd4: Use cc/c++ instead of gcc/g++ on FreeBSD. 
(authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114530/new/

https://reviews.llvm.org/D114530

Files:
  clang/tools/scan-build/libexec/ccc-analyzer


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -s` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/(FreeBSD|OpenBSD)/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -s` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/(FreeBSD|OpenBSD)/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D114530: [clang][scan-build] Use cc/c++ instead of gcc/g++ on FreeBSD.

2021-11-24 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: emaste, mgorny.
Herald added subscribers: krytarowski, arichardson.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

All supported FreeBSD platforms do not have GCC in base anymore.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D114530

Files:
  clang/tools/scan-build/libexec/ccc-analyzer


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -s` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/(FreeBSD|OpenBSD)/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -s` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/(FreeBSD|OpenBSD)/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111797: [clang][scan-build] Use uname -s to detect the operating system.

2021-10-30 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG6ecd4a4d01a3: [clang][scan-build] Use uname -s to detect the 
operating system. (authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111797/new/

https://reviews.llvm.org/D111797

Files:
  clang/tools/scan-build/libexec/ccc-analyzer


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` =~ m/Darwin/) {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/OpenBSD/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` =~ m/Darwin/) {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/OpenBSD/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111797: [clang][scan-build] Use uname -s to detect the operating system.

2021-10-29 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

Sure, I reverted to the previous revision.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111797/new/

https://reviews.llvm.org/D111797

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


[PATCH] D111797: [clang][scan-build] Use uname -s to detect the operating system.

2021-10-29 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus updated this revision to Diff 383293.

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111797/new/

https://reviews.llvm.org/D111797

Files:
  clang/tools/scan-build/libexec/ccc-analyzer


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` =~ m/Darwin/) {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/OpenBSD/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` =~ m/Darwin/) {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/OpenBSD/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111760: [clang] Support __float128 on DragonFlyBSD.

2021-10-21 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rGb471e25a5924: [clang] Support __float128 on DragonFlyBSD. 
(authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111760/new/

https://reviews.llvm.org/D111760

Files:
  clang/lib/Basic/Targets/OSTargets.h


Index: clang/lib/Basic/Targets/OSTargets.h
===
--- clang/lib/Basic/Targets/OSTargets.h
+++ clang/lib/Basic/Targets/OSTargets.h
@@ -179,6 +179,8 @@
 Builder.defineMacro("__KPRINTF_ATTRIBUTE__");
 Builder.defineMacro("__tune_i386__");
 DefineStd(Builder, "unix", Opts);
+if (this->HasFloat128)
+  Builder.defineMacro("__FLOAT128__");
   }
 
 public:
@@ -188,6 +190,7 @@
 default:
 case llvm::Triple::x86:
 case llvm::Triple::x86_64:
+  this->HasFloat128 = true;
   this->MCountName = ".mcount";
   break;
 }


Index: clang/lib/Basic/Targets/OSTargets.h
===
--- clang/lib/Basic/Targets/OSTargets.h
+++ clang/lib/Basic/Targets/OSTargets.h
@@ -179,6 +179,8 @@
 Builder.defineMacro("__KPRINTF_ATTRIBUTE__");
 Builder.defineMacro("__tune_i386__");
 DefineStd(Builder, "unix", Opts);
+if (this->HasFloat128)
+  Builder.defineMacro("__FLOAT128__");
   }
 
 public:
@@ -188,6 +190,7 @@
 default:
 case llvm::Triple::x86:
 case llvm::Triple::x86_64:
+  this->HasFloat128 = true;
   this->MCountName = ".mcount";
   break;
 }
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111760: [clang] Support __float128 on DragonFlyBSD.

2021-10-19 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added inline comments.



Comment at: clang/lib/Basic/Targets/OSTargets.h:182
 DefineStd(Builder, "unix", Opts);
+if (this->HasFloat128)
+  Builder.defineMacro("__FLOAT128__");

mgorny wrote:
> Maybe I'm missing something but do you actually need to state `this->` 
> explicitly?
Seems like it is necessary, yes. Other targets (Haiku, Linux, OpenBSD, Solaris) 
use the same `if (this->HasFloat128)` check, and build fails if I remove the 
`this->` part.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111760/new/

https://reviews.llvm.org/D111760

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


[PATCH] D111797: [clang][scan-build] Use uname -s to detect the operating system.

2021-10-17 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

In D111797#3069103 , @brad wrote:

> I'm not a Perl guy but I'm wondering about simplifying what it is doing there 
> to just `uname -s` eq 'OpenBSD'?

Yes, I think it makes sense. Just sent an updated revision.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111797/new/

https://reviews.llvm.org/D111797

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


[PATCH] D111797: [clang][scan-build] Use uname -s to detect the operating system.

2021-10-17 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus updated this revision to Diff 380263.
fcambus added a comment.

Avoid using regexps and use the 'eq' operator for doing string comparison.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111797/new/

https://reviews.llvm.org/D111797

Files:
  clang/tools/scan-build/libexec/ccc-analyzer


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` eq "Darwin\n") {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` eq "OpenBSD\n") {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` eq "Darwin\n") {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` eq "OpenBSD\n") {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D109051: Use Component in OpenBSD::getCompilerRT to find libraries

2021-10-17 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

Any update on this?

For info, we started shipping libraries 

 in the OpenBSD base system using this naming scheme for architectures on which 
we build Clang.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D109051/new/

https://reviews.llvm.org/D109051

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


[PATCH] D111805: [Driver][NetBSD] Use T reference instead of getToolChain().getTriple().

2021-10-15 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rGecef0359538c: [Driver][NetBSD] Use Triple reference instead 
of ToolChain.getTriple(). (authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111805/new/

https://reviews.llvm.org/D111805

Files:
  clang/lib/Driver/ToolChains/NetBSD.cpp


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -32,6 +32,7 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &Triple = ToolChain.getTriple();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
@@ -48,8 +49,7 @@
   case llvm::Triple::thumbeb: {
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
-std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
+std::string Arch = arm::getARMTargetCPU(MCPU, MArch, Triple);
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -60,7 +60,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_back(CPUName.data());
@@ -68,7 +68,7 @@
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (ToolChain.getTriple().isLittleEndian())
+if (Triple.isLittleEndian())
   CmdArgs.push_back("-EL");
 else
   CmdArgs.push_back("-EB");
@@ -80,18 +80,16 @@
   case llvm::Triple::sparc:
   case llvm::Triple::sparcel: {
 CmdArgs.push_back("-32");
-std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
-CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+std::string CPU = getCPUName(D, Args, Triple);
+CmdArgs.push_back(sparc::getSparcAsmModeForCPU(CPU, Triple));
 AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
-CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+std::string CPU = getCPUName(D, Args, Triple);
+CmdArgs.push_back(sparc::getSparcAsmModeForCPU(CPU, Triple));
 AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
@@ -122,6 +120,8 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &Triple = ToolChain.getTriple();
+
   ArgStringList CmdArgs;
 
   if (!D.SysRoot.empty())
@@ -156,7 +156,7 @@
   case llvm::Triple::arm:
   case llvm::Triple::thumb:
 CmdArgs.push_back("-m");
-switch (ToolChain.getTriple().getEnvironment()) {
+switch (Triple.getEnvironment()) {
 case llvm::Triple::EABI:
 case llvm::Triple::GNUEABI:
   CmdArgs.push_back("armelf_nbsd_eabi");
@@ -174,7 +174,7 @@
   case llvm::Triple::thumbeb:
 arm::appendBE8LinkFlag(Args, CmdArgs, ToolChain.getEffectiveTriple());
 CmdArgs.push_back("-m");
-switch (ToolChain.getTriple().getEnvironment()) {
+switch (Triple.getEnvironment()) {
 case llvm::Triple::EABI:
 case llvm::Triple::GNUEABI:
   CmdArgs.push_back("armelfb_nbsd_eabi");
@@ -271,7 +271,7 @@
   }
 
   unsigned Major, Minor, Micro;
-  ToolChain.getTriple().getOSVersion(Major, Minor, Micro);
+  Triple.getOSVersion(Major, Minor, Micro);
   bool useLibgcc = true;
   if (Major >= 7 || Major == 0) {
 switch (ToolChain.getArch()) {


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -32,6 +32,7 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &Triple = ToolChain.getTriple();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
@@ -48,8 +49,7 @@
   case llvm::Triple::thumbeb: {
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
-std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
+std::string Arch = arm::getARMTargetCPU(MCPU, MArch, Triple);
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -60,7 +60,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_

[PATCH] D111805: [Driver][NetBSD] Use T reference instead of getToolChain().getTriple().

2021-10-15 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus marked an inline comment as done.
fcambus added a comment.

Yes, I rebuilt everything with the updated diff and ran `check-clang-driver`.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111805/new/

https://reviews.llvm.org/D111805

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


[PATCH] D111805: [Driver][NetBSD] Use T reference instead of getToolChain().getTriple().

2021-10-15 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus marked an inline comment as done.
fcambus added inline comments.



Comment at: clang/lib/Driver/ToolChains/NetBSD.cpp:35
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &T = ToolChain.getTriple();
 

mgorny wrote:
> Is there a specific reason to choose the name `T`? FWICS different drivers 
> use different names but I think `Triple` is both more popular and more 
> readable.
No specific reason, I agree using the `Triple` name is a better choice. I 
updated the diff.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111805/new/

https://reviews.llvm.org/D111805

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


[PATCH] D111805: [Driver][NetBSD] Use T reference instead of getToolChain().getTriple().

2021-10-15 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus updated this revision to Diff 379934.
fcambus added a comment.

Use 'Triple' instead of 'T'.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111805/new/

https://reviews.llvm.org/D111805

Files:
  clang/lib/Driver/ToolChains/NetBSD.cpp


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -32,6 +32,7 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &Triple = ToolChain.getTriple();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
@@ -48,8 +49,7 @@
   case llvm::Triple::thumbeb: {
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
-std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
+std::string Arch = arm::getARMTargetCPU(MCPU, MArch, Triple);
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -60,7 +60,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_back(CPUName.data());
@@ -68,7 +68,7 @@
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (ToolChain.getTriple().isLittleEndian())
+if (Triple.isLittleEndian())
   CmdArgs.push_back("-EL");
 else
   CmdArgs.push_back("-EB");
@@ -80,18 +80,16 @@
   case llvm::Triple::sparc:
   case llvm::Triple::sparcel: {
 CmdArgs.push_back("-32");
-std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
-CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+std::string CPU = getCPUName(D, Args, Triple);
+CmdArgs.push_back(sparc::getSparcAsmModeForCPU(CPU, Triple));
 AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
-CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+std::string CPU = getCPUName(D, Args, Triple);
+CmdArgs.push_back(sparc::getSparcAsmModeForCPU(CPU, Triple));
 AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
@@ -122,6 +120,8 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &Triple = ToolChain.getTriple();
+
   ArgStringList CmdArgs;
 
   if (!D.SysRoot.empty())
@@ -156,7 +156,7 @@
   case llvm::Triple::arm:
   case llvm::Triple::thumb:
 CmdArgs.push_back("-m");
-switch (ToolChain.getTriple().getEnvironment()) {
+switch (Triple.getEnvironment()) {
 case llvm::Triple::EABI:
 case llvm::Triple::GNUEABI:
   CmdArgs.push_back("armelf_nbsd_eabi");
@@ -174,7 +174,7 @@
   case llvm::Triple::thumbeb:
 arm::appendBE8LinkFlag(Args, CmdArgs, ToolChain.getEffectiveTriple());
 CmdArgs.push_back("-m");
-switch (ToolChain.getTriple().getEnvironment()) {
+switch (Triple.getEnvironment()) {
 case llvm::Triple::EABI:
 case llvm::Triple::GNUEABI:
   CmdArgs.push_back("armelfb_nbsd_eabi");
@@ -271,7 +271,7 @@
   }
 
   unsigned Major, Minor, Micro;
-  ToolChain.getTriple().getOSVersion(Major, Minor, Micro);
+  Triple.getOSVersion(Major, Minor, Micro);
   bool useLibgcc = true;
   if (Major >= 7 || Major == 0) {
 switch (ToolChain.getArch()) {


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -32,6 +32,7 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &Triple = ToolChain.getTriple();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
@@ -48,8 +49,7 @@
   case llvm::Triple::thumbeb: {
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
-std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
+std::string Arch = arm::getARMTargetCPU(MCPU, MArch, Triple);
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -60,7 +60,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_back(CPUName.data());
@@ -68,7 +68,7 @@
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).d

[PATCH] D111793: [Driver][Darwin] Use T reference instead of getToolChain().getTriple().

2021-10-14 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG8ecbcd058fbd: [Driver][Darwin] Use T reference instead of 
getToolChain().getTriple(). (authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111793/new/

https://reviews.llvm.org/D111793

Files:
  clang/lib/Driver/ToolChains/Darwin.cpp


Index: clang/lib/Driver/ToolChains/Darwin.cpp
===
--- clang/lib/Driver/ToolChains/Darwin.cpp
+++ clang/lib/Driver/ToolChains/Darwin.cpp
@@ -94,6 +94,8 @@
  const InputInfoList &Inputs,
  const ArgList &Args,
  const char *LinkingOutput) const {
+  const llvm::Triple &T(getToolChain().getTriple());
+
   ArgStringList CmdArgs;
 
   assert(Inputs.size() == 1 && "Unexpected number of inputs.");
@@ -112,7 +114,6 @@
   // FIXME: at run-time detect assembler capabilities or rely on version
   // information forwarded by -target-assembler-version.
   if (Args.hasArg(options::OPT_fno_integrated_as)) {
-const llvm::Triple &T(getToolChain().getTriple());
 if (!(T.isMacOSX() && T.isMacOSXVersionLT(10, 7)))
   CmdArgs.push_back("-Q");
   }
@@ -130,8 +131,7 @@
   AddMachOArch(Args, CmdArgs);
 
   // Use -force_cpusubtype_ALL on x86 by default.
-  if (getToolChain().getTriple().isX86() ||
-  Args.hasArg(options::OPT_force__cpusubtype__ALL))
+  if (T.isX86() || Args.hasArg(options::OPT_force__cpusubtype__ALL))
 CmdArgs.push_back("-force_cpusubtype_ALL");
 
   if (getToolChain().getArch() != llvm::Triple::x86_64 &&


Index: clang/lib/Driver/ToolChains/Darwin.cpp
===
--- clang/lib/Driver/ToolChains/Darwin.cpp
+++ clang/lib/Driver/ToolChains/Darwin.cpp
@@ -94,6 +94,8 @@
  const InputInfoList &Inputs,
  const ArgList &Args,
  const char *LinkingOutput) const {
+  const llvm::Triple &T(getToolChain().getTriple());
+
   ArgStringList CmdArgs;
 
   assert(Inputs.size() == 1 && "Unexpected number of inputs.");
@@ -112,7 +114,6 @@
   // FIXME: at run-time detect assembler capabilities or rely on version
   // information forwarded by -target-assembler-version.
   if (Args.hasArg(options::OPT_fno_integrated_as)) {
-const llvm::Triple &T(getToolChain().getTriple());
 if (!(T.isMacOSX() && T.isMacOSXVersionLT(10, 7)))
   CmdArgs.push_back("-Q");
   }
@@ -130,8 +131,7 @@
   AddMachOArch(Args, CmdArgs);
 
   // Use -force_cpusubtype_ALL on x86 by default.
-  if (getToolChain().getTriple().isX86() ||
-  Args.hasArg(options::OPT_force__cpusubtype__ALL))
+  if (T.isX86() || Args.hasArg(options::OPT_force__cpusubtype__ALL))
 CmdArgs.push_back("-force_cpusubtype_ALL");
 
   if (getToolChain().getArch() != llvm::Triple::x86_64 &&
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111786: [Driver][WebAssembly] Use ToolChain reference instead of getToolChain().

2021-10-14 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rGf7a3214306cb: [Driver][WebAssembly] Use ToolChain reference 
instead of getToolChain(). (authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111786/new/

https://reviews.llvm.org/D111786

Files:
  clang/lib/Driver/ToolChains/WebAssembly.cpp


Index: clang/lib/Driver/ToolChains/WebAssembly.cpp
===
--- clang/lib/Driver/ToolChains/WebAssembly.cpp
+++ clang/lib/Driver/ToolChains/WebAssembly.cpp
@@ -63,7 +63,7 @@
   ArgStringList CmdArgs;
 
   CmdArgs.push_back("-m");
-  if (getToolChain().getTriple().isArch64Bit())
+  if (ToolChain.getTriple().isArch64Bit())
 CmdArgs.push_back("wasm64");
   else
 CmdArgs.push_back("wasm32");
@@ -130,7 +130,7 @@
 
   // When optimizing, if wasm-opt is available, run it.
   if (Arg *A = Args.getLastArg(options::OPT_O_Group)) {
-auto WasmOptPath = getToolChain().GetProgramPath("wasm-opt");
+auto WasmOptPath = ToolChain.GetProgramPath("wasm-opt");
 if (WasmOptPath != "wasm-opt") {
   StringRef OOpt = "s";
   if (A->getOption().matches(options::OPT_O4) ||


Index: clang/lib/Driver/ToolChains/WebAssembly.cpp
===
--- clang/lib/Driver/ToolChains/WebAssembly.cpp
+++ clang/lib/Driver/ToolChains/WebAssembly.cpp
@@ -63,7 +63,7 @@
   ArgStringList CmdArgs;
 
   CmdArgs.push_back("-m");
-  if (getToolChain().getTriple().isArch64Bit())
+  if (ToolChain.getTriple().isArch64Bit())
 CmdArgs.push_back("wasm64");
   else
 CmdArgs.push_back("wasm32");
@@ -130,7 +130,7 @@
 
   // When optimizing, if wasm-opt is available, run it.
   if (Arg *A = Args.getLastArg(options::OPT_O_Group)) {
-auto WasmOptPath = getToolChain().GetProgramPath("wasm-opt");
+auto WasmOptPath = ToolChain.GetProgramPath("wasm-opt");
 if (WasmOptPath != "wasm-opt") {
   StringRef OOpt = "s";
   if (A->getOption().matches(options::OPT_O4) ||
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111805: [Driver][NetBSD] Use T reference instead of getToolChain().getTriple().

2021-10-14 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: krytarowski, mgorny.
Herald added a subscriber: fedor.sergeev.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111805

Files:
  clang/lib/Driver/ToolChains/NetBSD.cpp


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -32,6 +32,7 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &T = ToolChain.getTriple();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
@@ -49,7 +50,7 @@
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
 std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
+arm::getARMTargetCPU(MCPU, MArch, T);
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -60,7 +61,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, T, CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_back(CPUName.data());
@@ -68,7 +69,7 @@
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (ToolChain.getTriple().isLittleEndian())
+if (T.isLittleEndian())
   CmdArgs.push_back("-EL");
 else
   CmdArgs.push_back("-EB");
@@ -80,18 +81,16 @@
   case llvm::Triple::sparc:
   case llvm::Triple::sparcel: {
 CmdArgs.push_back("-32");
-std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
-CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+std::string CPU = getCPUName(D, Args, T);
+CmdArgs.push_back(sparc::getSparcAsmModeForCPU(CPU, T));
 AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
-CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+std::string CPU = getCPUName(D, Args, T);
+CmdArgs.push_back(sparc::getSparcAsmModeForCPU(CPU, T));
 AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
@@ -122,6 +121,8 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &T = ToolChain.getTriple();
+
   ArgStringList CmdArgs;
 
   if (!D.SysRoot.empty())
@@ -156,7 +157,7 @@
   case llvm::Triple::arm:
   case llvm::Triple::thumb:
 CmdArgs.push_back("-m");
-switch (ToolChain.getTriple().getEnvironment()) {
+switch (T.getEnvironment()) {
 case llvm::Triple::EABI:
 case llvm::Triple::GNUEABI:
   CmdArgs.push_back("armelf_nbsd_eabi");
@@ -174,7 +175,7 @@
   case llvm::Triple::thumbeb:
 arm::appendBE8LinkFlag(Args, CmdArgs, ToolChain.getEffectiveTriple());
 CmdArgs.push_back("-m");
-switch (ToolChain.getTriple().getEnvironment()) {
+switch (T.getEnvironment()) {
 case llvm::Triple::EABI:
 case llvm::Triple::GNUEABI:
   CmdArgs.push_back("armelfb_nbsd_eabi");
@@ -271,7 +272,7 @@
   }
 
   unsigned Major, Minor, Micro;
-  ToolChain.getTriple().getOSVersion(Major, Minor, Micro);
+  T.getOSVersion(Major, Minor, Micro);
   bool useLibgcc = true;
   if (Major >= 7 || Major == 0) {
 switch (ToolChain.getArch()) {


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -32,6 +32,7 @@
   const toolchains::NetBSD &ToolChain =
 static_cast(getToolChain());
   const Driver &D = ToolChain.getDriver();
+  const llvm::Triple &T = ToolChain.getTriple();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
@@ -49,7 +50,7 @@
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
 std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
+arm::getARMTargetCPU(MCPU, MArch, T);
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -60,7 +61,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, T, CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_back(CPUName.data());
@@ -68,7 +69,7 @@
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (ToolChain.getTriple().isLittleEndian())
+if (

[PATCH] D111797: [clang][scan-build] Use uname -s to detect the operating system.

2021-10-14 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: brad.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111797

Files:
  clang/tools/scan-build/libexec/ccc-analyzer


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` =~ m/Darwin/) {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/OpenBSD/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -72,7 +72,7 @@
 # If on OSX, use xcrun to determine the SDK root.
 my $UseXCRUN = 0;
 
-if (`uname -a` =~ m/Darwin/) {
+if (`uname -s` =~ m/Darwin/) {
   $DefaultCCompiler = 'clang';
   $DefaultCXXCompiler = 'clang++';
   # Older versions of OSX do not have xcrun to
@@ -80,7 +80,7 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
-} elsif (`uname -a` =~ m/OpenBSD/) {
+} elsif (`uname -s` =~ m/OpenBSD/) {
   $DefaultCCompiler = 'cc';
   $DefaultCXXCompiler = 'c++';
 } else {
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111793: [Driver][Darwin] Use T reference instead of getToolChain().getTriple().

2021-10-14 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: arphaman, vsk, ahatanak, thakis.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111793

Files:
  clang/lib/Driver/ToolChains/Darwin.cpp


Index: clang/lib/Driver/ToolChains/Darwin.cpp
===
--- clang/lib/Driver/ToolChains/Darwin.cpp
+++ clang/lib/Driver/ToolChains/Darwin.cpp
@@ -94,6 +94,8 @@
  const InputInfoList &Inputs,
  const ArgList &Args,
  const char *LinkingOutput) const {
+  const llvm::Triple &T(getToolChain().getTriple());
+
   ArgStringList CmdArgs;
 
   assert(Inputs.size() == 1 && "Unexpected number of inputs.");
@@ -112,7 +114,6 @@
   // FIXME: at run-time detect assembler capabilities or rely on version
   // information forwarded by -target-assembler-version.
   if (Args.hasArg(options::OPT_fno_integrated_as)) {
-const llvm::Triple &T(getToolChain().getTriple());
 if (!(T.isMacOSX() && T.isMacOSXVersionLT(10, 7)))
   CmdArgs.push_back("-Q");
   }
@@ -130,8 +131,7 @@
   AddMachOArch(Args, CmdArgs);
 
   // Use -force_cpusubtype_ALL on x86 by default.
-  if (getToolChain().getTriple().isX86() ||
-  Args.hasArg(options::OPT_force__cpusubtype__ALL))
+  if (T.isX86() || Args.hasArg(options::OPT_force__cpusubtype__ALL))
 CmdArgs.push_back("-force_cpusubtype_ALL");
 
   if (getToolChain().getArch() != llvm::Triple::x86_64 &&


Index: clang/lib/Driver/ToolChains/Darwin.cpp
===
--- clang/lib/Driver/ToolChains/Darwin.cpp
+++ clang/lib/Driver/ToolChains/Darwin.cpp
@@ -94,6 +94,8 @@
  const InputInfoList &Inputs,
  const ArgList &Args,
  const char *LinkingOutput) const {
+  const llvm::Triple &T(getToolChain().getTriple());
+
   ArgStringList CmdArgs;
 
   assert(Inputs.size() == 1 && "Unexpected number of inputs.");
@@ -112,7 +114,6 @@
   // FIXME: at run-time detect assembler capabilities or rely on version
   // information forwarded by -target-assembler-version.
   if (Args.hasArg(options::OPT_fno_integrated_as)) {
-const llvm::Triple &T(getToolChain().getTriple());
 if (!(T.isMacOSX() && T.isMacOSXVersionLT(10, 7)))
   CmdArgs.push_back("-Q");
   }
@@ -130,8 +131,7 @@
   AddMachOArch(Args, CmdArgs);
 
   // Use -force_cpusubtype_ALL on x86 by default.
-  if (getToolChain().getTriple().isX86() ||
-  Args.hasArg(options::OPT_force__cpusubtype__ALL))
+  if (T.isX86() || Args.hasArg(options::OPT_force__cpusubtype__ALL))
 CmdArgs.push_back("-force_cpusubtype_ALL");
 
   if (getToolChain().getArch() != llvm::Triple::x86_64 &&
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111786: [Driver][WebAssembly] Use ToolChain reference instead of getToolChain().

2021-10-14 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: sbc100, aheejin.
Herald added subscribers: ecnelises, sunfish, jgravelle-google, dschuff.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111786

Files:
  clang/lib/Driver/ToolChains/WebAssembly.cpp


Index: clang/lib/Driver/ToolChains/WebAssembly.cpp
===
--- clang/lib/Driver/ToolChains/WebAssembly.cpp
+++ clang/lib/Driver/ToolChains/WebAssembly.cpp
@@ -63,7 +63,7 @@
   ArgStringList CmdArgs;
 
   CmdArgs.push_back("-m");
-  if (getToolChain().getTriple().isArch64Bit())
+  if (ToolChain.getTriple().isArch64Bit())
 CmdArgs.push_back("wasm64");
   else
 CmdArgs.push_back("wasm32");
@@ -130,7 +130,7 @@
 
   // When optimizing, if wasm-opt is available, run it.
   if (Arg *A = Args.getLastArg(options::OPT_O_Group)) {
-auto WasmOptPath = getToolChain().GetProgramPath("wasm-opt");
+auto WasmOptPath = ToolChain.GetProgramPath("wasm-opt");
 if (WasmOptPath != "wasm-opt") {
   StringRef OOpt = "s";
   if (A->getOption().matches(options::OPT_O4) ||


Index: clang/lib/Driver/ToolChains/WebAssembly.cpp
===
--- clang/lib/Driver/ToolChains/WebAssembly.cpp
+++ clang/lib/Driver/ToolChains/WebAssembly.cpp
@@ -63,7 +63,7 @@
   ArgStringList CmdArgs;
 
   CmdArgs.push_back("-m");
-  if (getToolChain().getTriple().isArch64Bit())
+  if (ToolChain.getTriple().isArch64Bit())
 CmdArgs.push_back("wasm64");
   else
 CmdArgs.push_back("wasm32");
@@ -130,7 +130,7 @@
 
   // When optimizing, if wasm-opt is available, run it.
   if (Arg *A = Args.getLastArg(options::OPT_O_Group)) {
-auto WasmOptPath = getToolChain().GetProgramPath("wasm-opt");
+auto WasmOptPath = ToolChain.GetProgramPath("wasm-opt");
 if (WasmOptPath != "wasm-opt") {
   StringRef OOpt = "s";
   if (A->getOption().matches(options::OPT_O4) ||
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111760: [clang] Support __float128 on DragonFlyBSD.

2021-10-13 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: emaste, joerg, mgorny, krytarowski.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111760

Files:
  clang/lib/Basic/Targets/OSTargets.h


Index: clang/lib/Basic/Targets/OSTargets.h
===
--- clang/lib/Basic/Targets/OSTargets.h
+++ clang/lib/Basic/Targets/OSTargets.h
@@ -179,6 +179,8 @@
 Builder.defineMacro("__KPRINTF_ATTRIBUTE__");
 Builder.defineMacro("__tune_i386__");
 DefineStd(Builder, "unix", Opts);
+if (this->HasFloat128)
+  Builder.defineMacro("__FLOAT128__");
   }
 
 public:
@@ -188,6 +190,7 @@
 default:
 case llvm::Triple::x86:
 case llvm::Triple::x86_64:
+  this->HasFloat128 = true;
   this->MCountName = ".mcount";
   break;
 }


Index: clang/lib/Basic/Targets/OSTargets.h
===
--- clang/lib/Basic/Targets/OSTargets.h
+++ clang/lib/Basic/Targets/OSTargets.h
@@ -179,6 +179,8 @@
 Builder.defineMacro("__KPRINTF_ATTRIBUTE__");
 Builder.defineMacro("__tune_i386__");
 DefineStd(Builder, "unix", Opts);
+if (this->HasFloat128)
+  Builder.defineMacro("__FLOAT128__");
   }
 
 public:
@@ -188,6 +190,7 @@
 default:
 case llvm::Triple::x86:
 case llvm::Triple::x86_64:
+  this->HasFloat128 = true;
   this->MCountName = ".mcount";
   break;
 }
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D111462: [Driver][OpenBSD] Use ToolChain reference instead of getToolChain().

2021-10-09 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG6417260a57dd: [Driver][OpenBSD] Use ToolChain reference 
instead of getToolChain(). (authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111462/new/

https://reviews.llvm.org/D111462

Files:
  clang/lib/Driver/ToolChains/OpenBSD.cpp


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -28,10 +28,13 @@
   const InputInfoList &Inputs,
   const ArgList &Args,
   const char *LinkingOutput) const {
+  const toolchains::OpenBSD &ToolChain =
+  static_cast(getToolChain());
+
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
 
-  switch (getToolChain().getArch()) {
+  switch (ToolChain.getArch()) {
   case llvm::Triple::x86:
 // When building 32-bit code on OpenBSD/amd64, we have to explicitly
 // instruct as in the base system to assemble 32-bit code.
@@ -45,11 +48,11 @@
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(getToolChain().getDriver(), Args,
- getToolChain().getTriple());
+std::string CPU = getCPUName(ToolChain.getDriver(), Args,
+ ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -57,17 +60,17 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, getToolChain().getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
 
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (getToolChain().getTriple().isLittleEndian())
+if (ToolChain.getTriple().isLittleEndian())
   CmdArgs.push_back("-EL");
 else
   CmdArgs.push_back("-EB");
 
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -83,7 +86,7 @@
   for (const auto &II : Inputs)
 CmdArgs.push_back(II.getFilename());
 
-  const char *Exec = Args.MakeArgString(getToolChain().GetProgramPath("as"));
+  const char *Exec = Args.MakeArgString(ToolChain.GetProgramPath("as"));
   C.addCommand(std::make_unique(JA, *this,
  ResponseFileSupport::AtFileCurCP(),
  Exec, CmdArgs, Inputs, Output));
@@ -96,7 +99,7 @@
const char *LinkingOutput) const {
   const toolchains::OpenBSD &ToolChain =
   static_cast(getToolChain());
-  const Driver &D = getToolChain().getDriver();
+  const Driver &D = ToolChain.getDriver();
   ArgStringList CmdArgs;
 
   // Silence warning for "clang -g foo.o -o foo"


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -28,10 +28,13 @@
   const InputInfoList &Inputs,
   const ArgList &Args,
   const char *LinkingOutput) const {
+  const toolchains::OpenBSD &ToolChain =
+  static_cast(getToolChain());
+
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
 
-  switch (getToolChain().getArch()) {
+  switch (ToolChain.getArch()) {
   case llvm::Triple::x86:
 // When building 32-bit code on OpenBSD/amd64, we have to explicitly
 // instruct as in the base system to assemble 32-bit code.
@@ -45,11 +48,11 @@
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(getToolChain().getDriver(), Args,
- getToolChain().getTriple());
+std::string CPU = getCPUName(ToolChain.getDriver(), Args,
+ ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -57,17 +60,17 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, getToolChain().getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName,

[PATCH] D111462: [Driver][OpenBSD] Use ToolChain reference instead of getToolChain().

2021-10-08 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: brad.
Herald added a subscriber: fedor.sergeev.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111462

Files:
  clang/lib/Driver/ToolChains/OpenBSD.cpp


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -28,10 +28,13 @@
   const InputInfoList &Inputs,
   const ArgList &Args,
   const char *LinkingOutput) const {
+  const toolchains::OpenBSD &ToolChain =
+  static_cast(getToolChain());
+
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
 
-  switch (getToolChain().getArch()) {
+  switch (ToolChain.getArch()) {
   case llvm::Triple::x86:
 // When building 32-bit code on OpenBSD/amd64, we have to explicitly
 // instruct as in the base system to assemble 32-bit code.
@@ -45,11 +48,11 @@
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(getToolChain().getDriver(), Args,
- getToolChain().getTriple());
+std::string CPU = getCPUName(ToolChain.getDriver(), Args,
+ ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -57,17 +60,17 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, getToolChain().getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
 
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (getToolChain().getTriple().isLittleEndian())
+if (ToolChain.getTriple().isLittleEndian())
   CmdArgs.push_back("-EL");
 else
   CmdArgs.push_back("-EB");
 
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -83,7 +86,7 @@
   for (const auto &II : Inputs)
 CmdArgs.push_back(II.getFilename());
 
-  const char *Exec = Args.MakeArgString(getToolChain().GetProgramPath("as"));
+  const char *Exec = Args.MakeArgString(ToolChain.GetProgramPath("as"));
   C.addCommand(std::make_unique(JA, *this,
  ResponseFileSupport::AtFileCurCP(),
  Exec, CmdArgs, Inputs, Output));
@@ -96,7 +99,7 @@
const char *LinkingOutput) const {
   const toolchains::OpenBSD &ToolChain =
   static_cast(getToolChain());
-  const Driver &D = getToolChain().getDriver();
+  const Driver &D = ToolChain.getDriver();
   ArgStringList CmdArgs;
 
   // Silence warning for "clang -g foo.o -o foo"


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -28,10 +28,13 @@
   const InputInfoList &Inputs,
   const ArgList &Args,
   const char *LinkingOutput) const {
+  const toolchains::OpenBSD &ToolChain =
+  static_cast(getToolChain());
+
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
 
-  switch (getToolChain().getArch()) {
+  switch (ToolChain.getArch()) {
   case llvm::Triple::x86:
 // When building 32-bit code on OpenBSD/amd64, we have to explicitly
 // instruct as in the base system to assemble 32-bit code.
@@ -45,11 +48,11 @@
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(getToolChain().getDriver(), Args,
- getToolChain().getTriple());
+std::string CPU = getCPUName(ToolChain.getDriver(), Args,
+ ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -57,17 +60,17 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, getToolChain().getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
 
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(A

[PATCH] D111340: [Driver][NetBSD] Use ToolChain reference instead of getToolChain().

2021-10-08 Thread Frederic Cambus via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
fcambus marked an inline comment as done.
Closed by commit rG1f90b365bd62: [Driver][NetBSD] Use ToolChain reference 
instead of getToolChain(). (authored by fcambus).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111340/new/

https://reviews.llvm.org/D111340

Files:
  clang/lib/Driver/ToolChains/NetBSD.cpp

Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -29,14 +29,16 @@
  const InputInfoList &Inputs,
  const ArgList &Args,
  const char *LinkingOutput) const {
-  const Driver &D = getToolChain().getDriver();
+  const toolchains::NetBSD &ToolChain =
+static_cast(getToolChain());
+  const Driver &D = ToolChain.getDriver();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
 
   // GNU as needs different flags for creating the correct output format
   // on architectures with different ABIs or optional feature sets.
-  switch (getToolChain().getArch()) {
+  switch (ToolChain.getArch()) {
   case llvm::Triple::x86:
 CmdArgs.push_back("--32");
 break;
@@ -47,7 +49,7 @@
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
 std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, getToolChain().getTriple());
+arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -58,7 +60,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, getToolChain().getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_back(CPUName.data());
@@ -66,31 +68,31 @@
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (getToolChain().getTriple().isLittleEndian())
+if (ToolChain.getTriple().isLittleEndian())
   CmdArgs.push_back("-EL");
 else
   CmdArgs.push_back("-EB");
 
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
   case llvm::Triple::sparc:
   case llvm::Triple::sparcel: {
 CmdArgs.push_back("-32");
-std::string CPU = getCPUName(D, Args, getToolChain().getTriple());
+std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(D, Args, getToolChain().getTriple());
+std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -106,7 +108,7 @@
   for (const auto &II : Inputs)
 CmdArgs.push_back(II.getFilename());
 
-  const char *Exec = Args.MakeArgString((getToolChain().GetProgramPath("as")));
+  const char *Exec = Args.MakeArgString((ToolChain.GetProgramPath("as")));
   C.addCommand(std::make_unique(JA, *this,
  ResponseFileSupport::AtFileCurCP(),
  Exec, CmdArgs, Inputs, Output));
@@ -258,9 +260,9 @@
   Args.AddAllArgs(CmdArgs, options::OPT_Z_Flag);
   Args.AddAllArgs(CmdArgs, options::OPT_r);
 
-  bool NeedsSanitizerDeps = addSanitizerRuntimes(getToolChain(), Args, CmdArgs);
+  bool NeedsSanitizerDeps = addSanitizerRuntimes(ToolChain, Args, CmdArgs);
   bool NeedsXRayDeps = addXRayRuntime(ToolChain, Args, CmdArgs);
-  AddLinkerInputs(getToolChain(), Inputs, Args, CmdArgs, JA);
+  AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs, JA);
 
   const SanitizerArgs &SanArgs = ToolChain.getSanitizerArgs();
   if (SanArgs.needsSharedRt()) {
@@ -297,7 +299,7 @@
 // Use the static OpenMP runtime with -static-openmp
 bool StaticOpenMP = Args.hasArg(options::OPT_static_openmp) &&
 !Args.hasArg(options::OPT_static);
-addOpenMPRuntime(CmdArgs, getToolChain(), Args, StaticOpenMP);
+addOpenMPRuntime(CmdArgs, ToolChain, Args, StaticOpenMP);
 
 if (D.CCCIsCXX()) {
   if (ToolChain.ShouldLinkCXXStdlib(Args))
@@ -305,7 +307,7 @@
 

[PATCH] D111340: [Driver][NetBSD] Use ToolChain reference instead of getToolChain().

2021-10-08 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus marked an inline comment as done.
fcambus added inline comments.



Comment at: clang/lib/Driver/ToolChains/NetBSD.cpp:32
  const char *LinkingOutput) const {
   const Driver &D = getToolChain().getDriver();
 

mgorny wrote:
> Since you're doing it for the other method, maybe it'd make sense to define 
> `ToolChain` here as well.
Makes sense, updated the diff.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111340/new/

https://reviews.llvm.org/D111340

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


[PATCH] D111340: [Driver][NetBSD] Use ToolChain reference instead of getToolChain().

2021-10-08 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus updated this revision to Diff 378124.
fcambus added a comment.
Herald added a subscriber: fedor.sergeev.

Also define and use ToolChain reference in netbsd::Assembler::ConstructJob().


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111340/new/

https://reviews.llvm.org/D111340

Files:
  clang/lib/Driver/ToolChains/NetBSD.cpp

Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -29,14 +29,16 @@
  const InputInfoList &Inputs,
  const ArgList &Args,
  const char *LinkingOutput) const {
-  const Driver &D = getToolChain().getDriver();
+  const toolchains::NetBSD &ToolChain =
+static_cast(getToolChain());
+  const Driver &D = ToolChain.getDriver();
 
   claimNoWarnArgs(Args);
   ArgStringList CmdArgs;
 
   // GNU as needs different flags for creating the correct output format
   // on architectures with different ABIs or optional feature sets.
-  switch (getToolChain().getArch()) {
+  switch (ToolChain.getArch()) {
   case llvm::Triple::x86:
 CmdArgs.push_back("--32");
 break;
@@ -47,7 +49,7 @@
 StringRef MArch, MCPU;
 arm::getARMArchCPUFromArgs(Args, MArch, MCPU, /*FromAs*/ true);
 std::string Arch =
-arm::getARMTargetCPU(MCPU, MArch, getToolChain().getTriple());
+arm::getARMTargetCPU(MCPU, MArch, ToolChain.getTriple());
 CmdArgs.push_back(Args.MakeArgString("-mcpu=" + Arch));
 break;
   }
@@ -58,7 +60,7 @@
   case llvm::Triple::mips64el: {
 StringRef CPUName;
 StringRef ABIName;
-mips::getMipsCPUAndABI(Args, getToolChain().getTriple(), CPUName, ABIName);
+mips::getMipsCPUAndABI(Args, ToolChain.getTriple(), CPUName, ABIName);
 
 CmdArgs.push_back("-march");
 CmdArgs.push_back(CPUName.data());
@@ -66,31 +68,31 @@
 CmdArgs.push_back("-mabi");
 CmdArgs.push_back(mips::getGnuCompatibleMipsABIName(ABIName).data());
 
-if (getToolChain().getTriple().isLittleEndian())
+if (ToolChain.getTriple().isLittleEndian())
   CmdArgs.push_back("-EL");
 else
   CmdArgs.push_back("-EB");
 
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
   case llvm::Triple::sparc:
   case llvm::Triple::sparcel: {
 CmdArgs.push_back("-32");
-std::string CPU = getCPUName(D, Args, getToolChain().getTriple());
+std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
   case llvm::Triple::sparcv9: {
 CmdArgs.push_back("-64");
-std::string CPU = getCPUName(D, Args, getToolChain().getTriple());
+std::string CPU = getCPUName(D, Args, ToolChain.getTriple());
 CmdArgs.push_back(
-sparc::getSparcAsmModeForCPU(CPU, getToolChain().getTriple()));
-AddAssemblerKPIC(getToolChain(), Args, CmdArgs);
+sparc::getSparcAsmModeForCPU(CPU, ToolChain.getTriple()));
+AddAssemblerKPIC(ToolChain, Args, CmdArgs);
 break;
   }
 
@@ -106,7 +108,7 @@
   for (const auto &II : Inputs)
 CmdArgs.push_back(II.getFilename());
 
-  const char *Exec = Args.MakeArgString((getToolChain().GetProgramPath("as")));
+  const char *Exec = Args.MakeArgString((ToolChain.GetProgramPath("as")));
   C.addCommand(std::make_unique(JA, *this,
  ResponseFileSupport::AtFileCurCP(),
  Exec, CmdArgs, Inputs, Output));
@@ -258,9 +260,9 @@
   Args.AddAllArgs(CmdArgs, options::OPT_Z_Flag);
   Args.AddAllArgs(CmdArgs, options::OPT_r);
 
-  bool NeedsSanitizerDeps = addSanitizerRuntimes(getToolChain(), Args, CmdArgs);
+  bool NeedsSanitizerDeps = addSanitizerRuntimes(ToolChain, Args, CmdArgs);
   bool NeedsXRayDeps = addXRayRuntime(ToolChain, Args, CmdArgs);
-  AddLinkerInputs(getToolChain(), Inputs, Args, CmdArgs, JA);
+  AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs, JA);
 
   const SanitizerArgs &SanArgs = ToolChain.getSanitizerArgs();
   if (SanArgs.needsSharedRt()) {
@@ -297,7 +299,7 @@
 // Use the static OpenMP runtime with -static-openmp
 bool StaticOpenMP = Args.hasArg(options::OPT_static_openmp) &&
 !Args.hasArg(options::OPT_static);
-addOpenMPRuntime(CmdArgs, getToolChain(), Args, StaticOpenMP);
+addOpenMPRuntime(CmdArgs, ToolChain, Args, StaticOpenMP);
 
 if (D.CCCIsCXX()) {
   if (ToolChain.ShouldLinkCXXStdlib(Args))
@@ -305,7 +307,7 @@
   CmdArgs.push_back("-lm");
 }
 if (NeedsSanitizerDeps)
-  linkSanitizerRuntimeDeps(getToolChain(), CmdArgs);
+  linkSanitizerR

[PATCH] D111340: [Driver][NetBSD] Use ToolChain reference instead of getToolChain().

2021-10-07 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: krytarowski, mgorny.
fcambus requested review of this revision.
Herald added a reviewer: jdoerfert.
Herald added subscribers: cfe-commits, sstefan1.
Herald added a project: clang.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111340

Files:
  clang/lib/Driver/ToolChains/NetBSD.cpp


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -258,9 +258,9 @@
   Args.AddAllArgs(CmdArgs, options::OPT_Z_Flag);
   Args.AddAllArgs(CmdArgs, options::OPT_r);
 
-  bool NeedsSanitizerDeps = addSanitizerRuntimes(getToolChain(), Args, 
CmdArgs);
+  bool NeedsSanitizerDeps = addSanitizerRuntimes(ToolChain, Args, CmdArgs);
   bool NeedsXRayDeps = addXRayRuntime(ToolChain, Args, CmdArgs);
-  AddLinkerInputs(getToolChain(), Inputs, Args, CmdArgs, JA);
+  AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs, JA);
 
   const SanitizerArgs &SanArgs = ToolChain.getSanitizerArgs();
   if (SanArgs.needsSharedRt()) {
@@ -297,7 +297,7 @@
 // Use the static OpenMP runtime with -static-openmp
 bool StaticOpenMP = Args.hasArg(options::OPT_static_openmp) &&
 !Args.hasArg(options::OPT_static);
-addOpenMPRuntime(CmdArgs, getToolChain(), Args, StaticOpenMP);
+addOpenMPRuntime(CmdArgs, ToolChain, Args, StaticOpenMP);
 
 if (D.CCCIsCXX()) {
   if (ToolChain.ShouldLinkCXXStdlib(Args))
@@ -305,7 +305,7 @@
   CmdArgs.push_back("-lm");
 }
 if (NeedsSanitizerDeps)
-  linkSanitizerRuntimeDeps(getToolChain(), CmdArgs);
+  linkSanitizerRuntimeDeps(ToolChain, CmdArgs);
 if (NeedsXRayDeps)
   linkXRayRuntimeDeps(ToolChain, CmdArgs);
 if (Args.hasArg(options::OPT_pthread))


Index: clang/lib/Driver/ToolChains/NetBSD.cpp
===
--- clang/lib/Driver/ToolChains/NetBSD.cpp
+++ clang/lib/Driver/ToolChains/NetBSD.cpp
@@ -258,9 +258,9 @@
   Args.AddAllArgs(CmdArgs, options::OPT_Z_Flag);
   Args.AddAllArgs(CmdArgs, options::OPT_r);
 
-  bool NeedsSanitizerDeps = addSanitizerRuntimes(getToolChain(), Args, CmdArgs);
+  bool NeedsSanitizerDeps = addSanitizerRuntimes(ToolChain, Args, CmdArgs);
   bool NeedsXRayDeps = addXRayRuntime(ToolChain, Args, CmdArgs);
-  AddLinkerInputs(getToolChain(), Inputs, Args, CmdArgs, JA);
+  AddLinkerInputs(ToolChain, Inputs, Args, CmdArgs, JA);
 
   const SanitizerArgs &SanArgs = ToolChain.getSanitizerArgs();
   if (SanArgs.needsSharedRt()) {
@@ -297,7 +297,7 @@
 // Use the static OpenMP runtime with -static-openmp
 bool StaticOpenMP = Args.hasArg(options::OPT_static_openmp) &&
 !Args.hasArg(options::OPT_static);
-addOpenMPRuntime(CmdArgs, getToolChain(), Args, StaticOpenMP);
+addOpenMPRuntime(CmdArgs, ToolChain, Args, StaticOpenMP);
 
 if (D.CCCIsCXX()) {
   if (ToolChain.ShouldLinkCXXStdlib(Args))
@@ -305,7 +305,7 @@
   CmdArgs.push_back("-lm");
 }
 if (NeedsSanitizerDeps)
-  linkSanitizerRuntimeDeps(getToolChain(), CmdArgs);
+  linkSanitizerRuntimeDeps(ToolChain, CmdArgs);
 if (NeedsXRayDeps)
   linkXRayRuntimeDeps(ToolChain, CmdArgs);
 if (Args.hasArg(options::OPT_pthread))
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D110836: [CMake] Fix typo in error message for LLD in bootstrap builds.

2021-09-30 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

@xgupta


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D110836/new/

https://reviews.llvm.org/D110836

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


[PATCH] D110836: [CMake] Fix typo in error message for LLD in bootstrap builds.

2021-09-30 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: xgupta.
Herald added a subscriber: mgorny.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110836

Files:
  clang/CMakeLists.txt


Index: clang/CMakeLists.txt
===
--- clang/CMakeLists.txt
+++ clang/CMakeLists.txt
@@ -639,7 +639,7 @@
 # adding lld to clang-bootstrap-deps without having it enabled in
 # LLVM_ENABLE_PROJECTS just generates a cryptic error message.
 if (NOT "lld" IN_LIST LLVM_ENABLE_PROJECTS)
-  message(FATAL_ERROR "LLD is enabled in the boostrap build, but lld is 
not in LLVM_ENABLE_PROJECTS")
+  message(FATAL_ERROR "LLD is enabled in the bootstrap build, but lld is 
not in LLVM_ENABLE_PROJECTS")
 endif()
 add_dependencies(clang-bootstrap-deps lld)
   endif()


Index: clang/CMakeLists.txt
===
--- clang/CMakeLists.txt
+++ clang/CMakeLists.txt
@@ -639,7 +639,7 @@
 # adding lld to clang-bootstrap-deps without having it enabled in
 # LLVM_ENABLE_PROJECTS just generates a cryptic error message.
 if (NOT "lld" IN_LIST LLVM_ENABLE_PROJECTS)
-  message(FATAL_ERROR "LLD is enabled in the boostrap build, but lld is not in LLVM_ENABLE_PROJECTS")
+  message(FATAL_ERROR "LLD is enabled in the bootstrap build, but lld is not in LLVM_ENABLE_PROJECTS")
 endif()
 add_dependencies(clang-bootstrap-deps lld)
   endif()
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D110763: [clang] Update Clang version from 13 to 14 in scan-build.1.

2021-09-29 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: xgupta.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110763

Files:
  clang/tools/scan-build/man/scan-build.1


Index: clang/tools/scan-build/man/scan-build.1
===
--- clang/tools/scan-build/man/scan-build.1
+++ clang/tools/scan-build/man/scan-build.1
@@ -2,9 +2,9 @@
 .\" See https://llvm.org/LICENSE.txt for license information.
 .\" SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 .\" $Id$
-.Dd Jul 27, 2021
+.Dd Sep 29, 2021
 .Dt SCAN-BUILD 1
-.Os "clang" "13"
+.Os "clang" "14"
 .Sh NAME
 .Nm scan-build
 .Nd Clang static analyzer


Index: clang/tools/scan-build/man/scan-build.1
===
--- clang/tools/scan-build/man/scan-build.1
+++ clang/tools/scan-build/man/scan-build.1
@@ -2,9 +2,9 @@
 .\" See https://llvm.org/LICENSE.txt for license information.
 .\" SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 .\" $Id$
-.Dd Jul 27, 2021
+.Dd Sep 29, 2021
 .Dt SCAN-BUILD 1
-.Os "clang" "13"
+.Os "clang" "14"
 .Sh NAME
 .Nm scan-build
 .Nd Clang static analyzer
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D110750: [clang] Fix sentence in the usage section of ThinLTO docs.

2021-09-29 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: tejohnson, xgupta.
Herald added subscribers: ormris, steven_wu, hiraditya, inglorion.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110750

Files:
  clang/docs/ThinLTO.rst


Index: clang/docs/ThinLTO.rst
===
--- clang/docs/ThinLTO.rst
+++ clang/docs/ThinLTO.rst
@@ -87,7 +87,7 @@
 
 As mentioned earlier, by default the linkers will launch the ThinLTO backend
 threads in parallel, passing the resulting native object files back to the
-linker for the final native link.  As such, the usage model the same as
+linker for the final native link.  As such, the usage model is the same as
 non-LTO.
 
 With gold, if you see an error during the link of the form:


Index: clang/docs/ThinLTO.rst
===
--- clang/docs/ThinLTO.rst
+++ clang/docs/ThinLTO.rst
@@ -87,7 +87,7 @@
 
 As mentioned earlier, by default the linkers will launch the ThinLTO backend
 threads in parallel, passing the resulting native object files back to the
-linker for the final native link.  As such, the usage model the same as
+linker for the final native link.  As such, the usage model is the same as
 non-LTO.
 
 With gold, if you see an error during the link of the form:
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D110715: [clang] Fix library name (libsupc++) in the admonition note.

2021-09-29 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added reviewers: rsmith, xgupta.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110715

Files:
  clang/docs/Toolchain.rst


Index: clang/docs/Toolchain.rst
===
--- clang/docs/Toolchain.rst
+++ clang/docs/Toolchain.rst
@@ -312,7 +312,7 @@
 
 .. note::
 
-  Clang does not currently automatically link against libatomic when statically
+  Clang does not currently automatically link against libsupc++ when statically
   linking libstdc++. You may need to manually add ``-lsupc++`` to support this
   configuration when using ``-static`` or ``-static-libstdc++``.
 


Index: clang/docs/Toolchain.rst
===
--- clang/docs/Toolchain.rst
+++ clang/docs/Toolchain.rst
@@ -312,7 +312,7 @@
 
 .. note::
 
-  Clang does not currently automatically link against libatomic when statically
+  Clang does not currently automatically link against libsupc++ when statically
   linking libstdc++. You may need to manually add ``-lsupc++`` to support this
   configuration when using ``-static`` or ``-static-libstdc++``.
 
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D110041: [clang] Use portable "#!/usr/bin/env bash" shebang for tools and utils.

2021-09-24 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus added a comment.

> I can push this for you @fcambus.

Thanks for committing this. I also have a similar diff for compiler-rt, in 
D110039 .


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D110041/new/

https://reviews.llvm.org/D110041

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


[PATCH] D110041: [clang] Use portable "#!/usr/bin/env bash" shebang for tools and utils.

2021-09-19 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: JDevlieghere.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110041

Files:
  clang/tools/diag-build/diag-build.sh
  clang/utils/make-ast-dump-check.sh


Index: clang/utils/make-ast-dump-check.sh
===
--- clang/utils/make-ast-dump-check.sh
+++ clang/utils/make-ast-dump-check.sh
@@ -1,4 +1,4 @@
-#! /bin/bash
+#!/usr/bin/env bash
 
 # This script is intended as a FileCheck replacement to update the test
 # expectations in a -ast-dump test.
Index: clang/tools/diag-build/diag-build.sh
===
--- clang/tools/diag-build/diag-build.sh
+++ clang/tools/diag-build/diag-build.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # diag-build: a tool showing enabled warnings in a project.
 #


Index: clang/utils/make-ast-dump-check.sh
===
--- clang/utils/make-ast-dump-check.sh
+++ clang/utils/make-ast-dump-check.sh
@@ -1,4 +1,4 @@
-#! /bin/bash
+#!/usr/bin/env bash
 
 # This script is intended as a FileCheck replacement to update the test
 # expectations in a -ast-dump test.
Index: clang/tools/diag-build/diag-build.sh
===
--- clang/tools/diag-build/diag-build.sh
+++ clang/tools/diag-build/diag-build.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # diag-build: a tool showing enabled warnings in a project.
 #
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D109349: [clang][scan-build] Use cc/c++ instead of gcc/g++ on OpenBSD.

2021-09-07 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: brad.
Herald added a subscriber: krytarowski.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

The default was gcc/g++ for all platforms other than Darwin, but most OpenBSD 
platforms do not have GCC in base anymore.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D109349

Files:
  clang/tools/scan-build/libexec/ccc-analyzer


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -80,6 +80,9 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
+} elsif (`uname -a` =~ m/OpenBSD/) {
+  $DefaultCCompiler = 'cc';
+  $DefaultCXXCompiler = 'c++';
 } else {
   $DefaultCCompiler = 'gcc';
   $DefaultCXXCompiler = 'g++';


Index: clang/tools/scan-build/libexec/ccc-analyzer
===
--- clang/tools/scan-build/libexec/ccc-analyzer
+++ clang/tools/scan-build/libexec/ccc-analyzer
@@ -80,6 +80,9 @@
   if (-x "/usr/bin/xcrun") {
 $UseXCRUN = 1;
   }
+} elsif (`uname -a` =~ m/OpenBSD/) {
+  $DefaultCCompiler = 'cc';
+  $DefaultCXXCompiler = 'c++';
 } else {
   $DefaultCCompiler = 'gcc';
   $DefaultCXXCompiler = 'g++';
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D109244: [clang] Allow the OpenBSD driver to link the libclang_rt.profile library.

2021-09-03 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: brad.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

With this change, passing -fprofile-instr-generate -fcoverage-mapping
when building programs will attempt linking against libclang_rt.profile.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D109244

Files:
  clang/lib/Driver/ToolChains/OpenBSD.cpp


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -223,6 +223,8 @@
 CmdArgs.push_back(Args.MakeArgString(ToolChain.GetFilePath(crtend)));
   }
 
+  ToolChain.addProfileRTLibs(Args, CmdArgs);
+
   const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
   C.addCommand(std::make_unique(JA, *this,
  ResponseFileSupport::AtFileCurCP(),


Index: clang/lib/Driver/ToolChains/OpenBSD.cpp
===
--- clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -223,6 +223,8 @@
 CmdArgs.push_back(Args.MakeArgString(ToolChain.GetFilePath(crtend)));
   }
 
+  ToolChain.addProfileRTLibs(Args, CmdArgs);
+
   const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
   C.addCommand(std::make_unique(JA, *this,
  ResponseFileSupport::AtFileCurCP(),
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D106867: [scan-build] Fix a typo in the manual page: s/contraint/constraint.

2021-07-27 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
fcambus added a reviewer: mgorny.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Fix a typo in the scan-build manual page: s/contraint/constraint.

  

While there, update hardcoded Clang version from 3.5 to 13.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D106867

Files:
  clang/tools/scan-build/man/scan-build.1


Index: clang/tools/scan-build/man/scan-build.1
===
--- clang/tools/scan-build/man/scan-build.1
+++ clang/tools/scan-build/man/scan-build.1
@@ -2,9 +2,9 @@
 .\" See https://llvm.org/LICENSE.txt for license information.
 .\" SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 .\" $Id$
-.Dd May 25, 2012
+.Dd Jul 27, 2021
 .Dt SCAN-BUILD 1
-.Os "clang" "3.5"
+.Os "clang" "13"
 .Sh NAME
 .Nm scan-build
 .Nd Clang static analyzer
@@ -110,7 +110,7 @@
 .It Fl V , Fl Fl view
 View analysis results in a web browser when the build completes.
 .It Fl constraints Op Ar model
-Specify the contraint engine used by the analyzer.  By default the
+Specify the constraint engine used by the analyzer.  By default the
 .Ql range
 model is used.  Specifying
 .Ql basic


Index: clang/tools/scan-build/man/scan-build.1
===
--- clang/tools/scan-build/man/scan-build.1
+++ clang/tools/scan-build/man/scan-build.1
@@ -2,9 +2,9 @@
 .\" See https://llvm.org/LICENSE.txt for license information.
 .\" SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 .\" $Id$
-.Dd May 25, 2012
+.Dd Jul 27, 2021
 .Dt SCAN-BUILD 1
-.Os "clang" "3.5"
+.Os "clang" "13"
 .Sh NAME
 .Nm scan-build
 .Nd Clang static analyzer
@@ -110,7 +110,7 @@
 .It Fl V , Fl Fl view
 View analysis results in a web browser when the build completes.
 .It Fl constraints Op Ar model
-Specify the contraint engine used by the analyzer.  By default the
+Specify the constraint engine used by the analyzer.  By default the
 .Ql range
 model is used.  Specifying
 .Ql basic
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D106664: [clang][docs] Fix typos in Options.td and regen ClangCommandLineReference.rst.

2021-07-23 Thread Frederic Cambus via Phabricator via cfe-commits
fcambus created this revision.
Herald added a subscriber: dang.
fcambus requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Fix a couple of typos in Options.td and regenerate 
ClangCommandLineReference.rst.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D106664

Files:
  clang/docs/ClangCommandLineReference.rst
  clang/include/clang/Driver/Options.td


Index: clang/include/clang/Driver/Options.td
===
--- clang/include/clang/Driver/Options.td
+++ clang/include/clang/Driver/Options.td
@@ -1004,7 +1004,7 @@
"offloading languages CUDA and HIP: 'hash' (ID's generated by 
hashing "
"file path and command line options) | 'random' (ID's generated as "
"random numbers) | 'none' (disabled). Default is 'hash'. This 
option "
-   "will be overriden by option '-cuid=[ID]' if it is specified." >;
+   "will be overridden by option '-cuid=[ID]' if it is specified." >;
 def libomptarget_amdgcn_bc_path_EQ : Joined<["--"], 
"libomptarget-amdgcn-bc-path=">, Group,
   HelpText<"Path to libomptarget-amdgcn bitcode library">;
 def libomptarget_nvptx_bc_path_EQ : Joined<["--"], 
"libomptarget-nvptx-bc-path=">, Group,
@@ -2678,10 +2678,10 @@
 def dA : Flag<["-"], "dA">, Alias;
 defm visibility_from_dllstorageclass : 
BoolFOption<"visibility-from-dllstorageclass",
   LangOpts<"VisibilityFromDLLStorageClass">, DefaultFalse,
-  PosFlag,
+  PosFlag,
   NegFlag>;
 def fvisibility_dllexport_EQ : Joined<["-"], "fvisibility-dllexport=">, 
Group, Flags<[CC1Option]>,
-  HelpText<"The visibility for dllexport defintions 
[-fvisibility-from-dllstorageclass]">,
+  HelpText<"The visibility for dllexport definitions 
[-fvisibility-from-dllstorageclass]">,
   MarshallingInfoVisibility, 
"DefaultVisibility">,
   ShouldParseIf;
 def fvisibility_nodllstorageclass_EQ : Joined<["-"], 
"fvisibility-nodllstorageclass=">, Group, Flags<[CC1Option]>,
Index: clang/docs/ClangCommandLineReference.rst
===
--- clang/docs/ClangCommandLineReference.rst
+++ clang/docs/ClangCommandLineReference.rst
@@ -263,7 +263,7 @@
 
 .. option:: -fuse-cuid=
 
-Method to generate ID's for compilation units for single source offloading 
languages CUDA and HIP: 'hash' (ID's generated by hashing file path and command 
line options) \| 'random' (ID's generated as random numbers) \| 'none' 
(disabled). Default is 'hash'. This option will be overriden by option 
'-cuid=\[ID\]' if it is specified.
+Method to generate ID's for compilation units for single source offloading 
languages CUDA and HIP: 'hash' (ID's generated by hashing file path and command 
line options) \| 'random' (ID's generated as random numbers) \| 'none' 
(disabled). Default is 'hash'. This option will be overridden by option 
'-cuid=\[ID\]' if it is specified.
 
 .. option:: --gcc-toolchain=, -gcc-toolchain 
 
@@ -2497,7 +2497,7 @@
 
 .. option:: -fvisibility-dllexport=
 
-The visibility for dllexport defintions \[-fvisibility-from-dllstorageclass\]
+The visibility for dllexport definitions \[-fvisibility-from-dllstorageclass\]
 
 .. option:: -fvisibility-externs-dllimport=
 
@@ -2509,7 +2509,7 @@
 
 .. option:: -fvisibility-from-dllstorageclass, 
-fno-visibility-from-dllstorageclass
 
-Set the visiblity of symbols in the generated code from their DLL storage class
+Set the visibility of symbols in the generated code from their DLL storage 
class
 
 .. option:: -fvisibility-global-new-delete-hidden
 


Index: clang/include/clang/Driver/Options.td
===
--- clang/include/clang/Driver/Options.td
+++ clang/include/clang/Driver/Options.td
@@ -1004,7 +1004,7 @@
"offloading languages CUDA and HIP: 'hash' (ID's generated by hashing "
"file path and command line options) | 'random' (ID's generated as "
"random numbers) | 'none' (disabled). Default is 'hash'. This option "
-   "will be overriden by option '-cuid=[ID]' if it is specified." >;
+   "will be overridden by option '-cuid=[ID]' if it is specified." >;
 def libomptarget_amdgcn_bc_path_EQ : Joined<["--"], "libomptarget-amdgcn-bc-path=">, Group,
   HelpText<"Path to libomptarget-amdgcn bitcode library">;
 def libomptarget_nvptx_bc_path_EQ : Joined<["--"], "libomptarget-nvptx-bc-path=">, Group,
@@ -2678,10 +2678,10 @@
 def dA : Flag<["-"], "dA">, Alias;
 defm visibility_from_dllstorageclass : BoolFOption<"visibility-from-dllstorageclass",
   LangOpts<"VisibilityFromDLLStorageClass">, DefaultFalse,
-  PosFlag,
+  PosFlag,
   NegFlag>;
 def fvisibility_dllexport_EQ : Joined<["-"], "fvisibility-dllexport=">, Group, Flags<[CC1Option]>,
-  HelpText<"The visibility for dllexport defintions [-fvisibility-from-dllstorageclass]">,
+  HelpText<"The visibility for dllexport definitions [-fvisibility-from-dllstorageclass