[PATCH, ARM] Further improve stack usage on sha512 (PR 77308)

Bernd Edlinger bernd.edlinger@hotmail.de
Wed Jan 11 17:19:00 GMT 2017


On 01/11/17 17:55, Richard Earnshaw (lists) wrote:
>
> Sorry for the delay getting around to this.
>
> I just tried this patch and found that it doesn't apply.  Furthermore,
> there's not enough context in the rejected hunks for me to be certain
> which patterns you're trying to fix up.
>
> Could you do an update please?
>

Sure, I just gave up pinging, as we are rather late in stage 3
already...

So the current status is this:

I have the invalid code issue here; it is independent of the
optimization issues:

[PATCH, ARM] correctly encode the CC reg data flow
https://gcc.gnu.org/ml/gcc-patches/2016-12/msg01562.html

Then I have the patch for splitting the most important
64bit patterns here:

[PATCH, ARM] Further improve stack usage on sha512 (PR 77308)
https://gcc.gnu.org/ml/gcc-patches/2016-11/msg02796.html

and the follow-up patch that triggered the invalid code here:

[PATCH, ARM] Further improve stack usage in sha512, part 2 (PR 77308)
https://gcc.gnu.org/ml/gcc-patches/2016-12/msg01563.html

In the last part I had initially this hunk,
-    operands[2] = gen_lowpart (SImode, operands[2]);
+    if (can_create_pseudo_p ())
+      operands[2] = gen_reg_rtx (SImode);
+    else
+      operands[2] = gen_lowpart (SImode, operands[2]);

As Wilco pointed out that the else part is superfluous,
I already removed the gen_lowpart stuff locally.

All three parts should apply to trunk, only the last part
depends on both earlier patches.


Thanks
Bernd.



More information about the Gcc-patches mailing list