diff options
author | Roger Sayle <roger@nextmovesoftware.com> | 2020-06-29 17:33:23 +0100 |
---|---|---|
committer | Roger Sayle <roger@nextmovesoftware.com> | 2020-06-29 17:37:51 +0100 |
commit | 346bce6fe0cf1ed5f6a7ad732d2361d77b203c87 (patch) | |
tree | 72d205ac4385f305e7d5b52f1185c33c5025389e /gcc/cp | |
parent | 54980635c537f3130481da2d8b1109c775db8bb0 (diff) | |
download | gcc-346bce6fe0cf1ed5f6a7ad732d2361d77b203c87.zip gcc-346bce6fe0cf1ed5f6a7ad732d2361d77b203c87.tar.gz gcc-346bce6fe0cf1ed5f6a7ad732d2361d77b203c87.tar.bz2 |
middle-end: Optimize (A&C)^(B&C) to (A^B)&C in simplify_rtx (take 3).
2020-06-29 Roger Sayle <roger@nextmovesoftware.com>
gcc/ChangeLog:
* simplify-rtx.c (simplify_distributive_operation): New function
to un-distribute a binary operation of two binary operations.
(X & C) ^ (Y & C) to (X ^ Y) & C, when C is simple (i.e. a constant).
(simplify_binary_operation_1) <IOR, XOR, AND>: Call it from here
when appropriate.
(test_scalar_int_ops): New function for unit self-testing
scalar integer transformations in simplify-rtx.c.
(test_scalar_ops): Call test_scalar_int_ops for each integer mode.
(simplify_rtx_c_tests): Call test_scalar_ops.
Diffstat (limited to 'gcc/cp')
0 files changed, 0 insertions, 0 deletions