This is the mail archive of the 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]

[branch]: Structure aliasing branch created

The structure-aliasing-branch has been created (or rather, is in the middle of being tagged).

I'll be using this branch to do work on making structure aliasing work better (including adding support for v_may_defs of parts of variables, etc).

Anything that bootstraps can be committed, but please let me know if you plan on working on something, so we don't duplicate work.

The plan looks something like this right now:

1. Modify V_MAY_DEFS (and possibly vuses) to have a size and offset argument
2. Modify the renamer to DTRT in regard to renaming versions for uses of different offsets (IE track reaching definitions for various offsets of structures).
3. Modify the operand getting code to create the structure killing vuses for only the actually killed portions of the structure.
4. Add the new alias analyzer to the branch that can determine what parts of structures and arrays are aliased, and what p->a and p->b and a[0] and a[1] actually point to.
4. Use the new alias analyzer to create partial v_may_defs/vuses

I'll add this to the development branches list in a few minutes

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