[PTR-PLUS] Fix powerpc64-linux-gnu bootstrap and all testcases

Andrew_Pinski@PlayStation.Sony.Com Andrew_Pinski@PlayStation.Sony.Com
Tue May 15 21:39:00 GMT 2007


Hi,
  THe issue is here is mostly PLUS_EXPR was being used for pointer 
addition which is no longer valid.  This fixes those cases in both the 
rs6000 backend and one more case in the fortran front-end.  The stdargs 
testcase was failing because I changed tree-stdarg.c too much to check for 
POINTER_PLUS_EXPR when it should check for both.  This patch fixes those 
three problems.

Committed to the branch after a bootstrap/test on powerpc64-linux-gnu with 
no regressions.

Thanks,
Andrew Pinski

ChangeLog:
        * config/rs6000/rs6000.c (rs6000_va_start): Use POINTER_PLUS_EXPR
        instead of PLUS_EXPR for pointer addition.
        (rs6000_va_start): Likewise.
        Also use sizetype for the offset.
        * tree-stdarg.c (va_list_counter_bump): Check for PLUS_EXPR
        and POINTER_PLUS_EXPR.
        (check_va_list_escapes): Likewise.


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: fixppc64.diff.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20070515/460c0db3/attachment.txt>


More information about the Gcc-patches mailing list