From 3c072c6ba27f5f8c18688bd3816523ee8b2e7e16 Mon Sep 17 00:00:00 2001 From: Jing Yu Date: Tue, 17 Mar 2009 20:18:21 +0000 Subject: re PR middle-end/39378 (Multiple inheritence thunk not working with -mthumb) 2009-03-12 Jing Yu PR middle-end/39378 * function.h: Move is_thunk from rtl_data structure to function structure. * cp/method.c (use_thunk): Change is_thunk from crtl to cfun. * varasm.c (assemble_start_function): Change is_thunk from crtl to cfun. * config/alpha/alpha.c: Change is_thunk from crtl to cfun. * config/rs6000/rs6000.c: Change is_thunk from crtl to cfun. * config/arm/arm.h: Change is_thunk from crtl to cfun. * testsuite/g++.dg/inherit/thunk10.C: New file. Patch submitted by Doug Kwan From-SVN: r144918 --- gcc/function.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'gcc/function.h') diff --git a/gcc/function.h b/gcc/function.h index 3f03727..f9bdda8 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -378,12 +378,6 @@ struct rtl_data GTY(()) /* Nonzero if function being compiled has an asm statement. */ bool has_asm_statement; - /* Nonzero if the current function is a thunk, i.e., a lightweight - function implemented by the output_mi_thunk hook) that just - adjusts one of its arguments and forwards to another - function. */ - bool is_thunk; - /* This bit is used by the exception handling logic. It is set if all calls (if any) are sibling calls. Such functions do not have to have EH tables generated, as they cannot throw. A call to such a @@ -600,6 +594,12 @@ struct function GTY(()) /* Nonzero if this function has local DECL_HARD_REGISTER variables. In this case code motion has to be done more carefully. */ unsigned int has_local_explicit_reg_vars : 1; + + /* Nonzero if the current function is a thunk, i.e., a lightweight + function implemented by the output_mi_thunk hook) that just + adjusts one of its arguments and forwards to another + function. */ + unsigned int is_thunk : 1; }; /* If va_list_[gf]pr_size is set to this, it means we don't know how -- cgit v1.1