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 target/20583
|
/* PR target/20583
|
On m68k-none-elf, CSE used to generate
|
On m68k-none-elf, CSE used to generate
|
|
|
(set (reg:HI ...)
|
(set (reg:HI ...)
|
(const:HI (truncate:HI (minus:SI (label_ref ...)
|
(const:HI (truncate:HI (minus:SI (label_ref ...)
|
(label_ref ...)))))
|
(label_ref ...)))))
|
|
|
which output functions do not know how to handle. Make sure that
|
which output functions do not know how to handle. Make sure that
|
such a constant will be rejected. */
|
such a constant will be rejected. */
|
|
|
void bar (unsigned int);
|
void bar (unsigned int);
|
|
|
void
|
void
|
foo (void)
|
foo (void)
|
{
|
{
|
char buf[1] = { 3 };
|
char buf[1] = { 3 };
|
const char *p = buf;
|
const char *p = buf;
|
const char **q = &p;
|
const char **q = &p;
|
unsigned int ch;
|
unsigned int ch;
|
switch (**q)
|
switch (**q)
|
{
|
{
|
case 1: ch = 5; break;
|
case 1: ch = 5; break;
|
case 2: ch = 4; break;
|
case 2: ch = 4; break;
|
case 3: ch = 3; break;
|
case 3: ch = 3; break;
|
case 4: ch = 2; break;
|
case 4: ch = 2; break;
|
case 5: ch = 1; break;
|
case 5: ch = 1; break;
|
default: ch = 0; break;
|
default: ch = 0; break;
|
}
|
}
|
bar (ch);
|
bar (ch);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.