Hi, I back-ported following changes to ARM/embedded-4_6-branch.
Thanks. r188418 | amker | 2012-06-12 11:10:55 +0800 (二, 12 6月 2012) | 25 lines Backport r180986 from mainline 2011-11-04 Eric Botcazou <ebotca...@adacore.com> PR c++/50608 * c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1. (fold_offsetof_1): Make global. Remove STOP_REF argument and adjust. <INDIRECT_REF>: Return the argument. <ARRAY_REF>: Remove special code for negative offset. Call fold_build_pointer_plus instead of size_binop. (fold_offsetof): Remove STOP_REF argument and adjust. * c-common.h (fold_offsetof_1): Declare. (fold_offsetof): Remove STOP_REF argument. PR c++/50608 * c-parser.c (c_parser_postfix_expression) <RID_OFFSETOF>: Adjust call to fold_offsetof. * c-typeck.c (build_unary_op) <ADDR_EXPR>: Call fold_offsetof_1. * g++.dg/other/offsetof7.C: New test. PR c++/50608 * semantics.c (finish_offsetof): Adjust call to fold_offsetof. * typeck.c (cp_build_addr_expr_1): Call fold_offsetof_1. ------------------------------------------------------------------------ r188416 | amker | 2012-06-12 10:50:34 +0800 (二, 12 6月 2012) | 7 lines Backport r180240 from mainline 2011-10-20 Ramana Radhakrishnan <ramana.radhakrish...@linaro.org> PR target/50106 * config/arm/arm.c (thumb_unexpanded_epilogue): Handle return reg size from 1-3. ------------------------------------------------------------------------ r188415 | amker | 2012-06-12 10:45:23 +0800 (二, 12 6月 2012) | 11 lines Backport r179389 from mainline 2011-09-30 Jakub Jelinek <ja...@redhat.com> PR inline-asm/50571 * gimple-fold.c (fold_stmt_1) <case GIMPLE_ASM>: If input constraints allow mem and not reg, pass true instead of false as second argument to maybe_fold_reference. * gcc.dg/pr50571.c: New test. ------------------------------------------------------------------------ r188414 | amker | 2012-06-12 10:33:23 +0800 (二, 12 6月 2012) | 10 lines Backport r179200 from GCC-4.6 branch 2011-09-26 Richard Guenther <rguent...@suse.de> PR tree-optimization/50472 * tree-ssa-ccp.c (fold_const_aggregate_ref): Do not fold volatile references. PR tree-optimization/50472 * gcc.dg/torture/pr50472.c: New testcase.