OSDN Git Service

* i386.md (load_tp_di): Fix pasto.
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 16 Jan 2004 18:53:51 +0000 (18:53 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 16 Jan 2004 18:53:51 +0000 (18:53 +0000)
PR opt/13608
* i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.

* c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator,
pp_c_character_constant, pp_c_floating_constant,
pp_c_additive_expression, pp_c_shift_expression,
pp_c_equality_expression, pp_c_and_expression,
pp_c_exclusive_or_expression, pp_c_inclusive_or_expression,
pp_c_logical_and_expression): Remove inline modifier.
* dwarf2out.c (get_AT): Likewise.
* et-forest.c (et_splay): Likewise.
* ra.h (ra_alloc, ra_calloc): Likewise

* mangle.c (write_mangled_name): Remove inline modifier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@75988 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/c-pretty-print.c
gcc/config/i386/i386.c
gcc/config/i386/i386.md
gcc/cp/ChangeLog
gcc/cp/mangle.c
gcc/dwarf2out.c
gcc/et-forest.c
gcc/haifa-sched.c
gcc/ra.h

index 39eaeba..522fb91 100644 (file)
@@ -1,3 +1,20 @@
+2004-01-16  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (load_tp_di): Fix pasto.
+
+       PR opt/13608
+       * i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.
+
+       * c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator,
+       pp_c_character_constant, pp_c_floating_constant,
+       pp_c_additive_expression, pp_c_shift_expression,
+       pp_c_equality_expression, pp_c_and_expression,
+       pp_c_exclusive_or_expression, pp_c_inclusive_or_expression,
+       pp_c_logical_and_expression): Remove inline modifier.
+       * dwarf2out.c (get_AT): Likewise.
+       * et-forest.c (et_splay): Likewise.
+       * ra.h (ra_alloc, ra_calloc): Likewise
+
 2004-01-16  Kazu Hirata  <kazu@cs.umass.edu>
 
        * config/frv/frv-protos.h: Fix comment formatting.
index 1c1f77b..2083db1 100644 (file)
@@ -157,7 +157,7 @@ pp_c_cv_qualifier (c_pretty_printer *pp, const char *cv)
 
 /* Pretty-print T using the type-cast notation '( type-name )'.  */
 
