nop.h: New file.
* gcc.dg/guality/nop.h: New file. * gcc.dg/guality/asm-1.c: Include it and use NOP macro instead of "nop". Adjust line numbers in gdb-test. * gcc.dg/guality/pr43329-1.c: Likewise. From-SVN: r166859
This commit is contained in:
parent
84ec98d2eb
commit
a677307de8
4 changed files with 22 additions and 4 deletions
|
@ -1,3 +1,10 @@
|
|||
2010-11-17 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* gcc.dg/guality/nop.h: New file.
|
||||
* gcc.dg/guality/asm-1.c: Include it and use NOP macro instead of
|
||||
"nop". Adjust line numbers in gdb-test.
|
||||
* gcc.dg/guality/pr43329-1.c: Likewise.
|
||||
|
||||
2010-11-16 Jason Merrill <jason@redhat.com>
|
||||
|
||||
* g++.dg/cpp0x/defaulted20.C: New.
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
/* { dg-do run } */
|
||||
/* { dg-options "-g" } */
|
||||
|
||||
#include "nop.h"
|
||||
|
||||
struct A { int x; unsigned short y; char z[64]; };
|
||||
|
||||
void __attribute__((noinline))
|
||||
foo (struct A *p, char *q)
|
||||
{
|
||||
int f = &p->z[p->y] - q;
|
||||
asm volatile ("nop");
|
||||
asm volatile ("nop" : : "g" (f)); /* { dg-final { gdb-test 12 "f" "14" } } */
|
||||
asm volatile (NOP);
|
||||
asm volatile (NOP : : "g" (f)); /* { dg-final { gdb-test 14 "f" "14" } } */
|
||||
asm volatile ("" : : "g" (p), "g" (q));
|
||||
}
|
||||
|
||||
|
|
7
gcc/testsuite/gcc.dg/guality/nop.h
Normal file
7
gcc/testsuite/gcc.dg/guality/nop.h
Normal file
|
@ -0,0 +1,7 @@
|
|||
#if defined (__ia64__) || defined (__s390__) || defined (__s390x__)
|
||||
#define NOP "nop 0"
|
||||
#elif defined (__MMIX__)
|
||||
#define NOP "swym 0"
|
||||
#else
|
||||
#define NOP "nop"
|
||||
#endif
|
|
@ -2,12 +2,14 @@
|
|||
/* { dg-do run } */
|
||||
/* { dg-options "-g" } */
|
||||
|
||||
#include "nop.h"
|
||||
|
||||
static inline void
|
||||
foo (int argx)
|
||||
{
|
||||
int varx = argx;
|
||||
__asm__ volatile ("nop"); /* { dg-final { gdb-test 10 "argx" "25" } } */
|
||||
__asm__ volatile ("nop" : : "g" (varx)); /* { dg-final { gdb-test 10 "varx" "25" } } */
|
||||
__asm__ volatile (NOP); /* { dg-final { gdb-test 12 "argx" "25" } } */
|
||||
__asm__ volatile (NOP : : "g" (varx)); /* { dg-final { gdb-test 12 "varx" "25" } } */
|
||||
}
|
||||
|
||||
int i;
|
||||
|
|
Loading…
Add table
Reference in a new issue