diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/mips/ext_ins.c')
-rw-r--r-- | gcc/testsuite/gcc.target/mips/ext_ins.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/mips/ext_ins.c b/gcc/testsuite/gcc.target/mips/ext_ins.c new file mode 100644 index 00000000000..77df1d2ba87 --- /dev/null +++ b/gcc/testsuite/gcc.target/mips/ext_ins.c @@ -0,0 +1,26 @@ +/* { dg-do compile } */ +/* { dg-mips-options "-march=mips32r2" } */ +/* { dg-final { scan-assembler "ext" } } */ +/* { dg-final { scan-assembler "ins" } } */ + +struct A +{ + unsigned int i : 2; + unsigned int j : 3; + unsigned int k : 4; + unsigned int l : 5; +}; + +void func (struct A); + +unsigned int f1 (struct A a) +{ + return a.j; +} + +void f2 (int i) +{ + struct A c; + c.j = i; + func (c); +} |