summaryrefslogtreecommitdiff
path: root/compiler/optimizing/graph_visualizer.h
diff options
context:
space:
mode:
author Aditya Deshpande <aditya.deshpande@linaro.org> 2021-05-19 17:29:00 +0100
committer Vladimir Marko <vmarko@google.com> 2021-10-21 12:37:09 +0000
commitc498a1de3de1b36baebfd7b69b0af7fb4947d58e (patch)
tree9f34ab6d331ac438b43c2f4c1a01965a4ba11877 /compiler/optimizing/graph_visualizer.h
parent0a12631fd5364d5908d59ea476bea075019ebecd (diff)
ART: Redundant AND operation removal optimization
In the following code: b[i + length] = (byte) ((value & 0xff00) >> 8); The AND operation is redundant because the lowest 8 bits will be removed by the 8 bits right shift. This optimization covers cases where a subsequent SHR and Type Conversion (from Int and Short --> Byte make an AND redundant. In such cases, the AND operation is removed. Patch also includes tests. This patch covers only signed types. Unsigned types will be supported in a future patch. This optimization brings 3.3% perf increase on FFTBench workload. Test: ./scripts/tests/test_art_target.sh --single-test\ 458-checker-instruct-simplification Can also use test_art_host.sh with same option as above. Author: Aditya Deshpande. Committer: Artem Serov. Change-Id: I50b87576a3f998100feefc0e5df65b7b343d87e6
Diffstat (limited to 'compiler/optimizing/graph_visualizer.h')
0 files changed, 0 insertions, 0 deletions