diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2011-07-31 19:50:08 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2011-07-31 19:50:08 +0200 |
commit | deb1f6171dd2d87bdf5f7d76b69336126aaa9cc9 (patch) | |
tree | 3b737a65716e966b955f7fa5d5efa360c774f2b5 /gcc/final.c | |
parent | ba4a11ba527c82438130de74c0e9ebdd9f55fde8 (diff) | |
download | gcc-deb1f6171dd2d87bdf5f7d76b69336126aaa9cc9.zip gcc-deb1f6171dd2d87bdf5f7d76b69336126aaa9cc9.tar.gz gcc-deb1f6171dd2d87bdf5f7d76b69336126aaa9cc9.tar.bz2 |
re PR target/49920 (unable to find a register to spill in class ‘DIREG’)
PR target/49920
* config/i386/i386.md (strset): Do not expand strset_singleop
when %eax or $edi are fixed.
(*strsetdi_rex_1): Disable when %eax or %edi are fixed.
(*strsetsi_1): Ditto.
(*strsethi_1): Ditto.
(*strsetqi_1): Ditto.
(*rep_stosdi_rex64): Disable when %eax, %ecx or %edi are fixed.
(*rep_stossi): Ditto.
(*rep_stosqi): Ditto.
(cmpstrnsi): Also fail when %ecx is fixed.
(*cmpstrnqi_nz_1): Disable when %ecx, %esi or %edi are fixed.
(*cmpstrnqi_1): Ditto.
(*strlenqi_1): Ditto.
(*strmovdi_rex_1): Disable when %esi or %edi are fixed.
(*strmovsi_1): Ditto.
(*strmovhi_1): Ditto.
(*strmovqi_1): Ditto.
(*rep_movdi_rex64): Disable when %ecx, %esi or %edi are fixed.
(*rep_movsi): Ditto.
(*rep_movqi): Ditto.
testsuite/ChangeLog:
PR target/49920
* gcc.target/i386/pr49920.c: New test.
From-SVN: r176979
Diffstat (limited to 'gcc/final.c')
0 files changed, 0 insertions, 0 deletions