HomePhabricator

[ARM] Optimize {s,u}{add,sub}.with.overflow.

Authored by jgalenson on Jan 17 2018, 11:19 AM.

Description

[ARM] Optimize {s,u}{add,sub}.with.overflow.

The ARM backend contains code that tries to optimize compares by replacing them with an existing instruction that sets the flags the same way. This allows it to replace a "cmp" with a "adds", generalizing the code that replaces "cmp" with "sub". It also heuristically disables sinking of instructions that could potentially be used to replace compares (currently only if they're next to each other).

Differential revision: https://reviews.llvm.org/D38378

llvm-svn: 322737

Details

Committed
jgalensonJan 17 2018, 11:19 AM
Differential Revision
D38378: [ARM] Optimize {s,u}{add,sub}.with.overflow.
Parents
rG727f153b6fe2: [coff] Print detailed timing information with /TIME.
Branches
Unknown
Tags
Unknown