1 // This test uses '<prefix>-SAME: {{^}}' to start matching immediately where the 2 // previous check finished matching (specifically, caret is not treated as 3 // matching a start of line when used like this in FileCheck). 4 5 // RUN: not %clang_cc1 -triple riscv32 -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix RISCV32 6 // RISCV32: error: unknown target CPU 'not-a-cpu' 7 // RISCV32-NEXT: note: valid target CPU values are: 8 // RISCV32-SAME: {{^}} generic-rv32 9 // RISCV32-SAME: {{^}}, rocket-rv32 10 // RISCV32-SAME: {{^}}, rp2350-hazard3 11 // RISCV32-SAME: {{^}}, sifive-e20 12 // RISCV32-SAME: {{^}}, sifive-e21 13 // RISCV32-SAME: {{^}}, sifive-e24 14 // RISCV32-SAME: {{^}}, sifive-e31 15 // RISCV32-SAME: {{^}}, sifive-e34 16 // RISCV32-SAME: {{^}}, sifive-e76 17 // RISCV32-SAME: {{^}}, syntacore-scr1-base 18 // RISCV32-SAME: {{^}}, syntacore-scr1-max 19 // RISCV32-SAME: {{^}}, syntacore-scr3-rv32 20 // RISCV32-SAME: {{^}}, syntacore-scr4-rv32 21 // RISCV32-SAME: {{^}}, syntacore-scr5-rv32 22 // RISCV32-SAME: {{$}} 23 24 // RUN: not %clang_cc1 -triple riscv64 -target-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix RISCV64 25 // RISCV64: error: unknown target CPU 'not-a-cpu' 26 // RISCV64-NEXT: note: valid target CPU values are: 27 // RISCV64-SAME: {{^}} generic-rv64 28 // RISCV64-SAME: {{^}}, mips-p8700 29 // RISCV64-SAME: {{^}}, rocket-rv64 30 // RISCV64-SAME: {{^}}, sifive-p450 31 // RISCV64-SAME: {{^}}, sifive-p470 32 // RISCV64-SAME: {{^}}, sifive-p550 33 // RISCV64-SAME: {{^}}, sifive-p670 34 // RISCV64-SAME: {{^}}, sifive-s21 35 // RISCV64-SAME: {{^}}, sifive-s51 36 // RISCV64-SAME: {{^}}, sifive-s54 37 // RISCV64-SAME: {{^}}, sifive-s76 38 // RISCV64-SAME: {{^}}, sifive-u54 39 // RISCV64-SAME: {{^}}, sifive-u74 40 // RISCV64-SAME: {{^}}, sifive-x280 41 // RISCV64-SAME: {{^}}, spacemit-x60 42 // RISCV64-SAME: {{^}}, syntacore-scr3-rv64 43 // RISCV64-SAME: {{^}}, syntacore-scr4-rv64 44 // RISCV64-SAME: {{^}}, syntacore-scr5-rv64 45 // RISCV64-SAME: {{^}}, syntacore-scr7 46 // RISCV64-SAME: {{^}}, tt-ascalon-d8 47 // RISCV64-SAME: {{^}}, veyron-v1 48 // RISCV64-SAME: {{^}}, xiangshan-nanhu 49 // RISCV64-SAME: {{$}} 50 51 // RUN: not %clang_cc1 -triple riscv32 -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix TUNE-RISCV32 52 // TUNE-RISCV32: error: unknown target CPU 'not-a-cpu' 53 // TUNE-RISCV32-NEXT: note: valid target CPU values are: 54 // TUNE-RISCV32-SAME: {{^}} generic-rv32 55 // TUNE-RISCV32-SAME: {{^}}, rocket-rv32 56 // TUNE-RISCV32-SAME: {{^}}, rp2350-hazard3 57 // TUNE-RISCV32-SAME: {{^}}, sifive-e20 58 // TUNE-RISCV32-SAME: {{^}}, sifive-e21 59 // TUNE-RISCV32-SAME: {{^}}, sifive-e24 60 // TUNE-RISCV32-SAME: {{^}}, sifive-e31 61 // TUNE-RISCV32-SAME: {{^}}, sifive-e34 62 // TUNE-RISCV32-SAME: {{^}}, sifive-e76 63 // TUNE-RISCV32-SAME: {{^}}, syntacore-scr1-base 64 // TUNE-RISCV32-SAME: {{^}}, syntacore-scr1-max 65 // TUNE-RISCV32-SAME: {{^}}, syntacore-scr3-rv32 66 // TUNE-RISCV32-SAME: {{^}}, syntacore-scr4-rv32 67 // TUNE-RISCV32-SAME: {{^}}, syntacore-scr5-rv32 68 // TUNE-RISCV32-SAME: {{^}}, generic 69 // TUNE-RISCV32-SAME: {{^}}, rocket 70 // TUNE-RISCV32-SAME: {{^}}, sifive-7-series 71 // TUNE-RISCV32-SAME: {{$}} 72 73 // RUN: not %clang_cc1 -triple riscv64 -tune-cpu not-a-cpu -fsyntax-only %s 2>&1 | FileCheck %s --check-prefix TUNE-RISCV64 74 // TUNE-RISCV64: error: unknown target CPU 'not-a-cpu' 75 // TUNE-RISCV64-NEXT: note: valid target CPU values are: 76 // TUNE-RISCV64-SAME: {{^}} generic-rv64 77 // TUNE-RISCV64-SAME: {{^}}, mips-p8700 78 // TUNE-RISCV64-SAME: {{^}}, rocket-rv64 79 // TUNE-RISCV64-SAME: {{^}}, sifive-p450 80 // TUNE-RISCV64-SAME: {{^}}, sifive-p470 81 // TUNE-RISCV64-SAME: {{^}}, sifive-p550 82 // TUNE-RISCV64-SAME: {{^}}, sifive-p670 83 // TUNE-RISCV64-SAME: {{^}}, sifive-s21 84 // TUNE-RISCV64-SAME: {{^}}, sifive-s51 85 // TUNE-RISCV64-SAME: {{^}}, sifive-s54 86 // TUNE-RISCV64-SAME: {{^}}, sifive-s76 87 // TUNE-RISCV64-SAME: {{^}}, sifive-u54 88 // TUNE-RISCV64-SAME: {{^}}, sifive-u74 89 // TUNE-RISCV64-SAME: {{^}}, sifive-x280 90 // TUNE-RISCV64-SAME: {{^}}, spacemit-x60 91 // TUNE-RISCV64-SAME: {{^}}, syntacore-scr3-rv64 92 // TUNE-RISCV64-SAME: {{^}}, syntacore-scr4-rv64 93 // TUNE-RISCV64-SAME: {{^}}, syntacore-scr5-rv64 94 // TUNE-RISCV64-SAME: {{^}}, syntacore-scr7 95 // TUNE-RISCV64-SAME: {{^}}, tt-ascalon-d8 96 // TUNE-RISCV64-SAME: {{^}}, veyron-v1 97 // TUNE-RISCV64-SAME: {{^}}, xiangshan-nanhu 98 // TUNE-RISCV64-SAME: {{^}}, generic 99 // TUNE-RISCV64-SAME: {{^}}, rocket 100 // TUNE-RISCV64-SAME: {{^}}, sifive-7-series 101 // TUNE-RISCV64-SAME: {{$}} 102