darwin.c (machopic_output_possible_stub_label): Remove.
2004-02-27 Dale Johannesen <dalej@apple.com> * config/darwin.c (machopic_output_possible_stub_label): Remove. config/darwin-protos.h: Ditto. config/darwin.h: Remove call to it. * combine.c (distribute_notes): Do not place a REG_DEAD note when value is both set and used. From-SVN: r78590
This commit is contained in:
parent
bbc51dc29f
commit
b30e1617dc
5 changed files with 12 additions and 51 deletions
|
@ -1,3 +1,10 @@
|
|||
2004-02-27 Dale Johannesen <dalej@apple.com>
|
||||
* config/darwin.c (machopic_output_possible_stub_label): Remove.
|
||||
config/darwin-protos.h: Ditto.
|
||||
config/darwin.h: Remove call to it.
|
||||
* combine.c (distribute_notes): Do not place a REG_DEAD note
|
||||
when value is both set and used.
|
||||
|
||||
2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
|
||||
|
|
|
@ -12729,26 +12729,16 @@ distribute_notes (rtx notes, rtx from_insn, rtx i3, rtx i2)
|
|||
}
|
||||
#endif
|
||||
}
|
||||
/* If the register is both set and used here, put the
|
||||
REG_DEAD note here, but place a REG_UNUSED note
|
||||
here too unless there already is one. */
|
||||
else if (reg_referenced_p (XEXP (note, 0),
|
||||
PATTERN (tem)))
|
||||
{
|
||||
place = tem;
|
||||
|
||||
if (! find_regno_note (tem, REG_UNUSED,
|
||||
REGNO (XEXP (note, 0))))
|
||||
REG_NOTES (tem)
|
||||
= gen_rtx_EXPR_LIST (REG_UNUSED, XEXP (note, 0),
|
||||
REG_NOTES (tem));
|
||||
}
|
||||
else
|
||||
{
|
||||
PUT_REG_NOTE_KIND (note, REG_UNUSED);
|
||||
|
||||
/* If there isn't already a REG_UNUSED note, put one
|
||||
here. */
|
||||
here. Do not place a REG_DEAD note, even if
|
||||
the register is also used here; that would not
|
||||
match the algorithm used in lifetime analysis
|
||||
and can cause the consistency check in the
|
||||
scheduler to fail. */
|
||||
if (! find_regno_note (tem, REG_UNUSED,
|
||||
REGNO (XEXP (note, 0))))
|
||||
place = tem;
|
||||
|
|
|
@ -65,8 +65,6 @@ extern const char *darwin_strip_name_encoding (const char *);
|
|||
|
||||
extern void machopic_finish (FILE *);
|
||||
|
||||
extern void machopic_output_possible_stub_label (FILE *, const char*);
|
||||
|
||||
extern void darwin_exception_section (void);
|
||||
extern void darwin_eh_frame_section (void);
|
||||
extern void machopic_select_section (tree, int, unsigned HOST_WIDE_INT);
|
||||
|
|
|
@ -1096,37 +1096,6 @@ update_non_lazy_ptrs (const char *name)
|
|||
}
|
||||
}
|
||||
|
||||
/* Function NAME is being defined, and its label has just been output.
|
||||
If there's already a reference to a stub for this function, we can
|
||||
just emit the stub label now and we don't bother emitting the stub later. */
|
||||
|
||||
void
|
||||
machopic_output_possible_stub_label (FILE *file, const char *name)
|
||||
{
|
||||
tree temp;
|
||||
|
||||
/* Ensure we're looking at a section-encoded name. */
|
||||
if (name[0] != '!' || (name[1] != 't' && name[1] != 'T'))
|
||||
return;
|
||||
|
||||
for (temp = machopic_stubs;
|
||||
temp != NULL_TREE;
|
||||
temp = TREE_CHAIN (temp))
|
||||
{
|
||||
const char *sym_name;
|
||||
|
||||
sym_name = IDENTIFIER_POINTER (TREE_VALUE (temp));
|
||||
if (sym_name[0] == '!' && (sym_name[1] == 'T' || sym_name[1] == 't')
|
||||
&& ! strcmp (name+2, sym_name+2))
|
||||
{
|
||||
ASM_OUTPUT_LABEL (file, IDENTIFIER_POINTER (TREE_PURPOSE (temp)));
|
||||
/* Avoid generating a stub for this. */
|
||||
TREE_USED (temp) = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Scan the list of stubs and update any recorded names whose
|
||||
stripped name matches the argument. */
|
||||
|
||||
|
|
|
@ -395,9 +395,6 @@ do { text_section (); \
|
|||
|| DECL_INITIAL (DECL)) \
|
||||
(* targetm.encode_section_info) (DECL, DECL_RTL (DECL), false); \
|
||||
ASM_OUTPUT_LABEL (FILE, xname); \
|
||||
/* Avoid generating stubs for functions we've just defined by \
|
||||
outputting any required stub name label now. */ \
|
||||
machopic_output_possible_stub_label (FILE, xname); \
|
||||
} while (0)
|
||||
|
||||
#define ASM_DECLARE_CONSTANT_NAME(FILE, NAME, EXP, SIZE) \
|
||||
|
|
Loading…
Add table
Reference in a new issue