Commit 9e8be1e4 by Hariharan Sandanagobalane Committed by Hariharan Sandanagobalane

picochip.c (flag_conserve_stack): set PARAM_LARGE_STACK_FRAME and…

picochip.c (flag_conserve_stack): set PARAM_LARGE_STACK_FRAME and PARAM_STACK_FRAME_GROWTH to zero under...

        * config/picochip/picochip.c (flag_conserve_stack): set
        PARAM_LARGE_STACK_FRAME and PARAM_STACK_FRAME_GROWTH to zero under
        fconserve-stack. Reduce call-overhead used by inliner.

From-SVN: r143785
parent df9198ab
Hariharan Sandanagobalane <hariharan@picochip.com>
* config/picochip/picochip.c (flag_conserve_stack): set
PARAM_LARGE_STACK_FRAME and PARAM_STACK_FRAME_GROWTH to zero under
fconserve-stack. Reduce call-overhead used by inliner.
Hariharan Sandanagobalane <hariharan@picochip.com>
PR/38157
* common.opt (flag_conserve_stack): Initialised to zero.
......
......@@ -50,6 +50,7 @@ along with GCC; see the file COPYING3. If not, see
#include "target-def.h"
#include "langhooks.h"
#include "reload.h"
#include "params.h"
#include "picochip-protos.h"
......@@ -303,6 +304,16 @@ picochip_return_in_memory(const_tree type, const_tree fntype ATTRIBUTE_UNUSED)
void
picochip_override_options (void)
{
/* If we are optimizing for stack, dont let inliner to inline functions
that could potentially increase stack size.*/
if (flag_conserve_stack)
{
PARAM_VALUE (PARAM_LARGE_STACK_FRAME) = 0;
PARAM_VALUE (PARAM_STACK_FRAME_GROWTH) = 0;
}
/* The function call overhead on picochip is not very high. Let the
inliner know so its heuristics become more reasonable. */
PARAM_VALUE (PARAM_INLINE_CALL_COST) = 2;
/* Turn off the elimination of unused types. The elaborator
generates various interesting types to represent constants,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment