URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 297 |
Rev 338 |
/* PR middle-end/38981 */
|
/* PR middle-end/38981 */
|
/* Reporter: Kamaraju Kusumanchi <kamaraju@gmail.com> */
|
/* Reporter: Kamaraju Kusumanchi <kamaraju@gmail.com> */
|
|
|
struct d_info
|
struct d_info
|
{
|
{
|
int **subs;
|
int **subs;
|
};
|
};
|
|
|
static int *
|
static int *
|
d_substitution (struct d_info *di, int prefix)
|
d_substitution (struct d_info *di, int prefix)
|
{
|
{
|
char c;
|
char c;
|
|
|
c='_';
|
c='_';
|
|
|
if (c == '_')
|
if (c == '_')
|
{
|
{
|
unsigned int id;
|
unsigned int id;
|
|
|
if (c != '_')
|
if (c != '_')
|
{
|
{
|
do
|
do
|
{
|
{
|
unsigned int new_id;
|
unsigned int new_id;
|
|
|
if (new_id < id)
|
if (new_id < id)
|
return 0;
|
return 0;
|
id = new_id;
|
id = new_id;
|
}
|
}
|
while (c != '_');
|
while (c != '_');
|
}
|
}
|
|
|
|
|
|
|
return di->subs[id];
|
return di->subs[id];
|
}
|
}
|
else
|
else
|
{
|
{
|
int verbose;
|
int verbose;
|
int code;
|
int code;
|
int simple_len;
|
int simple_len;
|
|
|
code=0;
|
code=0;
|
simple_len=0;
|
simple_len=0;
|
verbose=0;
|
verbose=0;
|
if (! code && prefix)
|
if (! code && prefix)
|
{
|
{
|
char peek;
|
char peek;
|
peek='A';
|
peek='A';
|
|
|
if (peek == 'C' || peek == 'D')
|
if (peek == 'C' || peek == 'D')
|
verbose = 1;
|
verbose = 1;
|
}
|
}
|
|
|
if (verbose)
|
if (verbose)
|
{
|
{
|
code = simple_len;
|
code = simple_len;
|
}
|
}
|
|
|
}
|
}
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.