[Bug rtl-optimization/64037] [4.8/4.9/5 Regression] Miscompilation with -Os and enum class : char parameter

hjl at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Dec 14 16:04:00 GMT 2014


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64037

--- Comment #24 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> ---
Author: hjl
Date: Sun Dec 14 16:04:11 2014
New Revision: 218720

URL: https://gcc.gnu.org/viewcvs?rev=218720&root=gcc&view=rev
Log:
Pass unpromoted argument to promote_function_mode

This patch updates setup_incoming_promotions in combine.c to match what
is actually passed in assign_parm_setup_reg in function.c.

gcc/

    PR rtl-optimization/64037
    * combine.c (setup_incoming_promotions): Pass the argument
    before any promotions happen to promote_function_mode.

gcc/testsuite/

    PR rtl-optimization/64037
    * g++.dg/pr64037.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/pr64037.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/combine.c
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-bugs mailing list