* sh-tdep.c (sh_is_renesas_calling_convention): Fix handling of

TYPE_CALLING_CONVENTION annotation.
This commit is contained in:
Thomas Schwinge 2012-02-17 08:39:57 +00:00
parent d0ddfe2750
commit ca193e2779
2 changed files with 23 additions and 3 deletions

View file

@ -1,3 +1,8 @@
2012-02-17 Thomas Schwinge <thomas@codesourcery.com>
* sh-tdep.c (sh_is_renesas_calling_convention): Fix handling of
TYPE_CALLING_CONVENTION annotation.
2012-02-16 Kevin Buettner <kevinb@redhat.com>
* MAINTAINERS: Add rx to target ISA section.

View file

@ -89,9 +89,24 @@ struct sh_frame_cache
static int
sh_is_renesas_calling_convention (struct type *func_type)
{
return ((func_type
&& TYPE_CALLING_CONVENTION (func_type) == DW_CC_GNU_renesas_sh)
|| sh_active_calling_convention == sh_cc_renesas);
int val = 0;
if (func_type)
{
func_type = check_typedef (func_type);
if (TYPE_CODE (func_type) == TYPE_CODE_PTR)
func_type = check_typedef (TYPE_TARGET_TYPE (func_type));
if (TYPE_CODE (func_type) == TYPE_CODE_FUNC
&& TYPE_CALLING_CONVENTION (func_type) == DW_CC_GNU_renesas_sh)
val = 1;
}
if (sh_active_calling_convention == sh_cc_renesas)
val = 1;
return val;
}
static const char *