This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: optimization/7714: inlining of function with inline assemblercauses duplicate assembler lables
- From: Loren Osborn <linux_dr at yahoo dot com>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 26 Nov 2002 11:06:22 -0800
- Subject: Re: optimization/7714: inlining of function with inline assemblercauses duplicate assembler lables
- References: <1038337333.2587.34.camel@goofy.localnet>
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view audit-trail
Here is the text of the file mentioned above... the filename
should be InlineLableBug.c:
================BEGIN InlineLableBug.c================
static inline void DoNothing()
{
__asm__ (
"jmp leave_fn\n\t"
"nop \n"
"leave_fn:\n\t"
: // No Input Regs
: // No Output Regs
);
}
static void DoNothingOne()
{
DoNothing();
}
static void DoNothingTwo()
{
DoNothing();
}
static void DoNothingThree()
{
DoNothing();
}
typedef void(*CVoidFunc)();
extern CVoidFunc FuncArray[];
extern void InitFuncArray();
#define NULL 0
extern CVoidFunc FuncArray[4];
void InitFuncArray()
{
FuncArray[0] = DoNothingOne;
FuncArray[1] = DoNothingTwo;
FuncArray[2] = DoNothingThree;
FuncArray[3] = NULL;
}
=================END InlineLableBug.c=================
Now how do I change the state of this bug back to "open"????
Thanks,
-Loren