Having a constant value operand in the compound instruction
is not always profitable. This patch improves coremark by ~4% on
Hexagon.
Details
Details
Diff Detail
Diff Detail
- Repository
 - rL LLVM
 
Event Timeline
| lib/Target/Hexagon/HexagonPatterns.td | ||
|---|---|---|
| 262 ↗ | (On Diff #169257) | Those are not the instructions you're trying to avoid.  | 
| 268 ↗ | (On Diff #169257) | Please change the name to something shorter, e.g. Su_ni, or Su_ni1 to indicate that it only checks operand(1).  | 
| test/CodeGen/Hexagon/constant_compound.ll | ||
| 19 ↗ | (On Diff #169257) | Please run -instnamer on this testcase.  | 
| 50 ↗ | (On Diff #169257) | Please remove all attributes except nounwind, readnone, and target-cpu/target-features. Remove -long-calls from target-features.  | 
| lib/Target/Hexagon/HexagonPatterns.td | ||
|---|---|---|
| 262 ↗ | (On Diff #169257) | You are correct. These are the instructions, that need to be avoided.  | 
| lib/Target/Hexagon/HexagonPatterns.td | ||
|---|---|---|
| 1363 ↗ | (On Diff #169274) | Please fix the indentation before committing.  |