* i386.md (memstr): Do not use rep stosb for counts divisible by 4 when optimize_size. (clrstrsi): Rewrite. (strsethi, strsetqi): New expanders. (strsethi_1, strsetqi_1, rep_stossi, rep_stosqi): New insn patterns. (cmpstrsi): Emit compare insn before cmpstrsi_1 (cmpstrsi_nz): use flags, set type to str, prefix_length to 1. (strlensi_1): Likewise. (cmpstrsi_1): Likewise; do not output compare. (strlen expander): Do not unroll when optimizing for size. (*subsi3_carry): Rename to subsi3_carry (addqi3_cc): New pattern. * i386.h (processor_costs): Add move_ratio field. (MOVE_RATIO): Use move_ratio field, set to 3 for OPTIMIZE_SIZE * i386.c (*_cost): Set move_ratio. (x86_unroll_strlen): Enable for Athlon, PPro and K6 too. (x86_expand_strlensi_1): Rewrite the main loop. From-SVN: r31488
| Name |
Last commit
|
Last update |
|---|---|---|
| INSTALL | Loading commit data... | |
| boehm-gc | Loading commit data... | |
| config | Loading commit data... | |
| contrib | Loading commit data... | |
| etc | Loading commit data... | |
| gcc | Loading commit data... | |
| include | Loading commit data... | |
| libchill | Loading commit data... | |
| libf2c | Loading commit data... | |
| libffi | Loading commit data... | |
| libiberty | Loading commit data... | |
| libio | Loading commit data... | |
| libjava | Loading commit data... | |
| libobjc | Loading commit data... | |
| libstdc++ | Loading commit data... | |
| texinfo | Loading commit data... | |
| zlib | Loading commit data... | |
| .cvsignore | Loading commit data... | |
| COPYING | Loading commit data... | |
| COPYING.LIB | Loading commit data... | |
| ChangeLog | Loading commit data... | |
| MAINTAINERS | Loading commit data... | |
| Makefile.in | Loading commit data... | |
| README | Loading commit data... | |
| config-ml.in | Loading commit data... | |
| config.guess | Loading commit data... | |
| config.if | Loading commit data... | |
| config.sub | Loading commit data... | |
| configure | Loading commit data... | |
| configure.in | Loading commit data... | |
| install-sh | Loading commit data... | |
| ltconfig | Loading commit data... | |
| ltmain.sh | Loading commit data... | |
| missing | Loading commit data... | |
| mkinstalldirs | Loading commit data... | |
| move-if-change | Loading commit data... | |
| symlink-tree | Loading commit data... | |
| ylwrap | Loading commit data... |