aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAndrew Burgess <andrew.burgess@embecosm.com>2016-04-28 20:13:47 +0100
committerJoern Rennecke <amylaar@gcc.gnu.org>2016-04-28 20:13:47 +0100
commitf4cb361287ea583f91ee8b850bca576a54f5917c (patch)
tree841e0c01b0413088876a03859bb53dd8703f6a7e /gcc
parent913a9fbb4fa4dde21e2f8071352f5f548b73f181 (diff)
downloadgcc-f4cb361287ea583f91ee8b850bca576a54f5917c.zip
gcc-f4cb361287ea583f91ee8b850bca576a54f5917c.tar.gz
gcc-f4cb361287ea583f91ee8b850bca576a54f5917c.tar.bz2
nps400-1.c: New file.
2016-04-28 Andrew Burgess <andrew.burgess@embecosm.com> * gcc.target/arc/nps400-1.c: New file. From-SVN: r235603
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.target/arc/nps400-1.c23
2 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 36de779..96d8369 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2016-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * gcc.target/arc/nps400-1.c: New file.
+
2016-04-28 Joern Rennecke <joern.rennecke@embecosm.com>
Andrew Burgess <andrew.burgess@embecosm.com>
diff --git a/gcc/testsuite/gcc.target/arc/nps400-1.c b/gcc/testsuite/gcc.target/arc/nps400-1.c
new file mode 100644
index 0000000..f3d6271
--- /dev/null
+++ b/gcc/testsuite/gcc.target/arc/nps400-1.c
@@ -0,0 +1,23 @@
+/* { dg-do compile } */
+/* { dg-options "-mcpu=nps400 -mq-class -mbitops -munaligned-access -mcmem -O2 -fno-strict-aliasing" } */
+
+enum npsdp_mem_space_type {
+ NPSDP_EXTERNAL_MS = 1
+};
+struct npsdp_ext_addr {
+ struct {
+ struct {
+ enum npsdp_mem_space_type mem_type : 1;
+ unsigned msid : 5;
+ };
+ };
+ char user_space[];
+} a;
+char b;
+void fn1() {
+ ((struct npsdp_ext_addr *)a.user_space)->mem_type = NPSDP_EXTERNAL_MS;
+ ((struct npsdp_ext_addr *)a.user_space)->msid =
+ ((struct npsdp_ext_addr *)a.user_space)->mem_type ? 1 : 10;
+ while (b)
+ ;
+}