summaryrefslogtreecommitdiff
path: root/compiler/optimizing/codegen_test_utils.h
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2017-09-28 16:32:24 +0100
committerVladimir Marko <vmarko@google.com>2017-09-29 11:24:51 +0100
commit7033d49488c75321ff2e40b26447722ae069c726 (patch)
treeb4474ffba397cbd05bd448e22595c44024a305ca /compiler/optimizing/codegen_test_utils.h
parent6e7e0ddf1dda35570cd9ed23751d9306f7353d7f (diff)
ART: Generalize "x >> (s & m)" simplification.
Extend the simplification from x SHIFT (s & mask), mask contains relevant bits where SHIFT is Shl/Shr/UShr/Ror to x SHIFT (s | mask), mask does not contain relevant bits, x SHIFT (s ^ mask), mask does not contain relevant bits, x SHIFT (s + mask), mask does not contain relevant bits, x SHIFT (s - mask), mask does not contain relevant bits, x SHIFT ((type)s), s is non-64-bit integral type. The simplification for the TypeConversion case is motivated by the work to introduce Uint8 and convert '& 0xff' to TypeConversion. This CL makes sure the old simplifications shall still work. The simplifications for Or/Xor/Add/Sub are added just because we can. Test: Add tests to 548-checker-instruct-simplification. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Bug: 23964345 Change-Id: I71210cb63496fae607a457a627f115260669c2c9
Diffstat (limited to 'compiler/optimizing/codegen_test_utils.h')
0 files changed, 0 insertions, 0 deletions