Jan Hubicka - Re: TREE_ADDRESSABLE and trivial dead stores before inlining (original) (raw)

This is the mail archive of the gcc-patches@gcc.gnu.orgmailing 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]

Jan Hubicka wrote on 02/04/07 07:02:

This patch implements two very simple passes - one to recompute address taken and other to remove stores into write only variables.

Hmm, I don't think I like this approach too much. Having passes that workaround problems will create maintenance problems down the road.

Well, it depends if we decide that aliasing with VOPS at IPA is what we want, that don't seem quite clear to me still, but lets give it a try. (my view of those two passes is to allow fast cleanup before we go to full aliasing so the unnecesary datastructures don't need to be built. It seems to pay back in compile times as we tested tonight on C++ tester. It is however possible that doing aliasing early will help too since we don't need to duplicate effort after inlining).

How about this? We create a partitioning heuristic that puts every symbol inside the same partition. This way we can run all the usual

Will DSE work then?

clean up passes without having to worry about butchering them to compensate for the lack of aliasing information.

I would rather deal with any bugs uncovered by this. Partitioning everything so that they all belong to the same partition should guarantee the creation of just 1 VOP per statement, and any bugs uncovered by this are only going to help us during stage2/stage3.

I will need a help here since when I try to enable aliasing pre-inline I get number of interesting failures and I am not terribly familiar with the code. I will update patch I have and send it shortly.

Honza


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]