aboutsummaryrefslogtreecommitdiff
path: root/gcc/genmodes.c
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2018-08-24 16:42:32 +0200
committerUros Bizjak <uros@gcc.gnu.org>2018-08-24 16:42:32 +0200
commiteafa30efd073d937054788c0915957508c85ac8b (patch)
tree566dafad2bf402f57fed4d7c60a8ac90ce58ab3b /gcc/genmodes.c
parentf5cd4f8ceb89596be02801cd11e8dbf78fb10014 (diff)
downloadgcc-eafa30efd073d937054788c0915957508c85ac8b.zip
gcc-eafa30efd073d937054788c0915957508c85ac8b.tar.gz
gcc-eafa30efd073d937054788c0915957508c85ac8b.tar.bz2
emit-rtl.c (init_emit_once): Do not emit MODE_POINTER_BOUNDS RTXes.
* emit-rtl.c (init_emit_once): Do not emit MODE_POINTER_BOUNDS RTXes. * emit-rtl.h (rtl_data): Remove return_bnd. * explow.c (trunc_int_for_mode): Do not handle POINTER_BOUNDS_MODE_P. * function.c (diddle_return_value): Do not handle crtl->return_bnd. * genmodes.c (complete_mode): Do not handle MODE_POINTER_BOUNDS. (POINTER_BOUNDS_MODE): Remove definition. (make_pointer_bounds_mode): Remove. (get_mode_class): Do not handle MODE_POINTER_BOUNDS. * machmode.h (POINTER_BOUNDS_MODE_P): Remove definition. (scalare_mode::includes_p): Do not handle MODE_POINTER_BOUNDS. * mode-classes.def: Do not define MODE_POINTER_BOUNDS. * stor-layout.c (int_mode_for_mode): Do not handle MODE_POINTER_BOUNDS. * tree-core.h (enum tree_index): Remove TI_POINTER_BOUNDS_TYPE. * varasm.c (output_constant_pool_2): Do not handle MODE_POINTER_BOUNDS. * config/i386/i386-modes.def (BND32, BND64): Remove. * config/i386/i386.c (dbx_register_map): Remove bound registers. (dbx64_register_map): Ditto. (svr4_dbx_register_map): Ditto. (indirect_thunk_bnd_needed): Remove. (indirect_thunks_bnd_used): Ditto. (indirect_return_bnd_needed): Ditto. (indirect_return_via_cx_bnd): Ditto. (enum indirect_thunk_prefix): Remove indirect_thunk_prefix_bnd. (indirect_thunk_name): Remove handling of indirect_thunk_prefix_bnd. (output_indirect_thunk): Ditto. Remove need_prefix argument. (output_indirect_thunk_function): Remove handling of indirect_return_bnd_needed, indirect_return_via_cx_bnd, indirect_thunk_bnd_needed and indirect_thunks_bnd_used variables. (ix86_save_reg): Remove handling of crtl->return_bnd. (ix86_legitimate_constant_p): Remove handling of POINTER_BOUNDS_MODE_P. (ix86_print_operand_address_as): Remove handling of UNSPEC_BNDMK_ADDR and UNSPEC_BNDLX_ADDR. (ix86_output_indirect_branch_via_reg): Remove handling of indirect_thunk_prefix_bnd. (ix86_output_indirect_branch_via_push): Ditto. (ix86_output_function_return): Ditto. (ix86_output_indirect_function_return): Ditto. (avoid_func_arg_motion): Do not handle UNSPEC_BNDSTX. * config/i386/i386.h (FIXED_REGISTERS): Remove bound registers. (CALL_USED_REGISTERS): Ditto. (REG_ALLOC_ORDER): Update for removal of bound registers. (HI_REGISTER_NAMES): Ditto. * config/i386/i386.md (UNSPEC_BNDMK, UNSPEC_BNDMK_ADDR, UNSPEC_BNDSTX) (UNSPEC_BNDLDX, UNSPEC_BNDLDX_ADDR, UNSPEC_BNDCL, UNSPEC_BNDCU) (UNSPEC_BNDCN, UNSPEC_MPX_FENCE): Remove. (BND0_REG, BND1_REG, BND2_REG, BND3_REG): Remove (FIRST_PSEUDO_REG): Update. (BND): Remove mode iterator. * config/i386/predicates.md (bnd_mem_operator): Remove. From-SVN: r263835
Diffstat (limited to 'gcc/genmodes.c')
-rw-r--r--gcc/genmodes.c15
1 files changed, 0 insertions, 15 deletions
diff --git a/gcc/genmodes.c b/gcc/genmodes.c
index af0d280..6db9ed4 100644
--- a/gcc/genmodes.c
+++ b/gcc/genmodes.c
@@ -340,7 +340,6 @@ complete_mode (struct mode_data *m)
break;
case MODE_INT:
- case MODE_POINTER_BOUNDS:
case MODE_FLOAT:
case MODE_DECIMAL_FLOAT:
case MODE_FRACT:
@@ -572,19 +571,6 @@ make_special_mode (enum mode_class cl, const char *name,
new_mode (cl, name, file, line);
}
-#define POINTER_BOUNDS_MODE(N, Y) \
- make_pointer_bounds_mode (#N, Y, __FILE__, __LINE__)
-
-static void ATTRIBUTE_UNUSED
-make_pointer_bounds_mode (const char *name,
- unsigned int bytesize,
- const char *file, unsigned int line)
-{
- struct mode_data *m = new_mode (MODE_POINTER_BOUNDS, name, file, line);
- m->bytesize = bytesize;
-}
-
-
#define INT_MODE(N, Y) FRACTIONAL_INT_MODE (N, -1U, Y)
#define FRACTIONAL_INT_MODE(N, B, Y) \
make_int_mode (#N, B, Y, __FILE__, __LINE__)
@@ -1213,7 +1199,6 @@ get_mode_class (struct mode_data *mode)
case MODE_UFRACT:
case MODE_ACCUM:
case MODE_UACCUM:
- case MODE_POINTER_BOUNDS:
return "scalar_mode";
case MODE_FLOAT: