Commit 965514bd by Jan Hubicka Committed by Jan Hubicka

re PR target/13608 (Incorrect code with -O3 -ffast-math)


	* 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

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

From-SVN: r75988
parent 71bbcf4d
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.
......
......@@ -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)
......
......@@ -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;
......
......@@ -14260,7 +14260,7 @@
[(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")
......
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
......
......@@ -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);
......
......@@ -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;
......
......@@ -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;
......
......@@ -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;
......
......@@ -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;
......
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