Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
87deeba6
Commit
87deeba6
authored
Nov 14, 2008
by
Kaz Kojima
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
pr37514.c: Remove.
* gcc.target/sh/pr37514.c: Remove. From-SVN: r141856
parent
11cc65d4
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
0 additions
and
65 deletions
+0
-65
gcc/testsuite/gcc.target/sh/pr37514.c
+0
-65
No files found.
gcc/testsuite/gcc.target/sh/pr37514.c
deleted
100644 → 0
View file @
11cc65d4
/* This is essentially gcc.c-torture/execute/20021120-1.c run with
-O3 -fomit-frame-pointer -fira-share-spill-slots. */
/* { dg-do run { target "sh*-*-*" } } */
/* { dg-options "-O3 -fomit-frame-pointer -fira-share-spill-slots" } */
/* Macros to emit "L Nxx R" for each octal number xx between 000 and 037. */
#define OP1(L, N, R, I, J) L N##I##J R
#define OP2(L, N, R, I) \
OP1(L, N, R, 0, I), OP1(L, N, R, 1, I), \
OP1(L, N, R, 2, I), OP1(L, N, R, 3, I)
#define OP(L, N, R) \
OP2(L, N, R, 0), OP2(L, N, R, 1), OP2(L, N, R, 2), OP2(L, N, R, 3), \
OP2(L, N, R, 4), OP2(L, N, R, 5), OP2(L, N, R, 6), OP2(L, N, R, 7)
/* Declare 32 unique variables with prefix N. */
#define DECLARE(N) OP (, N,)
/* Copy 32 variables with prefix N from the array at ADDR.
Leave ADDR pointing to the end of the array. */
#define COPYIN(N, ADDR) OP (, N, = *(ADDR++))
/* Likewise, but copy the other way. */
#define COPYOUT(N, ADDR) OP (*(ADDR++) =, N,)
/* Add the contents of the array at ADDR to 32 variables with prefix N.
Leave ADDR pointing to the end of the array. */
#define ADD(N, ADDR) OP (, N, += *(ADDR++))
volatile
double
gd
[
32
];
volatile
float
gf
[
32
];
extern
void
abort
(
void
);
static
void
foo
(
int
n
)
{
double
DECLARE
(
d
);
float
DECLARE
(
f
);
volatile
double
*
pd
;
volatile
float
*
pf
;
int
i
;
pd
=
gd
;
COPYIN
(
d
,
pd
);
for
(
i
=
0
;
i
<
n
;
i
++
)
{
pf
=
gf
;
COPYIN
(
f
,
pf
);
pd
=
gd
;
ADD
(
d
,
pd
);
pd
=
gd
;
ADD
(
d
,
pd
);
pd
=
gd
;
ADD
(
d
,
pd
);
pf
=
gf
;
COPYOUT
(
f
,
pf
);
}
pd
=
gd
;
COPYOUT
(
d
,
pd
);
}
int
main
()
{
int
i
;
for
(
i
=
0
;
i
<
32
;
i
++
)
gd
[
i
]
=
i
,
gf
[
i
]
=
i
;
foo
(
1
);
for
(
i
=
0
;
i
<
32
;
i
++
)
if
(
gd
[
i
]
!=
i
*
4
||
gf
[
i
]
!=
i
)
abort
();
return
0
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment