Skip to content

Commit 7b22210

Browse files
committed
[Toolchain][Espressif] Use custom prefixes for 'as' and 'ld'
1 parent e6e27d9 commit 7b22210

10 files changed

+22
-22
lines changed

clang/lib/Driver/ToolChains/EspBareMetal.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ class LLVM_LIBRARY_VISIBILITY Linker : public Tool {
7575
class LLVM_LIBRARY_VISIBILITY Assembler : public Tool {
7676
public:
7777
Assembler(const ToolChain &TC)
78-
: Tool("baremetal::esp::Assembler", "as", TC) {}
78+
: Tool("baremetal::esp::Assembler", "clang-as", TC) {}
7979

8080
bool hasIntegratedCPP() const override { return false; }
8181
void ConstructJob(Compilation &C, const JobAction &JA,

clang/test/Driver/baremetal-esp.cpp

+21-21
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
// RUN: mkdir -p %t/basic_riscv32_esp_tree/bin
99
// RUN: ln -s %clang %t/basic_riscv32_esp_tree/bin/clang
1010
// RUN: ln -s %S/Inputs/basic_riscv32_esp_tree/bin/ld.lld %t/basic_riscv32_esp_tree/bin/ld.lld
11-
// RUN: ln -s %S/Inputs/basic_riscv32_esp_tree/bin/riscv32-esp-elf-as %t/basic_riscv32_esp_tree/bin/riscv32-esp-elf-as
12-
// RUN: ln -s %S/Inputs/basic_riscv32_esp_tree/bin/riscv32-esp-elf-ld %t/basic_riscv32_esp_tree/bin/riscv32-esp-elf-ld
11+
// RUN: ln -s %S/Inputs/basic_riscv32_esp_tree/bin/riscv32-esp-elf-clang-as %t/basic_riscv32_esp_tree/bin/riscv32-esp-elf-clang-as
12+
// RUN: ln -s %S/Inputs/basic_riscv32_esp_tree/bin/riscv32-esp-elf-clang-ld %t/basic_riscv32_esp_tree/bin/riscv32-esp-elf-clang-ld
1313
// RUN: ln -s %S/Inputs/basic_riscv32_esp_tree/lib %t/basic_riscv32_esp_tree/lib
1414

1515
// RUN: %t/basic_riscv32_esp_tree/bin/clang %s -### 2>&1 --target=riscv32-esp-elf \
@@ -56,7 +56,7 @@
5656
// CHECK-ESP-RV32IMAC-FORCEAS-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{[/\\]+}}include"
5757
// CHECK-ESP-RV32IMAC-FORCEAS-SAME: "-internal-isystem" "[[SYSROOT]]{{[/\\]+}}riscv32-esp-unknown-elf{{[/\\]+}}rv32imac-zicsr-zifencei_ilp32{{[/\\]+}}include"
5858
// CHECK-ESP-RV32IMAC-FORCEAS-SAME: "-x" "c++" "{{.*}}baremetal-esp.cpp"
59-
// CHECK-ESP-RV32IMAC-FORCEAS-NEXT: riscv32-esp-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imac" "-mabi=ilp32"
59+
// CHECK-ESP-RV32IMAC-FORCEAS-NEXT: riscv32-esp-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imac" "-mabi=ilp32"
6060
// CHECK-ESP-RV32IMAC-FORCEAS-NEXT: ld.lld{{(.exe)?}}"
6161
// CHECK-ESP-RV32IMAC-FORCEAS-SAME: "--sysroot=[[SYSROOT]]"
6262
// CHECK-ESP-RV32IMAC-FORCEAS-SAME: "-m" "elf32lriscv"
@@ -67,12 +67,12 @@
6767
// CHECK-ESP-RV32IMAC-FORCEAS-SAME: "-lm" "--start-group" "-lc" "-lgloss" "-lnosys" "--end-group"
6868
// CHECK-ESP-RV32IMAC-FORCEAS-SAME: "-lclang_rt.builtins"
6969

70-
// RUN: %t/basic_riscv32_esp_tree/bin/clang %s -### 2>&1 --target=riscv32-esp-elf --ld-path=riscv32-esp-elf-ld \
70+
// RUN: %t/basic_riscv32_esp_tree/bin/clang %s -### 2>&1 --target=riscv32-esp-elf --ld-path=riscv32-esp-elf-clang-ld \
7171
// RUN: -L some/directory/user/asked/for \
7272
// RUN: --sysroot=%t/basic_riscv32_esp_tree/lib/clang-runtimes \
7373
// RUN: | FileCheck --check-prefix=CHECK-ESP-RV32IMAC-FORCELD %s
7474
// CHECK-ESP-RV32IMAC-FORCELD: "-isysroot" "[[SYSROOT:[^"]*]]"
75-
// CHECK-ESP-RV32IMAC-FORCELD: riscv32-esp-elf-ld{{(.exe)?}}"
75+
// CHECK-ESP-RV32IMAC-FORCELD: riscv32-esp-elf-clang-ld{{(.exe)?}}"
7676
// CHECK-ESP-RV32IMAC-FORCELD-SAME: "--sysroot=[[SYSROOT]]"
7777
// CHECK-ESP-RV32IMAC-FORCELD-SAME: "-m" "elf32lriscv"
7878
// CHECK-ESP-RV32IMAC-FORCELD-SAME: "-o" "a.out"
@@ -175,7 +175,7 @@
175175
// RUN: -march=rv32i -mabi=ilp32 \
176176
// RUN: --sysroot=%t/basic_riscv32_esp_tree/lib/clang-runtimes \
177177
// RUN: | FileCheck --check-prefix=CHECK-ESP-RV32I-FORCEAS %s
178-
// CHECK-ESP-RV32I-FORCEAS: riscv32-esp-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32i" "-mabi=ilp32"
178+
// CHECK-ESP-RV32I-FORCEAS: riscv32-esp-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32i" "-mabi=ilp32"
179179

180180
// RUN: %t/basic_riscv32_esp_tree/bin/clang %s -### 2>&1 --target=riscv32-esp-elf \
181181
// RUN: -march=rv32i -mabi=ilp32 \
@@ -229,19 +229,19 @@
229229
// RUN: -march=rv32im -mabi=ilp32 \
230230
// RUN: --sysroot=%t/basic_riscv32_esp_tree/lib/clang-runtimes \
231231
// RUN: | FileCheck --check-prefix=CHECK-ESP-RV32IM-FORCEAS %s
232-
// CHECK-ESP-RV32IM-FORCEAS: riscv32-esp-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32im" "-mabi=ilp32"
232+
// CHECK-ESP-RV32IM-FORCEAS: riscv32-esp-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32im" "-mabi=ilp32"
233233

234234
// RUN: %t/basic_riscv32_esp_tree/bin/clang %s -### 2>&1 --target=riscv32-esp-elf -fno-integrated-as \
235235
// RUN: -march=rv32imc -mabi=ilp32 \
236236
// RUN: --sysroot=%t/basic_riscv32_esp_tree/lib/clang-runtimes \
237237
// RUN: | FileCheck --check-prefix=CHECK-ESP-RV32IMC-FORCEAS %s
238-
// CHECK-ESP-RV32IMC-FORCEAS: riscv32-esp-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imc" "-mabi=ilp32"
238+
// CHECK-ESP-RV32IMC-FORCEAS: riscv32-esp-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imc" "-mabi=ilp32"
239239

240240
// RUN: %t/basic_riscv32_esp_tree/bin/clang %s -### 2>&1 --target=riscv32-esp-elf -fno-integrated-as \
241241
// RUN: -march=rv32imac -mabi=ilp32 \
242242
// RUN: --sysroot=%t/basic_riscv32_esp_tree/lib/clang-runtimes \
243243
// RUN: | FileCheck --check-prefix=CHECK-ESP-RV32IMAC-FORCEAS2 %s
244-
// CHECK-ESP-RV32IMAC-FORCEAS2: riscv32-esp-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imac" "-mabi=ilp32"
244+
// CHECK-ESP-RV32IMAC-FORCEAS2: riscv32-esp-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imac" "-mabi=ilp32"
245245

246246
// RUN: %t/basic_riscv32_esp_tree/bin/clang %s -### 2>&1 --target=riscv32-esp-elf -march=rv32imafc -mabi=ilp32f \
247247
// RUN: --sysroot=%t/basic_riscv32_esp_tree/lib/clang-runtimes \
@@ -280,7 +280,7 @@
280280
// RUN: -march=rv32imafc -mabi=ilp32f \
281281
// RUN: --sysroot=%t/basic_riscv32_esp_tree/lib/clang-runtimes \
282282
// RUN: | FileCheck --check-prefix=CHECK-ESP-RV32IMAFC-FORCEAS %s
283-
// CHECK-ESP-RV32IMAFC-FORCEAS: riscv32-esp-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imafc" "-mabi=ilp32f"
283+
// CHECK-ESP-RV32IMAFC-FORCEAS: riscv32-esp-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s" "-march=rv32imafc" "-mabi=ilp32f"
284284

285285
// Check that compiler-rt library without the arch filename suffix will
286286
// be used if present.
@@ -308,12 +308,12 @@
308308
// RUN: mkdir -p %t/basic_xtensa_esp_tree/bin
309309
// RUN: ln -s %clang %t/basic_xtensa_esp_tree/bin/clang
310310
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/ld.lld %t/basic_xtensa_esp_tree/bin/ld.lld
311-
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-as %t/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-as
312-
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-ld %t/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-ld
313-
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-as %t/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-as
314-
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-ld %t/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-ld
315-
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-as %t/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-as
316-
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-ld %t/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-ld
311+
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-clang-as %t/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-clang-as
312+
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-clang-ld %t/basic_xtensa_esp_tree/bin/xtensa-esp32-elf-clang-ld
313+
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-clang-as %t/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-clang-as
314+
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-clang-ld %t/basic_xtensa_esp_tree/bin/xtensa-esp32s2-elf-clang-ld
315+
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-clang-as %t/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-clang-as
316+
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-clang-ld %t/basic_xtensa_esp_tree/bin/xtensa-esp32s3-elf-clang-ld
317317
// RUN: ln -s %S/Inputs/basic_xtensa_esp_tree/lib %t/basic_xtensa_esp_tree/lib
318318

319319
// ESP32 is default
@@ -360,7 +360,7 @@
360360
// CHECK-ESP-ESP32-FORCEAS-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{[/\\]+}}include"
361361
// CHECK-ESP-ESP32-FORCEAS-SAME: "-internal-isystem" "[[SYSROOT]]{{[/\\]+}}xtensa-esp-unknown-elf{{[/\\]+}}esp32{{[/\\]+}}include"
362362
// CHECK-ESP-ESP32-FORCEAS-SAME: "-x" "c++" "{{.*}}baremetal-esp.cpp"
363-
// CHECK-ESP-ESP32-FORCEAS-NEXT: xtensa-esp32-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s"
363+
// CHECK-ESP-ESP32-FORCEAS-NEXT: xtensa-esp32-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s"
364364
// CHECK-ESP-ESP32-FORCEAS-NEXT: ld.lld{{(.exe)?}}"
365365
// CHECK-ESP-ESP32-FORCEAS-SAME: "--sysroot=[[SYSROOT]]"
366366
// CHECK-ESP-ESP32-FORCEAS-SAME: "-o" "a.out"
@@ -370,12 +370,12 @@
370370
// CHECK-ESP-ESP32-FORCEAS-SAME: "-lm" "--start-group" "-lc" "-lgloss" "-lnosys" "--end-group"
371371
// CHECK-ESP-ESP32-FORCEAS-SAME: "-lclang_rt.builtins"
372372

373-
// RUN: %t/basic_xtensa_esp_tree/bin/clang %s -### 2>&1 --target=xtensa-esp-elf --ld-path=xtensa-esp32-elf-ld \
373+
// RUN: %t/basic_xtensa_esp_tree/bin/clang %s -### 2>&1 --target=xtensa-esp-elf --ld-path=xtensa-esp32-elf-clang-ld \
374374
// RUN: -L some/directory/user/asked/for \
375375
// RUN: --sysroot=%t/basic_xtensa_esp_tree/lib/clang-runtimes \
376376
// RUN: | FileCheck --check-prefix=CHECK-ESP-ESP32-FORCELD %s
377377
// CHECK-ESP-ESP32-FORCELD: "-isysroot" "[[SYSROOT:[^"]*]]"
378-
// CHECK-ESP-ESP32-FORCELD-NEXT: xtensa-esp32-elf-ld{{(.exe)?}}"
378+
// CHECK-ESP-ESP32-FORCELD-NEXT: xtensa-esp32-elf-clang-ld{{(.exe)?}}"
379379
// CHECK-ESP-ESP32-FORCELD-SAME: "--sysroot=[[SYSROOT]]"
380380
// CHECK-ESP-ESP32-FORCELD-SAME: "-o" "a.out"
381381
// CHECK-ESP-ESP32-FORCELD-SAME: "-X" "{{.*}}.o"
@@ -527,7 +527,7 @@
527527
// CHECK-ESP-ESP32S2-FORCEAS-SAME: "-internal-isystem" "[[SYSROOT]]{{[/\\]+}}xtensa-esp-unknown-elf{{[/\\]+}}include{{[/\\]+}}c++{{[/\\]+}}11.2.0"
528528
// CHECK-ESP-ESP32S2-FORCEAS-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{[/\\]+}}include"
529529
// CHECK-ESP-ESP32S2-FORCEAS-SAME: "-internal-isystem" "[[SYSROOT]]{{[/\\]+}}xtensa-esp-unknown-elf{{[/\\]+}}esp32s2{{[/\\]+}}include"
530-
// CHECK-ESP-ESP32S2-FORCEAS: xtensa-esp32s2-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s"
530+
// CHECK-ESP-ESP32S2-FORCEAS: xtensa-esp32s2-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s"
531531
// CHECK-ESP-ESP32S2-FORCEAS-NEXT: ld.lld{{(.exe)?}}"
532532
// CHECK-ESP-ESP32S2-FORCEAS-SAME: "--sysroot=[[SYSROOT]]"
533533
// CHECK-ESP-ESP32S2-FORCEAS-SAME: "-L[[SYSROOT]]{{[/\\]+}}xtensa-esp-unknown-elf{{[/\\]+}}esp32s2{{[/\\]+}}lib"
@@ -573,7 +573,7 @@
573573
// CHECK-ESP-ESP32S3-FORCEAS-SAME: "-internal-isystem" "[[SYSROOT]]{{[/\\]+}}xtensa-esp-unknown-elf{{[/\\]+}}include{{[/\\]+}}c++{{[/\\]+}}11.2.0"
574574
// CHECK-ESP-ESP32S3-FORCEAS-SAME: "-internal-isystem" "[[RESOURCE_DIR]]{{[/\\]+}}include"
575575
// CHECK-ESP-ESP32S3-FORCEAS-SAME: "-internal-isystem" "[[SYSROOT]]{{[/\\]+}}xtensa-esp-unknown-elf{{[/\\]+}}esp32s3{{[/\\]+}}include"
576-
// CHECK-ESP-ESP32S3-FORCEAS: xtensa-esp32s3-elf-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s"
576+
// CHECK-ESP-ESP32S3-FORCEAS: xtensa-esp32s3-elf-clang-as{{(.exe)?}}" "-o" "{{.*}}.o" "-c" "{{.*}}.s"
577577
// CHECK-ESP-ESP32S3-FORCEAS-NEXT: ld.lld{{(.exe)?}}"
578578
// CHECK-ESP-ESP32S3-FORCEAS-SAME: "--sysroot=[[SYSROOT]]"
579579
// CHECK-ESP-ESP32S3-FORCEAS-SAME: "-L[[SYSROOT]]{{[/\\]+}}xtensa-esp-unknown-elf{{[/\\]+}}esp32s3{{[/\\]+}}lib"

0 commit comments

Comments
 (0)