-static inline void
+static void
 pp_c_type_cast (c_pretty_printer *pp, tree t)
 {
   pp_c_left_paren (pp);
@@ -417,7 +417,7 @@ pp_c_parameter_type_list (c_pretty_printer *pp, tree t)
       pointer
       pointer(opt) direct-abstract-declarator  */
 
-static inline void
+static void
 pp_c_abstract_declarator (c_pretty_printer *pp, tree t)
 {
   if (TREE_CODE (t) == POINTER_TYPE)
@@ -768,7 +768,7 @@ pp_c_integer_constant (c_pretty_printer *pp, tree i)
 
 /* Print out a CHARACTER literal.  */
 
-static inline void
+static void
 pp_c_character_constant (c_pretty_printer *pp, tree c)
 {
   tree type = TREE_TYPE (c);
@@ -843,7 +843,7 @@ pp_c_enumeration_constant (c_pretty_printer *pp, tree e)
 
 /* Print out a REAL value as a decimal-floating-constant.  */
 
-static inline void
+static void
 pp_c_floating_constant (c_pretty_printer *pp, tree r)
 {
   real_to_decimal (pp_buffer (pp)->digit_buffer, &TREE_REAL_CST (r),
@@ -1402,7 +1402,7 @@ pp_c_multiplicative_expression (c_pretty_printer *pp, tree e)
       additive-expression + multiplicative-expression
       additive-expression - multiplicative-expression   */
 
-static inline void
+static void
 pp_c_additive_expression (c_pretty_printer *pp, tree e)
 {
   enum tree_code code = TREE_CODE (e);
@@ -1431,7 +1431,7 @@ pp_c_additive_expression (c_pretty_printer *pp, tree e)
       shift-expression << additive-expression
       shift-expression >> additive-expression   */
 
-static inline void
+static void
 pp_c_shift_expression (c_pretty_printer *pp, tree e)
 {
   enum tree_code code = TREE_CODE (e);
@@ -1493,7 +1493,7 @@ pp_c_relational_expression (c_pretty_printer *pp, tree e)
       equality-expression == relational-expression
       equality-equality != relational-expression  */
 
-static inline void
+static void
 pp_c_equality_expression (c_pretty_printer *pp, tree e)
 {
   enum tree_code code = TREE_CODE (e);
@@ -1518,7 +1518,7 @@ pp_c_equality_expression (c_pretty_printer *pp, tree e)
       equality-expression
       AND-expression & equality-equality   */
 
-static inline void
+static void
 pp_c_and_expression (c_pretty_printer *pp, tree e)
 {
   if (TREE_CODE (e) == BIT_AND_EXPR)
@@ -1537,7 +1537,7 @@ pp_c_and_expression (c_pretty_printer *pp, tree e)
      AND-expression
      exclusive-OR-expression ^ AND-expression  */
 
-static inline void
+static void
 pp_c_exclusive_or_expression (c_pretty_printer *pp, tree e)
 {
   if (TREE_CODE (e) == BIT_XOR_EXPR)
@@ -1556,7 +1556,7 @@ pp_c_exclusive_or_expression (c_pretty_printer *pp, tree e)
      exclusive-OR-expression
      inclusive-OR-expression | exclusive-OR-expression  */
 
-static inline void
+static void
 pp_c_inclusive_or_expression (c_pretty_printer *pp, tree e)
 {
   if (TREE_CODE (e) == BIT_IOR_EXPR)
@@ -1575,7 +1575,7 @@ pp_c_inclusive_or_expression (c_pretty_printer *pp, tree e)
       inclusive-OR-expression
       logical-AND-expression && inclusive-OR-expression  */
 
-static inline void
+static void
 pp_c_logical_and_expression (c_pretty_printer *pp, tree e)
 {
   if (TREE_CODE (e) == TRUTH_ANDIF_EXPR)
index 42dfca0..b7c7008 100644 (file)
@@ -5029,8 +5029,12 @@ ix86_compute_frame_layout (struct ix86_frame *frame)
   offset += size;
 
   /* Add outgoing arguments area.  Can be skipped if we eliminated
-     all the function calls as dead code.  */
-  if (ACCUMULATE_OUTGOING_ARGS && !current_function_is_leaf)
+     all the function calls as dead code.
+     Skipping is however impossible when function calls alloca.  Alloca
+     expander assumes that last current_function_outgoing_args_size
+     of stack frame are unused.  */
+  if (ACCUMULATE_OUTGOING_ARGS
+      && (!current_function_is_leaf || current_function_calls_alloca))
     {
       offset += current_function_outgoing_args_size;
       frame->outgoing_arguments_size = current_function_outgoing_args_size;
index 36c3dc4..72dff86 100644 (file)
   [(set (match_operand:DI 0 "register_operand" "=r")
        (unspec:DI [(const_int 0)] UNSPEC_TP))]
   "TARGET_64BIT"
-  "mov{l}\t{%%fs:0, %0|%0, QWORD PTR %%fs:0}"
+  "mov{q}\t{%%fs:0, %0|%0, QWORD PTR %%fs:0}"
   [(set_attr "type" "imov")
    (set_attr "modrm" "0")
    (set_attr "length" "7")
index 06733cc..c773f16 100644 (file)
@@ -1,3 +1,7 @@
+2004-01-16  Jan Hubicka  <jh@suse.cz>
+
+       * mangle.c (write_mangled_name): Remove inline modifier.
+
 2004-01-16  Mark Mitchell  <mark@codesourcery.com>
 
        PR c++/13178
index b34c309..a1810d3 100644 (file)
@@ -608,7 +608,7 @@ find_substitution (tree node)
   
   <mangled-name>      ::= _Z <encoding>  */
 
-static inline void
+static void
 write_mangled_name (const tree decl, bool top_level)
 {
   MANGLE_TRACE_TREE ("mangled-name", decl);
index 6e45394..77d5fd2 100644 (file)
@@ -4870,7 +4870,7 @@ AT_lbl (dw_attr_ref a)
 
 /* Get the attribute of type attr_kind.  */
 
-static inline dw_attr_ref
+static dw_attr_ref
 get_AT (dw_die_ref die, enum dwarf_attribute attr_kind)
 {
   dw_attr_ref a;
index ea7793f..dfc05a3 100644 (file)
@@ -312,7 +312,7 @@ check_path_after (struct et_occ *occ)
 
 /* Splay the occurence OCC to the root of the tree.  */
 
-static inline void
+static void
 et_splay (struct et_occ *occ)
 {
   struct et_occ *f, *gf, *ggf;
index 5e11b39..d55c1c7 100644 (file)
@@ -732,7 +732,7 @@ actual_hazard_this_instance (int unit, int instance, rtx insn, int clock, int co
    at time CLOCK.  The scheduler using only DFA description should
    never use the following function.  */
 
-HAIFA_INLINE static void
+static void
 schedule_unit (int unit, rtx insn, int clock)
 {
   int i;
@@ -764,7 +764,7 @@ schedule_unit (int unit, rtx insn, int clock)
    was COST.  The scheduler using only DFA description should never
    use the following function.  */
 
-HAIFA_INLINE static int
+static int
 actual_hazard (int unit, rtx insn, int clock, int cost)
 {
   int i;
index 53085e1..a746d91 100644 (file)
--- a/gcc/ra.h
+++ b/gcc/ra.h
@@ -569,8 +569,8 @@ extern int flag_ra_spill_every_use;
 /* Nonzero to output all notes in the debug dumps.  */
 extern int flag_ra_dump_notes;
 
-extern inline void * ra_alloc (size_t);
-extern inline void * ra_calloc (size_t);
+extern void * ra_alloc (size_t);
+extern void * ra_calloc (size_t);
 extern int hard_regs_count (HARD_REG_SET);
 extern rtx ra_emit_move_insn (rtx, rtx);
 extern void ra_debug_msg (unsigned int, const char *, ...) ATTRIBUTE_PRINTF_2;