Eliminate IA-64 compiler warnings.
* dwarf2out.c (dwarf2out_line): Make last_file_num be unsigned. * frame.h (__ia64_personality_v1): Add prototype. * libgcc2.c (ia64_throw_helper): Change personality declaration to prototype form. Add void * cast to first argument to personality call. ... From-SVN: r39227
This commit is contained in:
parent
17fd8a87a4
commit
0024a8041f
@ -1,3 +1,28 @@
|
||||
2001-01-23 Jim Wilson <wilson@redhat.com>
|
||||
|
||||
* dwarf2out.c (dwarf2out_line): Make last_file_num be unsigned.
|
||||
* frame.h (__ia64_personality_v1): Add prototype.
|
||||
* libgcc2.c (ia64_throw_helper): Change personality declaration to
|
||||
prototype form. Add void * cast to first argument to personality
|
||||
call.
|
||||
* real.c (e113toe): Surround with INTEL_EXTENDED_IEEE_FORMAT ifdefs.
|
||||
(asctoe113): Likewise.
|
||||
* config/ia64/frame-ia64.c: Include eh-common.h.
|
||||
* config/ia64/ia64-protos.h (sdata_section, sbbs_section): Add
|
||||
prototypes.
|
||||
* config/ia64/ia64.c (emit_insn_group_barriers): Add ATTRIBUTE_UNUSED
|
||||
to dump parameter.
|
||||
(itanium_split_issue): Add prototype.
|
||||
(gen_nop_type): Ifdef out.
|
||||
(find_best_packet): Initialize best_packet.
|
||||
(ia64_encode_section_info): New local string. Use for ggc_alloc_string
|
||||
result.
|
||||
* config/ia64/ia64.h (ASM_OUTPUT_LONG_DOUBLE): Use 0L not 0.
|
||||
* config/ia64/ia64.md (bsp_value): Add explicit stop bit at start.
|
||||
(flushrs): Add explicit stop bit at end.
|
||||
* config/ia64/lib1funcs.asm (__ia64_restore_stack_nonlocal): Change
|
||||
trailing \ to >.
|
||||
|
||||
2001-01-23 Chris Demetriou <cgd@broadcom.com>
|
||||
|
||||
* libgcc-std.ver (GCC_3.0): Add __terminate_func_set to list
|
||||
|
@ -48,6 +48,7 @@ Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include "defaults.h"
|
||||
#include "frame-ia64.h"
|
||||
#include "eh-common.h"
|
||||
|
||||
/* Some types used by the DWARF 2 spec. */
|
||||
|
||||
|
@ -135,3 +135,11 @@ extern void ia64_output_end_prologue PARAMS((FILE *));
|
||||
extern void ia64_init_builtins PARAMS((void));
|
||||
extern void ia64_override_options PARAMS((void));
|
||||
extern int ia64_dbx_register_number PARAMS((int));
|
||||
|
||||
#ifdef SDATA_SECTION_ASM_OP
|
||||
extern void sdata_section PARAMS ((void));
|
||||
#endif
|
||||
|
||||
#ifdef SBSS_SECTION_ASM_OP
|
||||
extern void sbss_section PARAMS ((void));
|
||||
#endif
|
||||
|
@ -4524,7 +4524,7 @@ emit_insn_group_barriers (dump, insns)
|
||||
|
||||
static void
|
||||
emit_all_insn_group_barriers (dump, insns)
|
||||
FILE *dump;
|
||||
FILE *dump ATTRIBUTE_UNUSED;
|
||||
rtx insns;
|
||||
{
|
||||
rtx insn;
|
||||
@ -4748,10 +4748,13 @@ static const char *type_names[] =
|
||||
/* Nonzero if we should insert stop bits into the schedule. */
|
||||
int ia64_final_schedule = 0;
|
||||
|
||||
static int itanium_split_issue PARAMS ((const struct ia64_packet *, int));
|
||||
static rtx ia64_single_set PARAMS ((rtx));
|
||||
static int insn_matches_slot PARAMS ((const struct ia64_packet *, enum attr_type, int, rtx));
|
||||
static void ia64_emit_insn_before PARAMS ((rtx, rtx));
|
||||
#if 0
|
||||
static rtx gen_nop_type PARAMS ((enum attr_type));
|
||||
#endif
|
||||
static void finish_last_head PARAMS ((FILE *, int));
|
||||
static void rotate_one_bundle PARAMS ((FILE *));
|
||||
static void rotate_two_bundles PARAMS ((FILE *));
|
||||
@ -5049,6 +5052,7 @@ ia64_emit_insn_before (insn, before)
|
||||
emit_insn_before (insn, before);
|
||||
}
|
||||
|
||||
#if 0
|
||||
/* Generate a nop insn of the given type. Note we never generate L type
|
||||
nops. */
|
||||
|
||||
@ -5072,6 +5076,7 @@ gen_nop_type (t)
|
||||
abort ();
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/* When rotating a bundle out of the issue window, insert a bundle selector
|
||||
insn in front of it. DUMP is the scheduling dump file or NULL. START
|
||||
@ -5383,7 +5388,7 @@ find_best_packet (pbest, ppacket, ready, types, n_ready)
|
||||
int first = sched_data.first_slot;
|
||||
int best = 0;
|
||||
int lowest_end = 6;
|
||||
const struct ia64_packet *best_packet;
|
||||
const struct ia64_packet *best_packet = NULL;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < NR_PACKETS; i++)
|
||||
@ -6160,12 +6165,13 @@ ia64_encode_section_info (decl)
|
||||
{
|
||||
size_t len = strlen (symbol_str);
|
||||
char *newstr = alloca (len + 1);
|
||||
const char *string;
|
||||
|
||||
*newstr = SDATA_NAME_FLAG_CHAR;
|
||||
memcpy (newstr + 1, symbol_str, len + 1);
|
||||
|
||||
newstr = ggc_alloc_string (newstr, len + 1);
|
||||
XSTR (XEXP (DECL_RTL (decl), 0), 0) = newstr;
|
||||
string = ggc_alloc_string (newstr, len + 1);
|
||||
XSTR (XEXP (DECL_RTL (decl), 0), 0) = string;
|
||||
}
|
||||
}
|
||||
/* This decl is marked as being in small data/bss but it shouldn't
|
||||
|
@ -2024,7 +2024,7 @@ do { \
|
||||
long t[3]; \
|
||||
REAL_VALUE_TO_TARGET_LONG_DOUBLE (VALUE, t); \
|
||||
fprintf (FILE, "\tdata4 0x%08lx, 0x%08lx, 0x%08lx, 0x%08lx\n", \
|
||||
t[0] & 0xffffffff, t[1] & 0xffffffff, t[2] & 0xffffffff, 0); \
|
||||
t[0] & 0xffffffff, t[1] & 0xffffffff, t[2] & 0xffffffff, 0L);\
|
||||
} while (0)
|
||||
|
||||
/* ??? Must reverse the word order for big-endian code? */
|
||||
|
@ -46,10 +46,6 @@
|
||||
|
||||
;; ??? Add function unit scheduling info for Itanium (TM) processor.
|
||||
|
||||
;; ??? The explicit stop in the flushrs pattern is not ideal. It
|
||||
;; would be better if rtx_needs_barrier took care of this, but this is
|
||||
;; something that can be fixed later.
|
||||
|
||||
;; ??? Need a better way to describe alternate fp status registers.
|
||||
|
||||
;; Unspec usage:
|
||||
@ -4872,11 +4868,15 @@
|
||||
"ldf.fill %0 = %1%P1"
|
||||
[(set_attr "itanium_class" "fld")])
|
||||
|
||||
;; ??? The explicit stop is not ideal. It would be better if
|
||||
;; rtx_needs_barrier took care of this, but this is something that can be
|
||||
;; fixed later. This avoids an RSE DV.
|
||||
|
||||
(define_insn "bsp_value"
|
||||
[(set (match_operand:DI 0 "register_operand" "=r")
|
||||
(unspec:DI [(const_int 0)] 20))]
|
||||
""
|
||||
"mov %0 = ar.bsp"
|
||||
";;\;mov %0 = ar.bsp"
|
||||
[(set_attr "itanium_class" "frar_i")])
|
||||
|
||||
(define_insn "set_bsp"
|
||||
@ -4886,10 +4886,14 @@
|
||||
[(set_attr "itanium_class" "unknown")
|
||||
(set_attr "predicable" "no")])
|
||||
|
||||
;; ??? The explicit stops are not ideal. It would be better if
|
||||
;; rtx_needs_barrier took care of this, but this is something that can be
|
||||
;; fixed later. This avoids an RSE DV.
|
||||
|
||||
(define_insn "flushrs"
|
||||
[(unspec [(const_int 0)] 21)]
|
||||
""
|
||||
";;\;flushrs"
|
||||
";;\;flushrs\;;;"
|
||||
[(set_attr "itanium_class" "rse_m")])
|
||||
|
||||
;; ::::::::::::::::::::
|
||||
|
@ -670,11 +670,11 @@ __ia64_restore_stack_nonlocal:
|
||||
//
|
||||
// The trampoline has the following form:
|
||||
//
|
||||
// +-------------------+ \
|
||||
// +-------------------+ >
|
||||
// TRAMP: | __ia64_trampoline | |
|
||||
// +-------------------+ > fake function descriptor
|
||||
// | TRAMP+16 | |
|
||||
// +-------------------+ /
|
||||
// +-------------------+ >
|
||||
// | target descriptor |
|
||||
// +-------------------+
|
||||
// | static link |
|
||||
|
@ -11390,7 +11390,7 @@ dwarf2out_line (filename, line)
|
||||
fprintf (asm_out_file, "\t.file %d \"%s\"\n", file_num, filename);
|
||||
fprintf (asm_out_file, "\t.loc %d %d 0\n", file_num, line);
|
||||
#else
|
||||
static int last_file_num;
|
||||
static unsigned int last_file_num;
|
||||
if (file_num != last_file_num)
|
||||
{
|
||||
last_file_num = file_num;
|
||||
|
@ -271,6 +271,8 @@ typedef struct unwind_info_ptr
|
||||
#define IA64_UNW_EHANDLER 0x1
|
||||
#define IA64_UNW_UHANDLER 0x2
|
||||
|
||||
extern void * __ia64_personality_v1 (void *pc, old_exception_table *table);
|
||||
|
||||
extern unwind_info_ptr *__build_ia64_frame_state (unsigned char *,
|
||||
ia64_frame_state *,
|
||||
void *, void *,
|
||||
|
@ -4230,7 +4230,7 @@ ia64_throw_helper (ia64_frame_state *throw_frame, ia64_frame_state *caller,
|
||||
memcpy (caller, throw_frame, sizeof (*caller));
|
||||
while (!handler)
|
||||
{
|
||||
void *(*personality) ();
|
||||
void *(*personality) (void *, old_exception_table *);
|
||||
void *eh_table;
|
||||
|
||||
frame_count++;
|
||||
@ -4256,7 +4256,7 @@ ia64_throw_helper (ia64_frame_state *throw_frame, ia64_frame_state *caller,
|
||||
if (personality)
|
||||
/* Pass a segment relative PC address to the personality routine,
|
||||
because the unwind_info section uses segrel relocs. */
|
||||
handler = personality (pc - pc_base, eh_table);
|
||||
handler = personality ((void *)(pc - pc_base), eh_table);
|
||||
}
|
||||
|
||||
if (!handler)
|
||||
|
@ -407,7 +407,9 @@ static void emul PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *,
|
||||
unsigned EMUSHORT *));
|
||||
static void e53toe PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *));
|
||||
static void e64toe PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *));
|
||||
#ifndef INTEL_EXTENDED_IEEE_FORMAT
|
||||
static void e113toe PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *));
|
||||
#endif
|
||||
static void e24toe PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *));
|
||||
static void etoe113 PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *));
|
||||
static void toe113 PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *));
|
||||
@ -439,7 +441,9 @@ static void etoasc PARAMS ((unsigned EMUSHORT *, char *, int));
|
||||
static void asctoe24 PARAMS ((const char *, unsigned EMUSHORT *));
|
||||
static void asctoe53 PARAMS ((const char *, unsigned EMUSHORT *));
|
||||
static void asctoe64 PARAMS ((const char *, unsigned EMUSHORT *));
|
||||
#ifndef INTEL_EXTENDED_IEEE_FORMAT
|
||||
static void asctoe113 PARAMS ((const char *, unsigned EMUSHORT *));
|
||||
#endif
|
||||
static void asctoe PARAMS ((const char *, unsigned EMUSHORT *));
|
||||
static void asctoeg PARAMS ((const char *, unsigned EMUSHORT *, int));
|
||||
static void efloor PARAMS ((unsigned EMUSHORT *, unsigned EMUSHORT *));
|
||||
@ -3327,6 +3331,7 @@ bigend_nan:
|
||||
*q++ = *p++;
|
||||
}
|
||||
|
||||
#ifndef INTEL_EXTENDED_IEEE_FORMAT
|
||||
/* Convert 128-bit long double precision float PE to e type Y. */
|
||||
|
||||
static void
|
||||
@ -3411,6 +3416,7 @@ e113toe (pe, y)
|
||||
}
|
||||
emovo (yy, y);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Convert single precision float PE to e type Y. */
|
||||
|
||||
@ -5101,6 +5107,7 @@ asctoe64 (s, y)
|
||||
asctoeg (s, y, 64);
|
||||
}
|
||||
|
||||
#ifndef INTEL_EXTENDED_IEEE_FORMAT
|
||||
/* Convert ASCII string S to 128-bit long double Y. */
|
||||
|
||||
static void
|
||||
@ -5110,6 +5117,7 @@ asctoe113 (s, y)
|
||||
{
|
||||
asctoeg (s, y, 113);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Convert ASCII string S to e type Y. */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user