Advertisement
Guest User

pr64818-combine-user-specified-register-4.9-2015q1.patch

a guest
Mar 25th, 2015
259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 0.89 KB | None | 0 0
  1. --- gcc-arm-none-eabi-4_9-2015q1-20150306/src/gcc/gcc/combine.c.old 2015-01-13 18:14:51.000000000 +0100
  2. +++ gcc-arm-none-eabi-4_9-2015q1-20150306/src/gcc/gcc/combine.c 2015-03-25 11:29:04.869039426 +0100
  3. @@ -1835,6 +1835,14 @@
  4.    set = expand_field_assignment (set);
  5.    src = SET_SRC (set), dest = SET_DEST (set);
  6.  
  7. +  /* Use REG_USERVAR_P and HARD_REGISTER_P to check whether DEST is a user
  8. +     specified register, and do not eliminate such register if it is in an
  9. +     asm input.  Otherwise if allow such elimination, we may break the
  10. +     register asm usage defined in GCC manual.  */
  11. +  if (REG_P (dest) && REG_USERVAR_P (dest) && HARD_REGISTER_P (dest)
  12. +      && extract_asm_operands (PATTERN (i3)))
  13. +    return 0;
  14. +
  15.    /* Don't eliminate a store in the stack pointer.  */
  16.    if (dest == stack_pointer_rtx
  17.        /* Don't combine with an insn that sets a register to itself if it has
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement