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] |
Absolutely none of the optimizations in the middle end care about lexical block boundaries, and it the fact that we have the info at all is not meant to be used to block or stop optimizations. In fact, the very first thing GIMPLE lowering does is remove lexical scopes!
"/* The differences between High GIMPLE and Low GIMPLE are the following:
1- Lexical scopes are removed (i.e., GIMPLE_BIND disappears). "
ISTM the bug here is in trying to use lexical scope data, after we've destroyed it, to make decisions about aliasing.
If we want to try to introduce lexical scopes into low gimple, and respect them in optimizations, you are basically talking about changing some very fundamental assumptions our tree level optimizations make.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |