diff options
author | Mike Stump <mrs@gcc.gnu.org> | 2011-04-10 18:46:45 +0000 |
---|---|---|
committer | Mike Stump <mrs@gcc.gnu.org> | 2011-04-10 18:46:45 +0000 |
commit | dd5a833e6e86e0ed85af6e48aa460ebfc4665f5d (patch) | |
tree | bf95262adeb1e48387900226345da1050170321b /gcc/config/i386/i386.c | |
parent | 4b9726d48cc7eea7e51b51e00e3720104cd2774f (diff) | |
download | gcc-dd5a833e6e86e0ed85af6e48aa460ebfc4665f5d.zip gcc-dd5a833e6e86e0ed85af6e48aa460ebfc4665f5d.tar.gz gcc-dd5a833e6e86e0ed85af6e48aa460ebfc4665f5d.tar.bz2 |
Remove doubled up words.
From-SVN: r172247
Diffstat (limited to 'gcc/config/i386/i386.c')
-rw-r--r-- | gcc/config/i386/i386.c | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 2e17471..490d195 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -16249,7 +16249,7 @@ ix86_expand_unary_operator (enum rtx_code code, enum machine_mode mode, } /* Split 32bit/64bit divmod with 8bit unsigned divmod if dividend and - divisor are within the the range [0-255]. */ + divisor are within the range [0-255]. */ void ix86_split_idivmod (enum machine_mode mode, rtx operands[], @@ -16283,7 +16283,7 @@ ix86_split_idivmod (enum machine_mode mode, rtx operands[], scratch = gen_reg_rtx (mode); - /* Use 8bit unsigned divimod if dividend and divisor are within the + /* Use 8bit unsigned divimod if dividend and divisor are within the range [0-255]. */ emit_move_insn (scratch, operands[2]); scratch = expand_simple_binop (mode, IOR, scratch, operands[3], @@ -20984,23 +20984,24 @@ smallest_pow2_greater_than (int val) return ret; } -/* Expand string move (memcpy) operation. Use i386 string operations when - profitable. expand_setmem contains similar code. The code depends upon - architecture, block size and alignment, but always has the same - overall structure: +/* Expand string move (memcpy) operation. Use i386 string operations + when profitable. expand_setmem contains similar code. The code + depends upon architecture, block size and alignment, but always has + the same overall structure: 1) Prologue guard: Conditional that jumps up to epilogues for small - blocks that can be handled by epilogue alone. This is faster but - also needed for correctness, since prologue assume the block is larger - than the desired alignment. + blocks that can be handled by epilogue alone. This is faster + but also needed for correctness, since prologue assume the block + is larger than the desired alignment. Optional dynamic check for size and libcall for large blocks is emitted here too, with -minline-stringops-dynamically. - 2) Prologue: copy first few bytes in order to get destination aligned - to DESIRED_ALIGN. It is emitted only when ALIGN is less than - DESIRED_ALIGN and and up to DESIRED_ALIGN - ALIGN bytes can be copied. - We emit either a jump tree on power of two sized blocks, or a byte loop. + 2) Prologue: copy first few bytes in order to get destination + aligned to DESIRED_ALIGN. It is emitted only when ALIGN is less + than DESIRED_ALIGN and up to DESIRED_ALIGN - ALIGN bytes can be + copied. We emit either a jump tree on power of two sized + blocks, or a byte loop. 3) Main body: the copying loop itself, copying in SIZE_NEEDED chunks with specified algorithm. |