Hi Nathan,
> On Apr 5, 2017, at 8:18 AM, Nathan Sidwell <[email protected]> wrote:
>
> Here's a completed patch. Bill, if you could regression test it, that'd be
> great! (feel free to augment the testcase)
Thanks for the patch! Looks like there are some compile problems. I can fix
"resut", but not sure what the intent is for "canonical":
In file included from /home/wschmidt/gcc/gcc-mainline-test/gcc/config/rs6000/rs6
000.c:26:0:
/home/wschmidt/gcc/gcc-mainline-test/gcc/config/rs6000/rs6000.c: In function 'tr
ee_node* rs6000_vt(const char*, tree, unsigned int)':
/home/wschmidt/gcc/gcc-mainline-test/gcc/config/rs6000/rs6000.c:17267:31: error:
'canonical' was not declared in this scope
tree orig_name = TYPE_NAME (canonical);
^
/home/wschmidt/gcc/gcc-mainline-test/gcc/tree.h:296:21: note: in definition of m
acro 'TREE_CLASS_CHECK'
(tree_class_check ((T), (CLASS), __FILE__, __LINE__, __FUNCTION__))
^
/home/wschmidt/gcc/gcc-mainline-test/gcc/tree.h:1840:26: note: in expansion of m
acro 'TYPE_CHECK'
#define TYPE_NAME(NODE) (TYPE_CHECK (NODE)->type_common.name)
^~~~~~~~~~
/home/wschmidt/gcc/gcc-mainline-test/gcc/config/rs6000/rs6000.c:17267:20: note:
in expansion of macro 'TYPE_NAME'
tree orig_name = TYPE_NAME (canonical);
^~~~~~~~~
/home/wschmidt/gcc/gcc-mainline-test/gcc/config/rs6000/rs6000.c:17280:10: error:
'resut' was not declared in this scope
return resut;
^~~~~
Bill
>
> Richard, rather than copy set_underlying_type's type cloning I added a check
> in it for error_mark_node as the existing name. If you'd prefer that remain
> unchanged, I can duplicate the type cloning into rs6000_vt itself.
>
> nathan
>
> --
> Nathan Sidwell
> <ppc-79905.diff>