diff options
| author | Pan Li <pan2.li@intel.com> | 2025-11-06 13:19:20 +0800 |
|---|---|---|
| committer | Pan Li <pan2.li@intel.com> | 2025-11-07 20:24:27 +0800 |
| commit | 0376ac1da3d9125276c427dcb17b2d7db2cbe18f (patch) | |
| tree | 96d207955d88f7ac514576391b23febb2f63167a /libjava/java/security/Engine.java | |
| parent | dd305514bbca46a39d020018e1bef0cfa15c99c8 (diff) | |
| download | gcc-0376ac1da3d9125276c427dcb17b2d7db2cbe18f.zip gcc-0376ac1da3d9125276c427dcb17b2d7db2cbe18f.tar.gz gcc-0376ac1da3d9125276c427dcb17b2d7db2cbe18f.tar.bz2 | |
Match: Refactor bit_ior based unsigned SAT_MUL pattern by widen mul helper [NFC]
There are 3 kinds of widen_mul during the unsigned SAT_MUL pattern, aka
* widen_mul directly, like _3 w* _4
* convert and the widen_mul, like (uint64_t)_3 *w (uint64_t)_4
* convert and then mul, like (uint64_t)_3 * (uint64_t)_4
All of them will be referenced during different forms of unsigned
SAT_MUL pattern match, but actually we can wrap them into a helper
which present the "widening_mul" sematics. With this helper, some
unnecessary pattern and duplicated code could be eliminated. Like
min based pattern, this patch focus on bit_ior based pattern.
The below test suites are passed for this patch:
1. The rv64gcv fully regression tests.
2. The x86 bootstrap tests.
3. The x86 fully regression tests.
gcc/ChangeLog:
* match.pd: Leverage usmul_widen_mult by bit_ior based
unsigned SAT_MUL pattern.
Signed-off-by: Pan Li <pan2.li@intel.com>
Diffstat (limited to 'libjava/java/security/Engine.java')
0 files changed, 0 insertions, 0 deletions
