projects
/
gcc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
re PR target/54061 (gcc.c-torture/compile/mipscop-*.c ICEs with -g)
[gcc.git]
/
gcc
/
reload.h
diff --git
a/gcc/reload.h
b/gcc/reload.h
index c9df112b2d02490b5bd8eb7091a4e6e91d07ea35..05ee881bcf9e79b6c155dfd3d62bd864338a1f66 100644
(file)
--- a/
gcc/reload.h
+++ b/
gcc/reload.h
@@
-243,23
+243,21
@@
typedef struct reg_equivs
} reg_equivs_t;
#define reg_equiv_constant(ELT) \
} reg_equivs_t;
#define reg_equiv_constant(ELT) \
-
VEC_index (reg_equivs_t, reg_equivs, (ELT))->
constant
+
(*reg_equivs)[(ELT)].
constant
#define reg_equiv_invariant(ELT) \
#define reg_equiv_invariant(ELT) \
-
VEC_index (reg_equivs_t, reg_equivs, (ELT))->
invariant
+
(*reg_equivs)[(ELT)].
invariant
#define reg_equiv_memory_loc(ELT) \
#define reg_equiv_memory_loc(ELT) \
-
VEC_index (reg_equivs_t, reg_equivs, (ELT))->
memory_loc
+
(*reg_equivs)[(ELT)].
memory_loc
#define reg_equiv_address(ELT) \
#define reg_equiv_address(ELT) \
-
VEC_index (reg_equivs_t, reg_equivs, (ELT))->
address
+
(*reg_equivs)[(ELT)].
address
#define reg_equiv_mem(ELT) \
#define reg_equiv_mem(ELT) \
-
VEC_index (reg_equivs_t, reg_equivs, (ELT))->
mem
+
(*reg_equivs)[(ELT)].
mem
#define reg_equiv_alt_mem_list(ELT) \
#define reg_equiv_alt_mem_list(ELT) \
-
VEC_index (reg_equivs_t, reg_equivs, (ELT))->
alt_mem_list
+
(*reg_equivs)[(ELT)].
alt_mem_list
#define reg_equiv_init(ELT) \
#define reg_equiv_init(ELT) \
-
VEC_index (reg_equivs_t, reg_equivs, (ELT))->
init
+
(*reg_equivs)[(ELT)].
init
-DEF_VEC_O(reg_equivs_t);
-DEF_VEC_ALLOC_O(reg_equivs_t, gc);
-extern VEC(reg_equivs_t,gc) *reg_equivs;
+extern vec<reg_equivs_t, va_gc> *reg_equivs;
/* All the "earlyclobber" operands of the current insn
are recorded here. */
/* All the "earlyclobber" operands of the current insn
are recorded here. */
@@
-411,16
+409,13
@@
extern int push_reload (rtx, rtx, rtx *, rtx *, enum reg_class,
enum machine_mode, enum machine_mode,
int, int, int, enum reload_type);
enum machine_mode, enum machine_mode,
int, int, int, enum reload_type);
-/* Functions in postreload.c: */
-extern void reload_cse_regs (rtx);
-
/* Functions in reload1.c: */
/* Initialize the reload pass once per compilation. */
extern void init_reload (void);
/* The reload pass itself. */
/* Functions in reload1.c: */
/* Initialize the reload pass once per compilation. */
extern void init_reload (void);
/* The reload pass itself. */
-extern
int
reload (rtx, int);
+extern
bool
reload (rtx, int);
/* Mark the slots in regs_ever_live for the hard regs
used by pseudo-reg number REGNO. */
/* Mark the slots in regs_ever_live for the hard regs
used by pseudo-reg number REGNO. */
@@
-463,9
+458,5
@@
extern void debug_reload (void);
reloading to/from a register that is wider than a word. */
extern rtx reload_adjust_reg_for_mode (rtx, enum machine_mode);
reloading to/from a register that is wider than a word. */
extern rtx reload_adjust_reg_for_mode (rtx, enum machine_mode);
-/* Ideally this function would be in ira.c or reload, but due to dependencies
- on integrate.h, it's part of integrate.c. */
-extern void allocate_initial_values (VEC (reg_equivs_t, gc) *);
-
/* Allocate or grow the reg_equiv tables, initializing new entries to 0. */
extern void grow_reg_equivs (void);
/* Allocate or grow the reg_equiv tables, initializing new entries to 0. */
extern void grow_reg_equivs (void);