Commit 2af4ea89 by Jakub Jelinek Committed by Jakub Jelinek

re PR debug/54694 (internal compiler error: in dwarf2out_frame_debug_expr, at dwarf2out.c:2387)

	PR debug/54694
	* gcc.target/i386/pr9771-1.c (main): Rename to...
	(real_main): ... this.  Add __asm name "main".
	(ASMNAME, ASMNAME2, STRING): Define.

From-SVN: r206679
parent e4e6a4af
2014-01-16 Jakub Jelinek <jakub@redhat.com>
PR debug/54694
* gcc.target/i386/pr9771-1.c (main): Rename to...
(real_main): ... this. Add __asm name "main".
(ASMNAME, ASMNAME2, STRING): Define.
2014-01-16 Nick Clifton <nickc@redhat.com>
PR middle-end/28865
......
......@@ -45,7 +45,17 @@ void test(void)
exit(0);
}
int main()
/* main usually performs dynamic realignment of the stack in case
_start would fail to properly align the stack, but for dynamic
stack realignment we need frame pointer which is incompatible
with -ffixed-ebp and the global register var. So, cheat here
and hide from the compiler that main is really main. */
#define ASMNAME(cname) ASMNAME2 (__USER_LABEL_PREFIX__, cname)
#define ASMNAME2(prefix, cname) STRING (prefix) cname
#define STRING(x) #x
int real_main() __asm (ASMNAME ("main"));
int real_main()
{
test();
return 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment