[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR.

2022-12-22 Thread Ben Shi via Phabricator via cfe-commits
benshi001 added a comment.

In D139305#4013217 , @aykevl wrote:

> I think having `-mcpu` as an alias for `-mmcu` on AVR is fine, but I don't 
> think it's very useful to be honest. The `-mmcu` (or `-mcpu`) flag is 
> inherently specific to that particular chip anyway so compatibility is not an 
> issue. In fact, having two flags may even introduce noise and confusion.
> I wouldn't be opposed to it though if there is demand for it.
>
> In D139305#3987969 , @MaskRay wrote:
>
>> Does GCC prefer `-mcpu=` as well? If not, raise a PR there? This seems like 
>> a decision we should not unilaterally make on llvm-project side: it's 
>> certainly something GCC cares about as well.
>
> I guess, but avr-gcc is already barely maintained. Most people use an older 
> version (like 5.2.0) because the newer versions produce absolutely terrible 
> code. So I don't think it matters much.

I see. Thanks.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139305

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


[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR.

2022-12-22 Thread Ayke via Phabricator via cfe-commits
aykevl added a comment.

I think having `-mcpu` as an alias for `-mmcu` on AVR is fine, but I don't 
think it's very useful to be honest. The `-mmcu` (or `-mcpu`) flag is 
inherently specific to that particular chip anyway so compatibility is not an 
issue. In fact, having two flags may even introduce noise and confusion.

In D139305#3987969 , @MaskRay wrote:

> Does GCC prefer `-mcpu=` as well? If not, raise a PR there? This seems like a 
> decision we should not unilaterally make on llvm-project side: it's certainly 
> something GCC cares about as well.

I guess, but avr-gcc is already barely maintained. Most people use an older 
version (like 5.2.0) because the newer versions produce absolutely terrible 
code. So I don't think it matters much.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139305

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


[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR.

2022-12-12 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay added a comment.

> I think newr AVR projects should use clang common style options instead of 
> older avr-gcc style.

Does GCC prefer `-mcpu=` as well? If not, raise a PR there? This seems like a 
decision we should not unilaterally make on llvm-project side: it's certainly 
something GCC cares about as well.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139305

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


[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR.

2022-12-06 Thread Ben Shi via Phabricator via cfe-commits
benshi001 added a comment.

In D139305#3974946 , @MaskRay wrote:

> This makes `-mmcu=` available for non-AVR targets, which is not right.
> Even for AVR, if this is a plain alias, is this really necessary? Usually 
> having more than one aliases for one functionality just create confusion as 
> users don't know which one is the canonical.
> I think one choice is for AVR users to migrate `-mmcu=` (if any) to `-mcpu=`, 
> if there are a significant number of uses. Making a project buildable with 
> Clang usually requires porting efforts, and this request may not be 
> unreasonable.

I have changed to

1. Both '-mcpu' and '-mmcu' are supported for AVR, and '-mmcu' is not available 
to others;
2. '-mcpu' is superior to '-mmcu', and '-mcpu' is encouraged for newer clang 
built AVR projects;
3. A warning will emit if both are specified.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139305

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


[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR.

2022-12-06 Thread Ben Shi via Phabricator via cfe-commits
benshi001 updated this revision to Diff 480749.

Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139305

Files:
  clang/lib/Driver/ToolChains/CommonArgs.cpp
  clang/test/Driver/avr-mmcu.c


Index: clang/test/Driver/avr-mmcu.c
===
--- clang/test/Driver/avr-mmcu.c
+++ clang/test/Driver/avr-mmcu.c
@@ -1,13 +1,16 @@
 // A test for the propagation of the -mmcu option to -cc1 and -cc1as
 
+// RUN: %clang -### --target=avr -mcpu=attiny11 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK0 %s
 // RUN: %clang -### --target=avr -mmcu=attiny11 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK0 %s
 // CHECK0: "-cc1" {{.*}} "-target-cpu" "attiny11"
 // CHECK0: "-cc1as" {{.*}} "-target-cpu" "attiny11"
 
+// RUN: %clang -### --target=avr -mcpu=at90s2313 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK1 %s
 // RUN: %clang -### --target=avr -mmcu=at90s2313 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK1 %s
 // CHECK1: "-cc1" {{.*}} "-target-cpu" "at90s2313"
 // CHECK1: "-cc1as" {{.*}} "-target-cpu" "at90s2313"
 
+// RUN: %clang -### --target=avr -mcpu=at90s8515 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK2 %s
 // RUN: %clang -### --target=avr -mmcu=at90s8515 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK2 %s
 // CHECK2: "-cc1" {{.*}} "-target-cpu" "at90s8515"
 // CHECK2: "-cc1as" {{.*}} "-target-cpu" "at90s8515"
@@ -20,34 +23,18 @@
 // CHECK4: "-cc1" {{.*}} "-target-cpu" "attiny88"
 // CHECK4: "-cc1as" {{.*}} "-target-cpu" "attiny88"
 
-// RUN: %clang -### --target=avr -mmcu=attiny88 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK5 %s
-// CHECK5: "-cc1" {{.*}} "-target-cpu" "attiny88"
-// CHECK5: "-cc1as" {{.*}} "-target-cpu" "attiny88"
-
 // RUN: %clang -### --target=avr -mmcu=atmega8u2 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK6 %s
 // CHECK6: "-cc1" {{.*}} "-target-cpu" "atmega8u2"
 // CHECK6: "-cc1as" {{.*}} "-target-cpu" "atmega8u2"
 
-// RUN: %clang -### --target=avr -mmcu=atmega8u2 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK7 %s
-// CHECK7: "-cc1" {{.*}} "-target-cpu" "atmega8u2"
-// CHECK7: "-cc1as" {{.*}} "-target-cpu" "atmega8u2"
-
 // RUN: %clang -### --target=avr -mmcu=atmega8a -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK8 %s
 // CHECK8: "-cc1" {{.*}} "-target-cpu" "atmega8a"
 // CHECK8: "-cc1as" {{.*}} "-target-cpu" "atmega8a"
 
-// RUN: %clang -### --target=avr -mmcu=atmega8a -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK9 %s
-// CHECK9: "-cc1" {{.*}} "-target-cpu" "atmega8a"
-// CHECK9: "-cc1as" {{.*}} "-target-cpu" "atmega8a"
-
 // RUN: %clang -### --target=avr -mmcu=atmega16a -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKa %s
 // CHECKa: "-cc1" {{.*}} "-target-cpu" "atmega16a"
 // CHECKa: "-cc1as" {{.*}} "-target-cpu" "atmega16a"
 
-// RUN: %clang -### --target=avr -mmcu=atmega16a -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKb %s
-// CHECKb: "-cc1" {{.*}} "-target-cpu" "atmega16a"
-// CHECKb: "-cc1as" {{.*}} "-target-cpu" "atmega16a"
-
 // RUN: %clang -### --target=avr -mmcu=atmega128a -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKc %s
 // CHECKc: "-cc1" {{.*}} "-target-cpu" "atmega128a"
 // CHECKc: "-cc1as" {{.*}} "-target-cpu" "atmega128a"
@@ -72,10 +59,15 @@
 // CHECKh: "-cc1" {{.*}} "-target-cpu" "atxmega64a1u"
 // CHECKh: "-cc1as" {{.*}} "-target-cpu" "atxmega64a1u"
 
+// RUN: %clang -### --target=avr -mcpu=atxmega128a3u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKj %s
 // RUN: %clang -### --target=avr -mmcu=atxmega128a3u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKj %s
 // CHECKj: "-cc1" {{.*}} "-target-cpu" "atxmega128a3u"
 // CHECKj: "-cc1as" {{.*}} "-target-cpu" "atxmega128a3u"
 
+// RUN: %clang -### --target=avr -mcpu=atxmega128a4u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKi %s
 // RUN: %clang -### --target=avr -mmcu=atxmega128a4u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKi %s
 // CHECKi: "-cc1" {{.*}} "-target-cpu" "atxmega128a4u"
 // CHECKi: "-cc1as" {{.*}} "-target-cpu" "atxmega128a4u"
+
+// RUN: %clang --target=avr -mcpu=atmega328 -mmcu=atmega168 -c %s 2>&1 | 
FileCheck -check-prefix=CHECKz %s
+// CHECKz: warning: argument unused during compilation: '-mmcu=atmega168'
Index: clang/lib/Driver/ToolChains/CommonArgs.cpp
===
--- clang/lib/Driver/ToolChains/CommonArgs.cpp
+++ clang/lib/Driver/ToolChains/CommonArgs.cpp
@@ -382,6 +382,10 @@
   }
 
   case llvm::Triple::avr:
+// We encourage users to use '-mcpu' as their first choice,
+// rather than the old '-mmcu' (inherited from avr-gcc).
+if (const Arg *A = Args.getLastArg(options::OPT_mcpu_EQ))
+  return A->getValue();
 if (const Arg *A = Args.getLastArg(options::OPT_mmcu_EQ))
   return A->getValue();
 return "";


Index: clang/test/Driver/avr-mmcu.c

[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR.

2022-12-06 Thread Ben Shi via Phabricator via cfe-commits
benshi001 updated this revision to Diff 480748.
benshi001 retitled this revision from "[clang][driver] Make option '-mmcu' as 
an alias of option '-mcpu'" to "[clang][driver] Support option '-mcpu' on 
target AVR.".
benshi001 edited the summary of this revision.

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

https://reviews.llvm.org/D139305

Files:
  clang/lib/Driver/ToolChains/CommonArgs.cpp
  clang/test/Driver/avr-mmcu.c


Index: clang/test/Driver/avr-mmcu.c
===
--- clang/test/Driver/avr-mmcu.c
+++ clang/test/Driver/avr-mmcu.c
@@ -1,13 +1,16 @@
 // A test for the propagation of the -mmcu option to -cc1 and -cc1as
 
+// RUN: %clang -### --target=avr -mcpu=attiny11 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK0 %s
 // RUN: %clang -### --target=avr -mmcu=attiny11 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK0 %s
 // CHECK0: "-cc1" {{.*}} "-target-cpu" "attiny11"
 // CHECK0: "-cc1as" {{.*}} "-target-cpu" "attiny11"
 
+// RUN: %clang -### --target=avr -mcpu=at90s2313 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK1 %s
 // RUN: %clang -### --target=avr -mmcu=at90s2313 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK1 %s
 // CHECK1: "-cc1" {{.*}} "-target-cpu" "at90s2313"
 // CHECK1: "-cc1as" {{.*}} "-target-cpu" "at90s2313"
 
+// RUN: %clang -### --target=avr -mcpu=at90s8515 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK2 %s
 // RUN: %clang -### --target=avr -mmcu=at90s8515 -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECK2 %s
 // CHECK2: "-cc1" {{.*}} "-target-cpu" "at90s8515"
 // CHECK2: "-cc1as" {{.*}} "-target-cpu" "at90s8515"
@@ -72,10 +75,15 @@
 // CHECKh: "-cc1" {{.*}} "-target-cpu" "atxmega64a1u"
 // CHECKh: "-cc1as" {{.*}} "-target-cpu" "atxmega64a1u"
 
+// RUN: %clang -### --target=avr -mcpu=atxmega128a3u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKj %s
 // RUN: %clang -### --target=avr -mmcu=atxmega128a3u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKj %s
 // CHECKj: "-cc1" {{.*}} "-target-cpu" "atxmega128a3u"
 // CHECKj: "-cc1as" {{.*}} "-target-cpu" "atxmega128a3u"
 
+// RUN: %clang -### --target=avr -mcpu=atxmega128a4u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKi %s
 // RUN: %clang -### --target=avr -mmcu=atxmega128a4u -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKi %s
 // CHECKi: "-cc1" {{.*}} "-target-cpu" "atxmega128a4u"
 // CHECKi: "-cc1as" {{.*}} "-target-cpu" "atxmega128a4u"
+
+// RUN: %clang --target=avr -mcpu=atmega328 -mmcu=atmega168 -c %s 2>&1 | 
FileCheck -check-prefix=CHECKz %s
+// CHECKz: warning: argument unused during compilation: '-mmcu=atmega168'
Index: clang/lib/Driver/ToolChains/CommonArgs.cpp
===
--- clang/lib/Driver/ToolChains/CommonArgs.cpp
+++ clang/lib/Driver/ToolChains/CommonArgs.cpp
@@ -382,6 +382,10 @@
   }
 
   case llvm::Triple::avr:
+// We encourage users to use '-mcpu' as their first choice,
+// rather than the old '-mmcu' (inherited from avr-gcc).
+if (const Arg *A = Args.getLastArg(options::OPT_mcpu_EQ))
+  return A->getValue();
 if (const Arg *A = Args.getLastArg(options::OPT_mmcu_EQ))
   return A->getValue();
 return "";


Index: clang/test/Driver/avr-mmcu.c
===
--- clang/test/Driver/avr-mmcu.c
+++ clang/test/Driver/avr-mmcu.c
@@ -1,13 +1,16 @@
 // A test for the propagation of the -mmcu option to -cc1 and -cc1as
 
+// RUN: %clang -### --target=avr -mcpu=attiny11 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK0 %s
 // RUN: %clang -### --target=avr -mmcu=attiny11 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK0 %s
 // CHECK0: "-cc1" {{.*}} "-target-cpu" "attiny11"
 // CHECK0: "-cc1as" {{.*}} "-target-cpu" "attiny11"
 
+// RUN: %clang -### --target=avr -mcpu=at90s2313 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK1 %s
 // RUN: %clang -### --target=avr -mmcu=at90s2313 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK1 %s
 // CHECK1: "-cc1" {{.*}} "-target-cpu" "at90s2313"
 // CHECK1: "-cc1as" {{.*}} "-target-cpu" "at90s2313"
 
+// RUN: %clang -### --target=avr -mcpu=at90s8515 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK2 %s
 // RUN: %clang -### --target=avr -mmcu=at90s8515 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK2 %s
 // CHECK2: "-cc1" {{.*}} "-target-cpu" "at90s8515"
 // CHECK2: "-cc1as" {{.*}} "-target-cpu" "at90s8515"
@@ -72,10 +75,15 @@
 // CHECKh: "-cc1" {{.*}} "-target-cpu" "atxmega64a1u"
 // CHECKh: "-cc1as" {{.*}} "-target-cpu" "atxmega64a1u"
 
+// RUN: %clang -### --target=avr -mcpu=atxmega128a3u -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKj %s
 // RUN: %clang -### --target=avr -mmcu=atxmega128a3u -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKj %s
 // CHECKj: "-cc1" {{.*}} "-target-cpu" "atxmega128a3u"
 // CHECKj: "-cc1as" {{.*}} "-target-cpu" "atxmega128a3u"
 
+// RUN: %clang -### --target=avr -mcpu=atxmega128a4u 

[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR

2022-12-05 Thread Alexander Richardson via Phabricator via cfe-commits
arichardson added inline comments.



Comment at: clang/lib/Driver/ToolChains/CommonArgs.cpp:387
   return A->getValue();
+if (const Arg *A = Args.getLastArg(options::OPT_mcpu_EQ))
+  return A->getValue();

It looks to me that -mcpu will always take precedence over -mmcu with this code 
even if mmcu comes later in the command line. Wouldn't it make more sense to 
treat them as aliases?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139305

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


[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR

2022-12-05 Thread Ben Shi via Phabricator via cfe-commits
benshi001 added inline comments.



Comment at: clang/test/Driver/avr-mmcu.c:48
-// RUN: %clang -### --target=avr -mmcu=atmega16a -save-temps %s 2>&1 | 
FileCheck -check-prefix=CHECKb %s
-// CHECKb: "-cc1" {{.*}} "-target-cpu" "atmega16a"
-// CHECKb: "-cc1as" {{.*}} "-target-cpu" "atmega16a"

These 4 tests are redundant with their previous lines, so they should be 
removed.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139305

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


[PATCH] D139305: [clang][driver] Support option '-mcpu' on target AVR

2022-12-05 Thread Ben Shi via Phabricator via cfe-commits
benshi001 created this revision.
benshi001 added reviewers: aykevl, dylanmckay.
Herald added subscribers: luismarques, s.egerton, Jim, PkmX, simoncook, 
kristof.beyls, arichardson.
Herald added a project: All.
benshi001 requested review of this revision.
Herald added subscribers: cfe-commits, pcwang-thead, jacquesguan, MaskRay.
Herald added a project: clang.

Although there is an option '-mmcu' (inherited from avr-gcc) for selecting
a specific AVR CPU/MCU mode, '-mcpu' is more common on other targets, such
as ARM/RISCV/AArch64.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D139305

Files:
  clang/lib/Driver/ToolChains/CommonArgs.cpp
  clang/test/Driver/avr-mmcu.c

Index: clang/test/Driver/avr-mmcu.c
===
--- clang/test/Driver/avr-mmcu.c
+++ clang/test/Driver/avr-mmcu.c
@@ -1,81 +1,81 @@
-// A test for the propagation of the -mmcu option to -cc1 and -cc1as
+// A test for the propagation of the -mmcu/-mcpu option to -cc1 and -cc1as
 
 // RUN: %clang -### --target=avr -mmcu=attiny11 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK0 %s
+// RUN: %clang -### --target=avr -mcpu=attiny11 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK0 %s
 // CHECK0: "-cc1" {{.*}} "-target-cpu" "attiny11"
 // CHECK0: "-cc1as" {{.*}} "-target-cpu" "attiny11"
 
 // RUN: %clang -### --target=avr -mmcu=at90s2313 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK1 %s
+// RUN: %clang -### --target=avr -mcpu=at90s2313 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK1 %s
 // CHECK1: "-cc1" {{.*}} "-target-cpu" "at90s2313"
 // CHECK1: "-cc1as" {{.*}} "-target-cpu" "at90s2313"
 
 // RUN: %clang -### --target=avr -mmcu=at90s8515 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK2 %s
+// RUN: %clang -### --target=avr -mcpu=at90s8515 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK2 %s
 // CHECK2: "-cc1" {{.*}} "-target-cpu" "at90s8515"
 // CHECK2: "-cc1as" {{.*}} "-target-cpu" "at90s8515"
 
 // RUN: %clang -### --target=avr -mmcu=attiny13a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK3 %s
+// RUN: %clang -### --target=avr -mcpu=attiny13a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK3 %s
 // CHECK3: "-cc1" {{.*}} "-target-cpu" "attiny13a"
 // CHECK3: "-cc1as" {{.*}} "-target-cpu" "attiny13a"
 
 // RUN: %clang -### --target=avr -mmcu=attiny88 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK4 %s
+// RUN: %clang -### --target=avr -mcpu=attiny88 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK4 %s
 // CHECK4: "-cc1" {{.*}} "-target-cpu" "attiny88"
 // CHECK4: "-cc1as" {{.*}} "-target-cpu" "attiny88"
 
-// RUN: %clang -### --target=avr -mmcu=attiny88 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK5 %s
-// CHECK5: "-cc1" {{.*}} "-target-cpu" "attiny88"
-// CHECK5: "-cc1as" {{.*}} "-target-cpu" "attiny88"
-
 // RUN: %clang -### --target=avr -mmcu=atmega8u2 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK6 %s
+// RUN: %clang -### --target=avr -mcpu=atmega8u2 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK6 %s
 // CHECK6: "-cc1" {{.*}} "-target-cpu" "atmega8u2"
 // CHECK6: "-cc1as" {{.*}} "-target-cpu" "atmega8u2"
 
-// RUN: %clang -### --target=avr -mmcu=atmega8u2 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK7 %s
-// CHECK7: "-cc1" {{.*}} "-target-cpu" "atmega8u2"
-// CHECK7: "-cc1as" {{.*}} "-target-cpu" "atmega8u2"
-
 // RUN: %clang -### --target=avr -mmcu=atmega8a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK8 %s
+// RUN: %clang -### --target=avr -mcpu=atmega8a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK8 %s
 // CHECK8: "-cc1" {{.*}} "-target-cpu" "atmega8a"
 // CHECK8: "-cc1as" {{.*}} "-target-cpu" "atmega8a"
 
-// RUN: %clang -### --target=avr -mmcu=atmega8a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECK9 %s
-// CHECK9: "-cc1" {{.*}} "-target-cpu" "atmega8a"
-// CHECK9: "-cc1as" {{.*}} "-target-cpu" "atmega8a"
-
 // RUN: %clang -### --target=avr -mmcu=atmega16a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKa %s
+// RUN: %clang -### --target=avr -mcpu=atmega16a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKa %s
 // CHECKa: "-cc1" {{.*}} "-target-cpu" "atmega16a"
 // CHECKa: "-cc1as" {{.*}} "-target-cpu" "atmega16a"
 
-// RUN: %clang -### --target=avr -mmcu=atmega16a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKb %s
-// CHECKb: "-cc1" {{.*}} "-target-cpu" "atmega16a"
-// CHECKb: "-cc1as" {{.*}} "-target-cpu" "atmega16a"
-
 // RUN: %clang -### --target=avr -mmcu=atmega128a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKc %s
+// RUN: %clang -### --target=avr -mcpu=atmega128a -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKc %s
 // CHECKc: "-cc1" {{.*}} "-target-cpu" "atmega128a"
 // CHECKc: "-cc1as" {{.*}} "-target-cpu" "atmega128a"
 
 // RUN: %clang -### --target=avr -mmcu=atmega2560 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKd %s
+// RUN: %clang -### --target=avr -mcpu=atmega2560 -save-temps %s 2>&1 | FileCheck -check-prefix=CHECKd %s
 // CHECKd: "-cc1" {{.*}}