Mercurial > hg > CbC > CbC_gcc
comparison gcc/combine-stack-adj.c @ 67:f6334be47118
update gcc from gcc-4.6-20100522 to gcc-4.6-20110318
author | nobuyasu <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 22 Mar 2011 17:18:12 +0900 |
parents | 77e2b8dfacca |
children | 04ced10e8804 |
comparison
equal
deleted
inserted
replaced
65:65488c3d617d | 67:f6334be47118 |
---|---|
1 /* Combine stack adjustments. | 1 /* Combine stack adjustments. |
2 Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, | 2 Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, |
3 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 | 3 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, |
4 Free Software Foundation, Inc. | 4 2010 Free Software Foundation, Inc. |
5 | 5 |
6 This file is part of GCC. | 6 This file is part of GCC. |
7 | 7 |
8 GCC is free software; you can redistribute it and/or modify it under | 8 GCC is free software; you can redistribute it and/or modify it under |
9 the terms of the GNU General Public License as published by the Free | 9 the terms of the GNU General Public License as published by the Free |
55 #include "function.h" | 55 #include "function.h" |
56 #include "expr.h" | 56 #include "expr.h" |
57 #include "basic-block.h" | 57 #include "basic-block.h" |
58 #include "df.h" | 58 #include "df.h" |
59 #include "except.h" | 59 #include "except.h" |
60 #include "toplev.h" | |
61 #include "reload.h" | 60 #include "reload.h" |
62 #include "timevar.h" | 61 #include "timevar.h" |
63 #include "tree-pass.h" | 62 #include "tree-pass.h" |
64 | 63 |
65 | 64 |
544 | 543 |
545 | 544 |
546 static bool | 545 static bool |
547 gate_handle_stack_adjustments (void) | 546 gate_handle_stack_adjustments (void) |
548 { | 547 { |
549 return (optimize > 0); | 548 return flag_combine_stack_adjustments; |
550 } | 549 } |
551 | 550 |
552 static unsigned int | 551 static unsigned int |
553 rest_of_handle_stack_adjustments (void) | 552 rest_of_handle_stack_adjustments (void) |
554 { | 553 { |
555 cleanup_cfg (flag_crossjumping ? CLEANUP_CROSSJUMP : 0); | 554 cleanup_cfg (flag_crossjumping ? CLEANUP_CROSSJUMP : 0); |
556 | 555 |
557 /* This is kind of a heuristic. We need to run combine_stack_adjustments | 556 /* This is kind of a heuristic. We need to run combine_stack_adjustments |
558 even for machines with possibly nonzero RETURN_POPS_ARGS | 557 even for machines with possibly nonzero TARGET_RETURN_POPS_ARGS |
559 and ACCUMULATE_OUTGOING_ARGS. We expect that only ports having | 558 and ACCUMULATE_OUTGOING_ARGS. We expect that only ports having |
560 push instructions will have popping returns. */ | 559 push instructions will have popping returns. */ |
561 #ifndef PUSH_ROUNDING | 560 #ifndef PUSH_ROUNDING |
562 if (!ACCUMULATE_OUTGOING_ARGS) | 561 if (!ACCUMULATE_OUTGOING_ARGS) |
563 #endif | 562 #endif |