pr26350.c: New.
* gcc.target/powerpc/pr26350.c: New. * gcc.target/powerpc/indexed-addr.c: New. From-SVN: r112176
This commit is contained in:
parent
ea5bd0d8b9
commit
d550ef0bf6
3 changed files with 48 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
2006-03-17 David Edelsohn <edelsohn@gnu.org>
|
||||
|
||||
* gcc.target/powerpc/pr26350.c: New.
|
||||
* gcc.target/powerpc/indexed-addr.c: New.
|
||||
|
||||
2006-03-16 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* gfortran.dg/dependency_13.f90: New test case.
|
||||
|
|
14
gcc/testsuite/gcc.target/powerpc/indexed-addr.c
Normal file
14
gcc/testsuite/gcc.target/powerpc/indexed-addr.c
Normal file
|
@ -0,0 +1,14 @@
|
|||
/* { dg-do compile { target { powerpc*-*-* } } } */
|
||||
/* { dg-options "-O2" } */
|
||||
|
||||
/* { dg-final { scan-assembler "3,\.*3,\.*4" } }
|
||||
|
||||
/* Ensure that indexed address are output with base address in rA position
|
||||
and index in rB position. */
|
||||
|
||||
char
|
||||
do_one (char *base, unsigned long offset)
|
||||
{
|
||||
return base[offset];
|
||||
}
|
||||
|
29
gcc/testsuite/gcc.target/powerpc/pr26350.c
Normal file
29
gcc/testsuite/gcc.target/powerpc/pr26350.c
Normal file
|
@ -0,0 +1,29 @@
|
|||
/* { dg-do compile { target { powerpc*-*-darwin* powerpc*-*-aix* rs6000-*-* powerpc*-*-linux* } } } */
|
||||
/* { dg-options "-O2 -mlong-double-128 -fpic" } */
|
||||
|
||||
typedef int int32_t __attribute__ ((__mode__ (__SI__)));
|
||||
typedef unsigned char uint8_t;
|
||||
typedef unsigned int uint32_t;
|
||||
typedef struct REGS REGS;
|
||||
typedef union { uint32_t F; } FW;
|
||||
typedef union { struct { FW L; } F; } DW;
|
||||
typedef struct _PSW {
|
||||
DW ia;
|
||||
} PSW;
|
||||
struct REGS {
|
||||
PSW psw;
|
||||
DW cr[16];
|
||||
};
|
||||
struct ebfp {
|
||||
long double v;
|
||||
};
|
||||
|
||||
void s390_convert_fix32_to_bfp_ext_reg (REGS *regs)
|
||||
{
|
||||
struct ebfp op1;
|
||||
int32_t op2;
|
||||
((regs))->psw.ia.F.L.F += (4);
|
||||
if(!((regs)->cr[(0)].F.L.F & 0x00040000))
|
||||
op1.v = (long double)op2;
|
||||
put_ebfp(&op1);
|
||||
}
|
Loading…
Add table
Reference in a new issue