re PR target/50617 (ICE: RTL flag check: INSN_ANNULLED_BRANCH_P used with unexpected rtx code 'simplify_immed_subreg' in output_bb, at config/pa/pa.c:6631)
PR target/50617 * config/pa/protos.h (attr_length_save_restore_dltp): Delete. (cmpib_comparison_operator): Likewise. (following_cal, output_and, output_ior, output_move_double, output_fp_move_double, output_block_move, output_block_clear, output_cbranch, output_lbranch, output_bb, output_bvb, output_dbra, output_movb, output_parallel_movb, output_parallel_addb, output_call, output_indirect_call, output_millicode_call, output_mul_insn, output_div_insn, output_mod_insn, singlemove_string, output_arg_descriptor, output_global_address, print_operand, legitimize_pic_address, hppa_encode_label, symbolic_expression_p, fmpyaddoperands, fmpysuboperands, emit_bcond_fp, emit_move_sequence, emit_hpdiv_const, is_function_label_plus_const, jump_in_call_delay, hppa_fpstore_bypass_p, attr_length_millicode_call, attr_length_call, attr_length_indirect_call, return_addr_rtx, function_arg_padding, insn_refs_are_delayed, get_deferred_plabel, ldil_cint_p, zdepi_cint_p, output_ascii, compute_frame_size, and_mask_p, cint_ok_for_move, hppa_expand_prologue, hppa_expand_epilogue, ior_mask_p, compute_zdepdi_operands, output_64bit_and, output_64bit_ior, reloc_needed, magic_milli, shadd_constant_p): Consistently prefix exported functions and variables with "pa_". * config/pa/predicates.md: Likewise. * config/pa/pa64-hpux.h: likewise. * config/pa/som.h: Likewise. * config/pa/elf.h: Likewise. * config/pa/pa64-linux.h: Likewise. * config/pa/pa.md: Likewise. * config/pa/pa.c: Likewise. * config/pa/pa-linux.h: Likewise. * config/pa/pa.h: Likewise. * config/pa/constraints.md: Likewise. From-SVN: r180660
This commit is contained in:
parent
b99f906a4e
commit
ae9d61aba6
|
@ -1,3 +1,37 @@
|
|||
2011-10-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
|
||||
|
||||
PR target/50617
|
||||
* config/pa/protos.h (attr_length_save_restore_dltp): Delete.
|
||||
(cmpib_comparison_operator): Likewise.
|
||||
(following_cal, output_and, output_ior, output_move_double,
|
||||
output_fp_move_double, output_block_move, output_block_clear,
|
||||
output_cbranch, output_lbranch, output_bb, output_bvb, output_dbra,
|
||||
output_movb, output_parallel_movb, output_parallel_addb, output_call,
|
||||
output_indirect_call, output_millicode_call, output_mul_insn,
|
||||
output_div_insn, output_mod_insn, singlemove_string,
|
||||
output_arg_descriptor, output_global_address, print_operand,
|
||||
legitimize_pic_address, hppa_encode_label, symbolic_expression_p,
|
||||
fmpyaddoperands, fmpysuboperands, emit_bcond_fp, emit_move_sequence,
|
||||
emit_hpdiv_const, is_function_label_plus_const, jump_in_call_delay,
|
||||
hppa_fpstore_bypass_p, attr_length_millicode_call, attr_length_call,
|
||||
attr_length_indirect_call, return_addr_rtx, function_arg_padding,
|
||||
insn_refs_are_delayed, get_deferred_plabel, ldil_cint_p, zdepi_cint_p,
|
||||
output_ascii, compute_frame_size, and_mask_p, cint_ok_for_move,
|
||||
hppa_expand_prologue, hppa_expand_epilogue, ior_mask_p,
|
||||
compute_zdepdi_operands, output_64bit_and, output_64bit_ior,
|
||||
reloc_needed, magic_milli, shadd_constant_p): Consistently prefix
|
||||
exported functions and variables with "pa_".
|
||||
* config/pa/predicates.md: Likewise.
|
||||
* config/pa/pa64-hpux.h: likewise.
|
||||
* config/pa/som.h: Likewise.
|
||||
* config/pa/elf.h: Likewise.
|
||||
* config/pa/pa64-linux.h: Likewise.
|
||||
* config/pa/pa.md: Likewise.
|
||||
* config/pa/pa.c: Likewise.
|
||||
* config/pa/pa-linux.h: Likewise.
|
||||
* config/pa/pa.h: Likewise.
|
||||
* config/pa/constraints.md: Likewise.
|
||||
|
||||
2011-10-29 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* config/i386/i386.md (xop_sha<mode>3): Rename from xop_ashl<mode>3.
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
(define_constraint "K"
|
||||
"Integer constant that can be deposited with a zdepi instruction."
|
||||
(and (match_code "const_int")
|
||||
(match_test "zdepi_cint_p (ival)")))
|
||||
(match_test "pa_zdepi_cint_p (ival)")))
|
||||
|
||||
(define_constraint "L"
|
||||
"Signed 5-bit integer constant."
|
||||
|
@ -70,7 +70,7 @@
|
|||
(define_constraint "N"
|
||||
"Integer constant that can be loaded with a ldil instruction."
|
||||
(and (match_code "const_int")
|
||||
(match_test "ldil_cint_p (ival)")))
|
||||
(match_test "pa_ldil_cint_p (ival)")))
|
||||
|
||||
(define_constraint "O"
|
||||
"Integer constant such that ival+1 is a power of 2."
|
||||
|
@ -81,7 +81,7 @@
|
|||
"Integer constant that can be used as an and mask in depi and
|
||||
extru instructions."
|
||||
(and (match_code "const_int")
|
||||
(match_test "and_mask_p (ival)")))
|
||||
(match_test "pa_and_mask_p (ival)")))
|
||||
|
||||
(define_constraint "S"
|
||||
"Integer constant 31."
|
||||
|
|
|
@ -80,7 +80,7 @@ do { \
|
|||
#define ASM_OUTPUT_EXTERNAL_LIBCALL(FILE, RTL) \
|
||||
do { fputs ("\t.IMPORT ", FILE); \
|
||||
if (!function_label_operand (RTL, VOIDmode)) \
|
||||
hppa_encode_label (RTL); \
|
||||
pa_encode_label (RTL); \
|
||||
assemble_name (FILE, XSTR ((RTL), 0)); \
|
||||
fputs (",ENTRY\n", FILE); \
|
||||
} while (0)
|
||||
|
|
|
@ -128,7 +128,7 @@ along with GCC; see the file COPYING3. If not see
|
|||
do \
|
||||
{ \
|
||||
if (!FUNCTION_NAME_P (XSTR (FUN, 0))) \
|
||||
hppa_encode_label (FUN); \
|
||||
pa_encode_label (FUN); \
|
||||
(*targetm.asm_out.globalize_label) (FILE, XSTR (FUN, 0)); \
|
||||
} \
|
||||
while (0)
|
||||
|
|
|
@ -24,89 +24,82 @@ along with GCC; see the file COPYING3. If not see
|
|||
extern rtx pa_eh_return_handler_rtx (void);
|
||||
|
||||
/* Used in insn-*.c. */
|
||||
extern int following_call (rtx);
|
||||
extern int pa_following_call (rtx);
|
||||
|
||||
/* Define functions in pa.c and used in insn-output.c. */
|
||||
|
||||
extern const char *output_and (rtx *);
|
||||
extern const char *output_ior (rtx *);
|
||||
extern const char *output_move_double (rtx *);
|
||||
extern const char *output_fp_move_double (rtx *);
|
||||
extern const char *output_block_move (rtx *, int);
|
||||
extern const char *output_block_clear (rtx *, int);
|
||||
extern const char *output_cbranch (rtx *, int, rtx);
|
||||
extern const char *output_lbranch (rtx, rtx, int);
|
||||
extern const char *output_bb (rtx *, int, rtx, int);
|
||||
extern const char *output_bvb (rtx *, int, rtx, int);
|
||||
extern const char *output_dbra (rtx *, rtx, int);
|
||||
extern const char *output_movb (rtx *, rtx, int, int);
|
||||
extern const char *output_parallel_movb (rtx *, rtx);
|
||||
extern const char *output_parallel_addb (rtx *, rtx);
|
||||
extern const char *output_call (rtx, rtx, int);
|
||||
extern const char *output_indirect_call (rtx, rtx);
|
||||
extern const char *output_millicode_call (rtx, rtx);
|
||||
extern const char *output_mul_insn (int, rtx);
|
||||
extern const char *output_div_insn (rtx *, int, rtx);
|
||||
extern const char *output_mod_insn (int, rtx);
|
||||
extern const char *singlemove_string (rtx *);
|
||||
extern void output_arg_descriptor (rtx);
|
||||
extern void output_global_address (FILE *, rtx, int);
|
||||
extern void print_operand (FILE *, rtx, int);
|
||||
extern rtx legitimize_pic_address (rtx, enum machine_mode, rtx);
|
||||
extern void hppa_encode_label (rtx);
|
||||
extern int symbolic_expression_p (rtx);
|
||||
extern const char *pa_output_and (rtx *);
|
||||
extern const char *pa_output_64bit_and (rtx *);
|
||||
extern const char *pa_output_ior (rtx *);
|
||||
extern const char *pa_output_64bit_ior (rtx *);
|
||||
extern const char *pa_output_move_double (rtx *);
|
||||
extern const char *pa_output_fp_move_double (rtx *);
|
||||
extern const char *pa_output_block_move (rtx *, int);
|
||||
extern const char *pa_output_block_clear (rtx *, int);
|
||||
extern const char *pa_output_cbranch (rtx *, int, rtx);
|
||||
extern const char *pa_output_lbranch (rtx, rtx, int);
|
||||
extern const char *pa_output_bb (rtx *, int, rtx, int);
|
||||
extern const char *pa_output_bvb (rtx *, int, rtx, int);
|
||||
extern const char *pa_output_dbra (rtx *, rtx, int);
|
||||
extern const char *pa_output_movb (rtx *, rtx, int, int);
|
||||
extern const char *pa_output_parallel_movb (rtx *, rtx);
|
||||
extern const char *pa_output_parallel_addb (rtx *, rtx);
|
||||
extern const char *pa_output_call (rtx, rtx, int);
|
||||
extern const char *pa_output_indirect_call (rtx, rtx);
|
||||
extern const char *pa_output_millicode_call (rtx, rtx);
|
||||
extern const char *pa_output_mul_insn (int, rtx);
|
||||
extern const char *pa_output_div_insn (rtx *, int, rtx);
|
||||
extern const char *pa_output_mod_insn (int, rtx);
|
||||
extern const char *pa_singlemove_string (rtx *);
|
||||
extern void pa_output_arg_descriptor (rtx);
|
||||
extern void pa_output_global_address (FILE *, rtx, int);
|
||||
extern void pa_print_operand (FILE *, rtx, int);
|
||||
extern void pa_encode_label (rtx);
|
||||
extern int pa_symbolic_expression_p (rtx);
|
||||
extern bool pa_tls_referenced_p (rtx);
|
||||
extern int pa_adjust_insn_length (rtx, int);
|
||||
extern int fmpyaddoperands (rtx *);
|
||||
extern int fmpysuboperands (rtx *);
|
||||
extern void emit_bcond_fp (rtx[]);
|
||||
extern int emit_move_sequence (rtx *, enum machine_mode, rtx);
|
||||
extern int emit_hpdiv_const (rtx *, int);
|
||||
extern int is_function_label_plus_const (rtx);
|
||||
extern int jump_in_call_delay (rtx);
|
||||
extern int hppa_fpstore_bypass_p (rtx, rtx);
|
||||
extern int attr_length_millicode_call (rtx);
|
||||
extern int attr_length_call (rtx, int);
|
||||
extern int attr_length_indirect_call (rtx);
|
||||
extern int attr_length_save_restore_dltp (rtx);
|
||||
extern int pa_fmpyaddoperands (rtx *);
|
||||
extern int pa_fmpysuboperands (rtx *);
|
||||
extern void pa_emit_bcond_fp (rtx[]);
|
||||
extern int pa_emit_move_sequence (rtx *, enum machine_mode, rtx);
|
||||
extern int pa_emit_hpdiv_const (rtx *, int);
|
||||
extern int pa_is_function_label_plus_const (rtx);
|
||||
extern int pa_jump_in_call_delay (rtx);
|
||||
extern int pa_fpstore_bypass_p (rtx, rtx);
|
||||
extern int pa_attr_length_millicode_call (rtx);
|
||||
extern int pa_attr_length_call (rtx, int);
|
||||
extern int pa_attr_length_indirect_call (rtx);
|
||||
|
||||
/* Declare functions defined in pa.c and used in templates. */
|
||||
|
||||
extern rtx return_addr_rtx (int, rtx);
|
||||
extern rtx pa_return_addr_rtx (int, rtx);
|
||||
|
||||
#ifdef ARGS_SIZE_RTX
|
||||
/* expr.h defines ARGS_SIZE_RTX and `enum direction' */
|
||||
#ifdef TREE_CODE
|
||||
extern enum direction function_arg_padding (enum machine_mode, const_tree);
|
||||
extern enum direction pa_function_arg_padding (enum machine_mode, const_tree);
|
||||
#endif
|
||||
#endif /* ARGS_SIZE_RTX */
|
||||
extern int insn_refs_are_delayed (rtx);
|
||||
extern rtx get_deferred_plabel (rtx);
|
||||
extern int pa_insn_refs_are_delayed (rtx);
|
||||
extern rtx pa_get_deferred_plabel (rtx);
|
||||
#endif /* RTX_CODE */
|
||||
|
||||
extern int ldil_cint_p (HOST_WIDE_INT);
|
||||
extern int zdepi_cint_p (unsigned HOST_WIDE_INT);
|
||||
extern int pa_and_mask_p (unsigned HOST_WIDE_INT);
|
||||
extern int pa_cint_ok_for_move (HOST_WIDE_INT);
|
||||
extern int pa_ior_mask_p (unsigned HOST_WIDE_INT);
|
||||
extern int pa_ldil_cint_p (HOST_WIDE_INT);
|
||||
extern int pa_shadd_constant_p (int);
|
||||
extern int pa_zdepi_cint_p (unsigned HOST_WIDE_INT);
|
||||
|
||||
extern void output_ascii (FILE *, const char *, int);
|
||||
extern HOST_WIDE_INT compute_frame_size (HOST_WIDE_INT, int *);
|
||||
extern int and_mask_p (unsigned HOST_WIDE_INT);
|
||||
extern int cint_ok_for_move (HOST_WIDE_INT);
|
||||
extern void hppa_expand_prologue (void);
|
||||
extern void hppa_expand_epilogue (void);
|
||||
extern void pa_output_ascii (FILE *, const char *, int);
|
||||
extern HOST_WIDE_INT pa_compute_frame_size (HOST_WIDE_INT, int *);
|
||||
extern void pa_expand_prologue (void);
|
||||
extern void pa_expand_epilogue (void);
|
||||
extern bool pa_can_use_return_insn (void);
|
||||
extern int ior_mask_p (unsigned HOST_WIDE_INT);
|
||||
extern void compute_zdepdi_operands (unsigned HOST_WIDE_INT,
|
||||
unsigned *);
|
||||
#ifdef RTX_CODE
|
||||
extern const char * output_64bit_and (rtx *);
|
||||
extern const char * output_64bit_ior (rtx *);
|
||||
extern int cmpib_comparison_operator (rtx, enum machine_mode);
|
||||
#endif
|
||||
|
||||
|
||||
/* Miscellaneous functions in pa.c. */
|
||||
#ifdef TREE_CODE
|
||||
extern int reloc_needed (tree);
|
||||
extern int pa_reloc_needed (tree);
|
||||
extern bool pa_return_in_memory (const_tree, const_tree);
|
||||
#endif /* TREE_CODE */
|
||||
|
||||
|
@ -125,5 +118,4 @@ extern bool pa_cannot_change_mode_class (enum machine_mode, enum machine_mode,
|
|||
extern bool pa_modes_tieable_p (enum machine_mode, enum machine_mode);
|
||||
extern HOST_WIDE_INT pa_initial_elimination_offset (int, int);
|
||||
|
||||
extern const int magic_milli[];
|
||||
extern int shadd_constant_p (int);
|
||||
extern const int pa_magic_milli[];
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -162,11 +162,11 @@ extern unsigned long total_code_bytes;
|
|||
the stack pointer at the function's entry. Yuk! */
|
||||
#define DEBUGGER_AUTO_OFFSET(X) \
|
||||
((GET_CODE (X) == PLUS ? INTVAL (XEXP (X, 1)) : 0) \
|
||||
+ (frame_pointer_needed ? 0 : compute_frame_size (get_frame_size (), 0)))
|
||||
+ (frame_pointer_needed ? 0 : pa_compute_frame_size (get_frame_size (), 0)))
|
||||
|
||||
#define DEBUGGER_ARG_OFFSET(OFFSET, X) \
|
||||
((GET_CODE (X) == PLUS ? OFFSET : 0) \
|
||||
+ (frame_pointer_needed ? 0 : compute_frame_size (get_frame_size (), 0)))
|
||||
+ (frame_pointer_needed ? 0 : pa_compute_frame_size (get_frame_size (), 0)))
|
||||
|
||||
#define TARGET_CPU_CPP_BUILTINS() \
|
||||
do { \
|
||||
|
@ -457,7 +457,7 @@ extern rtx hppa_pic_save_rtx (void);
|
|||
{ \
|
||||
fputs (integer_asm_op (SIZE, FALSE), FILE); \
|
||||
if ((ENCODING) & DW_EH_PE_indirect) \
|
||||
output_addr_const (FILE, get_deferred_plabel (ADDR)); \
|
||||
output_addr_const (FILE, pa_get_deferred_plabel (ADDR)); \
|
||||
else \
|
||||
assemble_name (FILE, XSTR ((ADDR), 0)); \
|
||||
fputs ("+8-$PIC_pcrel$0", FILE); \
|
||||
|
@ -661,7 +661,8 @@ struct hppa_args {int words, nargs_prototype, incoming, indirect; };
|
|||
|
||||
/* If defined, a C expression which determines whether, and in which
|
||||
direction, to pad out an argument with extra space. */
|
||||
#define FUNCTION_ARG_PADDING(MODE, TYPE) function_arg_padding ((MODE), (TYPE))
|
||||
#define FUNCTION_ARG_PADDING(MODE, TYPE) \
|
||||
pa_function_arg_padding ((MODE), (TYPE))
|
||||
|
||||
/* Specify padding for the last element of a block move between registers
|
||||
and memory.
|
||||
|
@ -673,7 +674,7 @@ struct hppa_args {int words, nargs_prototype, incoming, indirect; };
|
|||
so that there is only one element. This allows the object to be
|
||||
correctly padded. */
|
||||
#define BLOCK_REG_PADDING(MODE, TYPE, FIRST) \
|
||||
function_arg_padding ((MODE), (TYPE))
|
||||
pa_function_arg_padding ((MODE), (TYPE))
|
||||
|
||||
|
||||
/* On HPPA, we emit profiling code as rtl via PROFILE_HOOK rather than
|
||||
|
@ -793,7 +794,8 @@ extern int may_call_alloca;
|
|||
|| (GET_CODE (X) == SYMBOL_REF && !SYMBOL_REF_TLS_MODEL (X)) \
|
||||
|| GET_CODE (X) == CONST_INT || GET_CODE (X) == CONST \
|
||||
|| GET_CODE (X) == HIGH) \
|
||||
&& (reload_in_progress || reload_completed || ! symbolic_expression_p (X)))
|
||||
&& (reload_in_progress || reload_completed \
|
||||
|| ! pa_symbolic_expression_p (X)))
|
||||
|
||||
/* A C expression that is nonzero if we are using the new HP assembler. */
|
||||
|
||||
|
@ -926,7 +928,7 @@ extern int may_call_alloca;
|
|||
the REG_POINTER lossage can be fixed, it seems better canonicalize.
|
||||
|
||||
We initially break out scaled indexed addresses in canonical order
|
||||
in emit_move_sequence. LEGITIMIZE_ADDRESS also canonicalizes
|
||||
in pa_emit_move_sequence. LEGITIMIZE_ADDRESS also canonicalizes
|
||||
scaled indexed addresses during RTL generation. However, fold_rtx
|
||||
has its own opinion on how the operands of a PLUS should be ordered.
|
||||
If one of the operands is equivalent to a constant, it will make
|
||||
|
@ -1183,7 +1185,7 @@ do { \
|
|||
(TREE_CODE (DECL) == FUNCTION_DECL \
|
||||
|| (TREE_CODE (DECL) == VAR_DECL \
|
||||
&& TREE_READONLY (DECL) && ! TREE_SIDE_EFFECTS (DECL) \
|
||||
&& (! DECL_INITIAL (DECL) || ! reloc_needed (DECL_INITIAL (DECL))) \
|
||||
&& (! DECL_INITIAL (DECL) || ! pa_reloc_needed (DECL_INITIAL (DECL))) \
|
||||
&& !flag_pic) \
|
||||
|| CONSTANT_CLASS_P (DECL))
|
||||
|
||||
|
@ -1290,7 +1292,7 @@ do { \
|
|||
get_attr_type will try to recognize the given insn, so make sure to
|
||||
filter out things it will not accept -- SEQUENCE, USE and CLOBBER insns
|
||||
in particular. */
|
||||
#define INSN_REFERENCES_ARE_DELAYED(X) (insn_refs_are_delayed (X))
|
||||
#define INSN_REFERENCES_ARE_DELAYED(X) (pa_insn_refs_are_delayed (X))
|
||||
|
||||
|
||||
/* Control the assembler format that we output. */
|
||||
|
@ -1368,7 +1370,7 @@ do { \
|
|||
#define TARGET_ASM_GLOBALIZE_LABEL pa_globalize_label
|
||||
|
||||
#define ASM_OUTPUT_ASCII(FILE, P, SIZE) \
|
||||
output_ascii ((FILE), (P), (SIZE))
|
||||
pa_output_ascii ((FILE), (P), (SIZE))
|
||||
|
||||
/* Jump tables are always placed in the text section. Technically, it
|
||||
is possible to put them in the readonly data section when -mbig-switch
|
||||
|
@ -1452,7 +1454,7 @@ do { \
|
|||
M modifier to handle preincrement addressing for memory refs.
|
||||
F modifier to handle preincrement addressing for fp memory refs */
|
||||
|
||||
#define PRINT_OPERAND(FILE, X, CODE) print_operand (FILE, X, CODE)
|
||||
#define PRINT_OPERAND(FILE, X, CODE) pa_print_operand (FILE, X, CODE)
|
||||
|
||||
|
||||
/* Print a memory address as an operand to reference that memory location. */
|
||||
|
@ -1476,7 +1478,7 @@ do { \
|
|||
fputs ("RR'", FILE); \
|
||||
else \
|
||||
fputs ("RT'", FILE); \
|
||||
output_global_address (FILE, XEXP (addr, 1), 0); \
|
||||
pa_output_global_address (FILE, XEXP (addr, 1), 0); \
|
||||
fputs ("(", FILE); \
|
||||
output_operand (XEXP (addr, 0), 0); \
|
||||
fputs (")", FILE); \
|
||||
|
@ -1492,7 +1494,7 @@ do { \
|
|||
/* Find the return address associated with the frame given by
|
||||
FRAMEADDR. */
|
||||
#define RETURN_ADDR_RTX(COUNT, FRAMEADDR) \
|
||||
(return_addr_rtx (COUNT, FRAMEADDR))
|
||||
(pa_return_addr_rtx (COUNT, FRAMEADDR))
|
||||
|
||||
/* Used to mask out junk bits from the return address, such as
|
||||
processor state, interrupt status, condition codes and the like. */
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -236,7 +236,7 @@ do { \
|
|||
#define ASM_OUTPUT_EXTERNAL_LIBCALL(FILE, FUN) \
|
||||
do { \
|
||||
if (!FUNCTION_NAME_P (XSTR (FUN, 0))) \
|
||||
hppa_encode_label (FUN); \
|
||||
pa_encode_label (FUN); \
|
||||
ASM_OUTPUT_TYPE_DIRECTIVE (FILE, XSTR (FUN, 0), "function"); \
|
||||
} while (0)
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ along with GCC; see the file COPYING3. If not see
|
|||
{ \
|
||||
int fsize; \
|
||||
\
|
||||
fsize = compute_frame_size (get_frame_size (), 0); \
|
||||
fsize = pa_compute_frame_size (get_frame_size (), 0); \
|
||||
if ((TO) == FRAME_POINTER_REGNUM \
|
||||
&& (FROM) == ARG_POINTER_REGNUM) \
|
||||
{ \
|
||||
|
|
|
@ -59,14 +59,14 @@
|
|||
|
||||
(define_predicate "cint_ior_operand"
|
||||
(and (match_code "const_int")
|
||||
(match_test "ior_mask_p (INTVAL (op))")))
|
||||
(match_test "pa_ior_mask_p (INTVAL (op))")))
|
||||
|
||||
;; True iff OP is CONST_INT that can be moved in one instruction
|
||||
;; into a general register.
|
||||
|
||||
(define_predicate "cint_move_operand"
|
||||
(and (match_code "const_int")
|
||||
(match_test "cint_ok_for_move (INTVAL (op))")))
|
||||
(match_test "pa_cint_ok_for_move (INTVAL (op))")))
|
||||
|
||||
;; True iff OP is a CONST0_RTX for MODE.
|
||||
|
||||
|
@ -91,7 +91,7 @@
|
|||
(define_predicate "and_operand"
|
||||
(ior (match_operand 0 "register_operand")
|
||||
(and (match_code "const_int")
|
||||
(match_test "and_mask_p (INTVAL (op))"))))
|
||||
(match_test "pa_and_mask_p (INTVAL (op))"))))
|
||||
|
||||
;; Return truth value of whether OP can be used as an operand in a
|
||||
;; three operand arithmetic insn that accepts registers of mode MODE
|
||||
|
@ -179,7 +179,7 @@
|
|||
&& ((REG_P (op) && REGNO (op) == 25)
|
||||
|| (CONST_INT_P (op)
|
||||
&& INTVAL (op) > 0 && INTVAL (op) < 16
|
||||
&& magic_milli[INTVAL (op)])));
|
||||
&& pa_magic_milli[INTVAL (op)])));
|
||||
})
|
||||
|
||||
;; True iff OP is a reloading floating point register
|
||||
|
@ -304,7 +304,7 @@
|
|||
return true;
|
||||
|
||||
if (CONST_INT_P (op))
|
||||
return cint_ok_for_move (INTVAL (op));
|
||||
return pa_cint_ok_for_move (INTVAL (op));
|
||||
|
||||
if (GET_MODE (op) != mode)
|
||||
return false;
|
||||
|
@ -452,7 +452,7 @@
|
|||
|
||||
(define_predicate "shadd_operand"
|
||||
(and (match_code "const_int")
|
||||
(match_test "shadd_constant_p (INTVAL (op))")))
|
||||
(match_test "pa_shadd_constant_p (INTVAL (op))")))
|
||||
|
||||
;; Return truth value of statement that OP is a symbolic memory operand.
|
||||
|
||||
|
@ -463,7 +463,7 @@
|
|||
op = SUBREG_REG (op);
|
||||
if (!MEM_P (op))
|
||||
return false;
|
||||
return symbolic_expression_p (XEXP (op, 0));
|
||||
return pa_symbolic_expression_p (XEXP (op, 0));
|
||||
})
|
||||
|
||||
;; True iff OP is a symbolic operand.
|
||||
|
|
|
@ -227,7 +227,7 @@ do { \
|
|||
tree id; \
|
||||
\
|
||||
if (!function_label_operand (RTL, VOIDmode)) \
|
||||
hppa_encode_label (RTL); \
|
||||
pa_encode_label (RTL); \
|
||||
\
|
||||
name = targetm.strip_name_encoding (XSTR ((RTL), 0)); \
|
||||
id = maybe_get_identifier (name); \
|
||||
|
|
Loading…
Reference in New Issue