[COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt
Jiong Wang
jiong.wang@arm.com
Mon Aug 10 13:08:00 GMT 2015
Jiong Wang writes:
> Andreas Schwab writes:
>
>> Jiong Wang <jiong.wang@arm.com> writes:
>>
>>> Index: gcc/ChangeLog
>>> ===================================================================
>>> --- gcc/ChangeLog (revision 226682)
>>> +++ gcc/ChangeLog (working copy)
>>> @@ -1,3 +1,16 @@
>>> +2015-08-06 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
>>> + Jiong Wang <jiong.wang@arm.com>
>>> +
>>> + * config/aarch64/aarch64.d (tlsdesc_small_pseudo_<mode>): New pattern.
>>> + * config/aarch64/aarch64.h (reg_class): New enumeration FIXED_REG0.
>>> + (REG_CLASS_NAMES): Likewise.
>>> + (REG_CLASS_CONTENTS): Likewise.
>>> + * config/aarch64/aarch64.c (aarch64_class_max_nregs): Likewise.
>>> + (aarch64_register_move_cost): Likewise.
>>> + (aarch64_load_symref_appropriately): Invoke the new added pattern if
>>> + possible.
>>> + * config/aarch64/constraints.md (Uc0): New constraint.
>>
>> That breaks go, all tests are crashing now.
>
> Andreas,
>
> Thanks for the information.
>
> * I found I committed the wrong patch!
> there are two patches in my local directory, one is
> "tlsdesc_hoist.patch" the other is "tlsdesc-hoist.patch", the one
> approved and up-to-date is tlsdesc-hoist.patch while I committed
> tlsdesc_hoist.patch.
>
> Reverted the wrong commit and committed the correct/approved
> version.
>
> * Even after the correct patch applied, I still found go check failed
> on my local native check.
>
> Tring to understand why and if I can't figure out today I will
> revert the patch.
And I just finished two round of native aarch64 build/check w/wo my patch.
I got the same go.sum.
And my patch only touches one tls descriptor pattern which will only be
used if there is tls variable. So I suspect the go test regressions are
not caused by my patch.
Andreas, can you please double confirm this?
Thanks
--
Regards,
Jiong
More information about the Gcc-patches
mailing list