This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
The only complex thing in my patch is the patch to var_can_have_subvars as we can have both complex types which are gimple registers (which has a SSA_NAME associated with it). If we just say all variables can have subvars, we get an ICE in tree-complex.c lowering the arithmetic as we don't create a SSA_NAME for those variables even though we should have.
Thanks, Andrew Pinski
ChangeLog: 2005-12-29 Richard Guenther <rguenther@suse.de>
* tree-flow.h (struct fieldoff): Use separate type and offset field instead of storing FIELD_DECL in field. * tree-ssa-alias.c (create_sft): We now take field type as 2nd argument. (create_overlap_variables_for): Adjust for field now storing field type. * tree-ssa-structalias.c (create_variable_info_for): Likewise. (fieldoff_compare): Likewise. (push_fields_onto_fieldstack): Likewise.
* tree-ssa-alias.c (find_used_portions): Handle REALPART_EXPR and IMAGPART_EXPR. * tree-flow-inline.h (var_can_have_subvars): Handle complex types on non gimple variables. * tree-ssa-structalias.c (push_fields_onto_fieldstack): Handle complex types. * tree-ssa-operands.c (parse_ssa_operands): Handle REALPART_EXPR and IMAGPART_EXPR for creating MUST_DEFs.
Attachment:
SFTcomplex.diff.txt
Description: Text document
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |