From a6b8d8f919c497069caf61c52c5d3b1837129e6b Mon Sep 17 00:00:00 2001
From: Georg-Johann Lay <avr@gjlay.de>
Date: Sun, 7 Jan 2024 20:14:57 +0100
Subject: [PATCH] AVR: Fix some test options. Skip tests with address-space on
 Reduced Tiny.

gcc/testsuite/
	* gcc.target/avr/lra-cpymem_qi.c: Remove duplicate -mmcu=.
	* gcc.target/avr/lra-elim.c: Same.
	* gcc.target/avr/pr112830.c: Skip for Reduced Tiny.
	* gcc.target/avr/pr46779-1.c: Same.
	* gcc.target/avr/pr46779-2.c: Same.
	* gcc.target/avr/pr86869.c: Skip for Reduced Tiny and add -std=gnu99
	for GNU-C due to address spaces.
	* gcc.target/avr/pr89270.c: Same.
	* gcc.target/avr/torture/builtins-2-flash.c: Only test address
	space __flash1 if we have it.
	* gcc.target/avr/torture/addr-space-1-1.c: Same.
	* gcc.target/avr/torture/addr-space-2-1.c: Same.
---
 gcc/testsuite/gcc.target/avr/lra-cpymem_qi.c            | 2 +-
 gcc/testsuite/gcc.target/avr/lra-elim.c                 | 2 +-
 gcc/testsuite/gcc.target/avr/pr112830.c                 | 2 +-
 gcc/testsuite/gcc.target/avr/pr46779-1.c                | 2 +-
 gcc/testsuite/gcc.target/avr/pr46779-2.c                | 2 +-
 gcc/testsuite/gcc.target/avr/pr86869.c                  | 3 ++-
 gcc/testsuite/gcc.target/avr/pr89270.c                  | 3 ++-
 gcc/testsuite/gcc.target/avr/torture/addr-space-1-1.c   | 4 ++++
 gcc/testsuite/gcc.target/avr/torture/addr-space-2-1.c   | 4 ++++
 gcc/testsuite/gcc.target/avr/torture/builtins-2-flash.c | 4 ++++
 10 files changed, 21 insertions(+), 7 deletions(-)

diff --git a/gcc/testsuite/gcc.target/avr/lra-cpymem_qi.c b/gcc/testsuite/gcc.target/avr/lra-cpymem_qi.c
index fdffb445b454..31cf2003c430 100644
--- a/gcc/testsuite/gcc.target/avr/lra-cpymem_qi.c
+++ b/gcc/testsuite/gcc.target/avr/lra-cpymem_qi.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-mmcu=avr51 -Os" } */
+/* { dg-options "-Os" } */
 
 #include <stdbool.h>
 
diff --git a/gcc/testsuite/gcc.target/avr/lra-elim.c b/gcc/testsuite/gcc.target/avr/lra-elim.c
index d5086a7fd5da..8d5dbf8ac4e1 100644
--- a/gcc/testsuite/gcc.target/avr/lra-elim.c
+++ b/gcc/testsuite/gcc.target/avr/lra-elim.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-mmcu=avr25 -Os" } */
+/* { dg-options "-Os" } */
 
 typedef int HItype __attribute__ ((mode (HI)));
 HItype
diff --git a/gcc/testsuite/gcc.target/avr/pr112830.c b/gcc/testsuite/gcc.target/avr/pr112830.c
index c305daed06c6..dd70dd0ea391 100644
--- a/gcc/testsuite/gcc.target/avr/pr112830.c
+++ b/gcc/testsuite/gcc.target/avr/pr112830.c
@@ -1,4 +1,4 @@
-/* { dg-do compile } */
+/* { dg-do compile { target { ! avr_tiny } } } */
 /* { dg-options "" } */
 
 typedef __SIZE_TYPE__ size_t;
