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] |
> I wonder why the machinery for handling pointers with alias set zero > does not trigger > here. Can you check if the ada langhook for get_alias_set returns > something different > than -1 for pointers with TYPE_REF_CAN_ALIAS_ALL? Or why get_alias_set > does not return 0 for those types?
I'm under the impression that you're confusing alias set of the pointed-to type and alias set of the pointer type. As suggested by Olivier, another possible track could be to tweak tree-ssa-alias.c:may_alias_p, although I'm not sure whether this would be sufficient.
I don't like the tree-ssa-operands.c part of the patch as we should have a mechanism that deals with this problem already, as we have char* pointers. Btw. I couldn't construct a C testcase that failed. So, as you noticed I confused the type somewhat so one would need to amend the get_alias_set calls in tree-ssa-alias.c:get_tmt_for and friends to check for TYPE_REF_CAN_ALIAS_ALL on the pointer type and use alias set 0 in this case.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |