i386: Use parametrized pattern names some more.
authorUros Bizjak <ubizjak@gmail.com>
Mon, 17 Aug 2020 18:39:08 +0000 (20:39 +0200)
committerUros Bizjak <ubizjak@gmail.com>
Mon, 17 Aug 2020 18:41:14 +0000 (20:41 +0200)
commit9e026191547225ca02c1eda91f898271fced3bbf
tree4f8a00644ae9ee69a29b7cb4516cd8b527f3097b
parent26fdc47da756435f5411a858141521487478bcfa
i386: Use parametrized pattern names some more.

Use parameterized pattern names to simplify calling of named patterns.

2020-08-15  Uroš Bizjak  <ubizjak@gmail.com>

gcc/ChangeLog:

* config/i386/i386-builtin.def (__builtin_ia32_bextri_u32)
(__builtin_ia32_bextri_u64): Use CODE_FOR_nothing.
* config/i386/i386.md (@tbm_bextri_<mode>):
Implement as parametrized name pattern.
(@rdrand<mode>): Ditto.
(@rdseed<mode>): Ditto.
* config/i386/i386-expand.c (ix86_expand_builtin)
[case IX86_BUILTIN_BEXTRI32, case IX86_BUILTIN_BEXTRI64]:
Update for parameterized name patterns.
[case IX86_BUILTIN_RDRAND16_STEP, case IX86_BUILTIN_RDRAND32_STEP]
[case IX86_BUILTIN_RDRAND64_STEP]: Ditto.
[case IX86_BUILTIN_RDSEED16_STEP, case IX86_BUILTIN_RDSEED32_STEP]
[case IX86_BUILTIN_RDSEED64_STEP]: Ditto.

gcc/testsuite/ChangeLog:

* gcc.target/i386/rdrand-1.c (dg-final): Update scan string.
* gcc.target/i386/rdrand-2.c (dg-final): Ditto.
* gcc.target/i386/rdrand-3.c (dg-final): Ditto.
gcc/config/i386/i386-builtin.def
gcc/config/i386/i386-expand.c
gcc/config/i386/i386.md
gcc/testsuite/gcc.target/i386/rdrand-1.c
gcc/testsuite/gcc.target/i386/rdrand-2.c
gcc/testsuite/gcc.target/i386/rdrand-3.c