This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] Change EON pattern to match more often.
ClosedPublic

Authored by gberry on Jul 20 2015, 9:57 AM.

Details

Summary

Change EON pattern to match pattern after DAG reassociation.

Fixes bug PR22751 (https://llvm.org/bugs/show_bug.cgi?id=22751).

Diff Detail

Event Timeline

gberry updated this revision to Diff 30167.Jul 20 2015, 9:57 AM
gberry retitled this revision from to [AArch64] Change EON pattern to match more often..
gberry updated this object.
gberry added reviewers: jmolloy, t.p.northover.
gberry added subscribers: llvm-commits, mcrosier.

The code change seems reasonable -- DAGCombine seems to canonicalise even simple examples to this form. But the tests are a little shaky:

test/CodeGen/AArch64/eon.ll
6

This is almost certainly too weak. It'll grab the f from ".file", and even if it didn't do that it often matches the ".size complex_function_name, .Lcomplex_function_name_end0 - complex_function_name".

I usually find "CHECK-LABEL: f:" works better, colons are far less common in assembly.

gberry updated this revision to Diff 30177.Jul 20 2015, 11:29 AM
gberry edited edge metadata.

Fix test CHECK-LABELs to be more discriminating.

t.p.northover accepted this revision.Jul 20 2015, 11:31 AM
t.p.northover edited edge metadata.

LGTM. Thanks!

Tim.

This revision is now accepted and ready to land.Jul 20 2015, 11:31 AM
mcrosier closed this revision.Jul 20 2015, 11:43 AM

Committed revision 242694.