diff options
| author | 2018-03-15 19:03:32 +0000 | |
|---|---|---|
| committer | 2018-03-15 19:03:32 +0000 | |
| commit | fd6b6652a5aef6be516a13710fbb393763b3e1ca (patch) | |
| tree | 5ae07b5f57a6ec85bd0fbf0788dc13c17e9a1aa0 /compiler/optimizing/loop_optimization.h | |
| parent | c12db71687e60534e13b875119145b975ee9a018 (diff) | |
| parent | 29aa08219ff72409e9f10ae2a5da4e6e604baad1 (diff) | |
Merge "Vectorization of saturation arithmetic."
Diffstat (limited to 'compiler/optimizing/loop_optimization.h')
| -rw-r--r-- | compiler/optimizing/loop_optimization.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/optimizing/loop_optimization.h b/compiler/optimizing/loop_optimization.h index a707ad1358..9414e5a0c6 100644 --- a/compiler/optimizing/loop_optimization.h +++ b/compiler/optimizing/loop_optimization.h @@ -80,6 +80,7 @@ class HLoopOptimization : public HOptimization { kNoReduction = 1 << 10, // no reduction kNoSAD = 1 << 11, // no sum of absolute differences (SAD) kNoWideSAD = 1 << 12, // no sum of absolute differences (SAD) with operand widening + kNoSaturation = 1 << 13, // no saturation arithmetic }; /* @@ -177,6 +178,11 @@ class HLoopOptimization : public HOptimization { bool is_unsigned = false); // Vectorization idioms. + bool VectorizeSaturationIdiom(LoopNode* node, + HInstruction* instruction, + bool generate_code, + DataType::Type type, + uint64_t restrictions); bool VectorizeHalvingAddIdiom(LoopNode* node, HInstruction* instruction, bool generate_code, |