+2016-11-18 Richard Sandiford <richard.sandiford@arm.com>
+
+ * rtlanal.c (load_extend_op): Move to...
+ * rtl.h: ...here and make inline.
+
2016-11-18 Terry Guo <terry.guo@arm.com>
Thomas Preud'homme <thomas.preudhomme@arm.com>
/* Functions in rtlanal.c */
-extern rtx_code load_extend_op (machine_mode);
extern rtx single_set_2 (const rtx_insn *, const_rtx);
extern bool contains_symbol_ref_p (const_rtx);
extern bool contains_symbolic_reference_p (const_rtx);
unsigned function_used_regs_valid: 1;
};
+/* If loads from memories of mode MODE always sign or zero extend,
+ return SIGN_EXTEND or ZERO_EXTEND as appropriate. Return UNKNOWN
+ otherwise. */
+
+inline rtx_code
+load_extend_op (machine_mode mode)
+{
+ if (SCALAR_INT_MODE_P (mode)
+ && GET_MODE_PRECISION (mode) < BITS_PER_WORD)
+ return LOAD_EXTEND_OP (mode);
+ return UNKNOWN;
+}
+
/* gtype-desc.c. */
extern void gt_ggc_mx (rtx &);
extern void gt_pch_nx (rtx &);
return info.nregs;
}
-/* If loads from memories of mode MODE always sign or zero extend,
- return SIGN_EXTEND or ZERO_EXTEND as appropriate. Return UNKNOWN
- otherwise. */
-
-rtx_code
-load_extend_op (machine_mode mode)
-{
- if (SCALAR_INT_MODE_P (mode)
- && GET_MODE_PRECISION (mode) < BITS_PER_WORD)
- return LOAD_EXTEND_OP (mode);
- return UNKNOWN;
-}
-
struct parms_set_data
{
int nregs;