diff --git a/gcc/testsuite/gcc.target/avr/pr46779-1.c b/gcc/testsuite/gcc.target/avr/pr46779-1.c
index 24522f175bee..e3e0b2921148 100644
--- a/gcc/testsuite/gcc.target/avr/pr46779-1.c
+++ b/gcc/testsuite/gcc.target/avr/pr46779-1.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target { ! avr_tiny } } } */
 /* { dg-options "-Os -fsplit-wide-types" } */
 
 /* This testcase should uncover bugs like
diff --git a/gcc/testsuite/gcc.target/avr/pr46779-2.c b/gcc/testsuite/gcc.target/avr/pr46779-2.c
index 682070b5ef93..557cc749c758 100644
--- a/gcc/testsuite/gcc.target/avr/pr46779-2.c
+++ b/gcc/testsuite/gcc.target/avr/pr46779-2.c
@@ -1,4 +1,4 @@
-/* { dg-do run } */
+/* { dg-do run { target { ! avr_tiny } } } */
 /* { dg-options "-Os -fno-split-wide-types" } */
 
 /* This testcase should uncover bugs like
diff --git a/gcc/testsuite/gcc.target/avr/pr86869.c b/gcc/testsuite/gcc.target/avr/pr86869.c
index fbfb378e8c90..a5de4cc65107 100644
--- a/gcc/testsuite/gcc.target/avr/pr86869.c
+++ b/gcc/testsuite/gcc.target/avr/pr86869.c
@@ -1,4 +1,5 @@
-/* { dg-do compile } */
+/* { dg-do compile { target { ! avr_tiny } } } */
+/* { dg-additional-options "-std=gnu99 -w" } */
 
 struct S {
   char y[2];
diff --git a/gcc/testsuite/gcc.target/avr/pr89270.c b/gcc/testsuite/gcc.target/avr/pr89270.c
index 2b6e4a8aa5be..5b43218eddbb 100644
--- a/gcc/testsuite/gcc.target/avr/pr89270.c
+++ b/gcc/testsuite/gcc.target/avr/pr89270.c
@@ -1,4 +1,5 @@
-/* { dg-do compile } */
+/* { dg-do compile { target { ! avr_tiny } } } */
+/* { dg-additional-options "-std=gnu99" } */
 
 void test()
 {
diff --git a/gcc/testsuite/gcc.target/avr/torture/addr-space-1-1.c b/gcc/testsuite/gcc.target/avr/torture/addr-space-1-1.c
index e90bdcb5bfbe..4812f67e2f18 100644
--- a/gcc/testsuite/gcc.target/avr/torture/addr-space-1-1.c
+++ b/gcc/testsuite/gcc.target/avr/torture/addr-space-1-1.c
@@ -1,6 +1,10 @@
 /* { dg-options "-std=gnu99 -Tavr51-flash1.x" } */
 /* { dg-do run { target { ! avr_tiny } } } */
 
+#ifdef __FLASH1
 #define __as __flash1
+#else
+#define __as __flash
+#endif
 
 #include "addr-space-1.h"
diff --git a/gcc/testsuite/gcc.target/avr/torture/addr-space-2-1.c b/gcc/testsuite/gcc.target/avr/torture/addr-space-2-1.c
index 327124aff27a..d5fcf0a5520c 100644
--- a/gcc/testsuite/gcc.target/avr/torture/addr-space-2-1.c
+++ b/gcc/testsuite/gcc.target/avr/torture/addr-space-2-1.c
@@ -1,6 +1,10 @@
 /* { dg-options "-std=gnu99 -Tavr51-flash1.x" } */
 /* { dg-do run { target { ! avr_tiny } } } */
 
+#ifdef __FLASH1
 #define __as __flash1
+#else
+#define __as __flash
+#endif
 
 #include "addr-space-2.h"
diff --git a/gcc/testsuite/gcc.target/avr/torture/builtins-2-flash.c b/gcc/testsuite/gcc.target/avr/torture/builtins-2-flash.c
index 318551d5ccf3..11dba67b85ae 100644
--- a/gcc/testsuite/gcc.target/avr/torture/builtins-2-flash.c
+++ b/gcc/testsuite/gcc.target/avr/torture/builtins-2-flash.c
@@ -4,7 +4,9 @@
 #include <stdlib.h>
 
 const __flash char c0 = 1;
+#ifdef __FLASH1
 const __flash1 char c1 = 1;
+#endif
 
 int main (void)
 {
@@ -14,9 +16,11 @@ int main (void)
   if (__builtin_avr_flash_segment (p) != 0)
     abort();
 
+#ifdef __FLASH1
   p = &c1;
   if (__builtin_avr_flash_segment (p) != 1)
     abort();
+#endif
 
   if (__builtin_avr_flash_segment ("p") != -1)
     abort();
-- 
GitLab