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] |
Test #4. When we moved the emutls pass later, to allow omp and profile run first so that they could create new TLS variables, we exposed tls addresses to the early optimizers. Which allowed them to propagate &tlsvar into PHI arguments. Lowering PHI arguments sounded like a royal pain, so I decided to prevent it by declaring emulated tls addresses to be !is_gimple_min_invariant. This had all sorts of unanticipated follow-on effects; in the end the simplest bubble to squash appears to be in forwprop, where we were blindly propagating ADDR_EXPR without looking to see if it might be valid. Also fixed (aka hacked around) is a ggc corruption bug caused by an explicit ggc_free in varpool_remove_node. I'm not quite sure how it would be best to fix that one properly. Also fixed is maintaining the IPA web. We should no longer incorrectly discard control variables as unused. r~
Attachment:
emutls-4
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |