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
This commit is contained in:
Hariharan Sandanagobalane 2009-01-30 10:25:54 +00:00 committed by Hariharan Sandanagobalane
parent df9198abb2
commit 9e8be1e49e
2 changed files with 17 additions and 0 deletions

View File

@ -1,3 +1,9 @@
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

View File

@ -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,