Bernd Edlinger
ec1e2a4097
defaults.h (LOG2_BITS_PER_UNIT): Move from here...
...
2016-07-27 Bernd Edlinger <bernd.edlinger@hotmail.de>
* defaults.h (LOG2_BITS_PER_UNIT): Move from here...
* tree.h (LOG2_BITS_PER_UNIT): ...to here.
(BITS_PER_UNIT_LOG): Remove.
(int_bit_position): Use LOG2_BITS_PER_UNIT instead of BITS_PER_UNIT_LOG.
* expr.c (expand_assignment): Likewise.
* stor-layout.c (initialize_sizetypes): Likewise.
c-family:
2016-07-27 Bernd Edlinger <bernd.edlinger@hotmail.de>
* c-common.c (check_user_alignment): Use LOG2_BITS_PER_UNIT instead of
BITS_PER_UNIT_LOG.
From-SVN: r238800
2016-07-27 20:35:35 +00:00
Bernd Schmidt
36b85e4328
re PR tree-optimization/52171 (memcmp/strcmp/strncmp can be optimized when the result is tested for [in]equality with 0)
...
PR tree-optimization/52171
* builtins.c (expand_cmpstrn_or_cmpmem): Delete, moved elsewhere.
(expand_builtin_memcmp): New arg RESULT_EQ. All callers changed.
Look for constant strings. Move some code to emit_block_cmp_hints
and use it.
* builtins.def (BUILT_IN_MEMCMP_EQ): New.
* defaults.h (COMPARE_MAX_PIECES): New macro.
* expr.c (move_by_pieces_d, store_by_pieces_d): Remove old structs.
(move_by_pieces_1, store_by_pieces_1, store_by_pieces_2): Remvoe.
(clear_by_pieces_1): Don't declare. Move definition before use.
(can_do_by_pieces): New static function.
(can_move_by_pieces): Use it. Return bool.
(by_pieces_ninsns): Renamed from move_by_pieces_ninsns. New arg
OP. All callers changed. Handle COMPARE_BY_PIECES.
(class pieces_addr); New.
(pieces_addr::pieces_addr, pieces_addr::decide_autoinc,
pieces_addr::adjust, pieces_addr::increment_address,
pieces_addr::maybe_predec, pieces_addr::maybe_postinc): New member
functions for it.
(class op_by_pieces_d): New.
(op_by_pieces_d::op_by_pieces_d, op_by_pieces_d::run): New member
functions for it.
(class move_by_pieces_d, class compare_by_pieces_d,
class store_by_pieces_d): New subclasses of op_by_pieces_d.
(move_by_pieces_d::prepare_mode, move_by_pieces_d::generate,
move_by_pieces_d::finish_endp, store_by_pieces_d::prepare_mode,
store_by_pieces_d::generate, store_by_pieces_d::finish_endp,
compare_by_pieces_d::generate, compare_by_pieces_d::prepare_mode,
compare_by_pieces_d::finish_mode): New member functions.
(compare_by_pieces, emit_block_cmp_via_cmpmem): New static
functions.
(expand_cmpstrn_or_cmpmem): Moved here from builtins.c.
(emit_block_cmp_hints): New function.
(move_by_pieces, store_by_pieces, clear_by_pieces): Rewrite to just
use the newly defined classes.
* expr.h (by_pieces_constfn): New typedef.
(can_store_by_pieces, store_by_pieces): Use it in arg declarations.
(emit_block_cmp_hints, expand_cmpstrn_or_cmpmem): Declare.
(move_by_pieces_ninsns): Don't declare.
(can_move_by_pieces): Change return value to bool.
* target.def (TARGET_USE_BY_PIECES_INFRASTRUCTURE_P): Update docs.
(compare_by_pieces_branch_ratio): New hook.
* target.h (enum by_pieces_operation): Add COMPARE_BY_PIECES.
(by_pieces_ninsns): Declare.
* targethooks.c (default_use_by_pieces_infrastructure_p): Handle
COMPARE_BY_PIECES.
(default_compare_by_pieces_branch_ratio): New function.
* targhooks.h (default_compare_by_pieces_branch_ratio): Declare.
* doc/tm.texi.in (STORE_MAX_PIECES, COMPARE_MAX_PIECES): Document.
* doc/tm.texi: Regenerate.
* tree-ssa-strlen.c: Include "builtins.h".
(handle_builtin_memcmp): New static function.
(strlen_optimize_stmt): Call it for BUILT_IN_MEMCMP.
* tree.c (build_common_builtin_nodes): Create __builtin_memcmp_eq.
testsuite/
PR tree-optimization/52171
* gcc.dg/pr52171.c: New test.
* gcc.target/i386/pr52171.c: New test.
From-SVN: r237069
2016-06-03 14:20:53 +00:00
Jakub Jelinek
818ab71a41
Update copyright years.
...
From-SVN: r232055
2016-01-04 15:30:50 +01:00
Pierre-Marie de Rodat
6592d14b43
Add a flag to control the balance between GNAT encodings and std. DWARF
...
In order to accomodate the debugger's support evolution for "new" DWARF
constructs, we need to have an flag that controls the amount of GNAT
encodings/standard DWARF information that is emitted in the debug info.
Propagate this new parameter into the Ada front-end.
gcc/ChangeLog:
* common.opt (gnat_encodings): New variable
(dwarf_gnat_encodings): New enum type.
(fgnat_encodings): New option.
* flag-types.h (enum dwarf_gnat_encodings): New.
gcc/ada/ChangeLog:
* gcc-interface/misc.c (gnat_encodings): Undefine macro and
declare a global variable.
(gnat_post_options): Initialize this global from options.
From-SVN: r231761
2015-12-17 14:09:26 +00:00
Trevor Saunders
dd4fb6097a
always define EH_RETURN_HANDLER_RTX
...
gcc/ChangeLog:
2015-11-14 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (EH_RETURN_HANDLER_RTX): New default definition.
* df-scan.c (df_get_exit_block_use_set): Adjust.
* except.c (expand_eh_return): Likewise.
From-SVN: r230392
2015-11-15 00:18:01 +00:00
Trevor Saunders
ab7b56730b
always define TARGET_PECOFF
...
gcc/ChangeLog:
2015-11-14 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* config/i386/i386.h (TARGET_PECOFF): Remove define.
* defaults.h (TARGET_PECOFF): New default definition.
* varasm.c (handle_vtv_comdat_section): Adjust.
gcc/cp/ChangeLog:
2015-11-14 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* vtable-class-hierarchy.c (vtv_generate_init_routine): Adjust.
From-SVN: r230391
2015-11-15 00:17:56 +00:00
Trevor Saunders
5394314855
remove conditional compilation of sdb debug info
...
gcc/ChangeLog:
2015-11-14 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h: New definition of SDB_DEBUGGING_INFO.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in: Adjust.
* final.c (rest_of_clean_state): Remove check if
SDB_DEBUGGING_INFO is defined.
* function.c (number_blocks): Likewise.
* output.h: Likewise.
* sdbout.c: Likewise.
* toplev.c (process_options): Likewise.
From-SVN: r230390
2015-11-15 00:17:51 +00:00
Trevor Saunders
f7dfb654e7
always define REVERSE_CONDITION
...
gcc/ChangeLog:
2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (REVERSE_CONDITION): New default definition.
* jump.c (reversed_comparison_code_parts): Adjust.
From-SVN: r228690
2015-10-11 00:48:28 +00:00
Trevor Saunders
a9e0a99876
always define FRAME_ADDR_RTX
...
gcc/ChangeLog:
2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (FRAME_ADDR_RTX): New default definition.
* builtins.c (expand_builtin_return_addr): Adjust.
From-SVN: r228688
2015-10-11 00:48:17 +00:00
Trevor Saunders
f407dfe985
always define DYNAMIC_CHAIN_ADDRESS
...
gcc/ChangeLog:
2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (DYNAMIC_CHAIN_ADDRESS): New default definition.
* builtins.c (expand_builtin_return_addr): Adjust.
From-SVN: r228687
2015-10-11 00:48:11 +00:00
Trevor Saunders
baf37960f6
always define SETUP_FRAME_ADDRESSES
...
gcc/ChangeLog:
2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (SETUP_FRAME_ADDRESSES): New default definition.
* builtins.c (expand_builtin_return_addr): Adjust.
* doc/tm.texi: Likewise.
* doc/tm.texi.in: Likewise.
* except.c (expand_builtin_unwind_init): Likewise.
From-SVN: r228686
2015-10-11 00:48:02 +00:00
Trevor Saunders
579f294624
always define INITIAL_FRAME_ADDRESS_RTX
...
gcc/ChangeLog:
2015-10-10 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* builtins.c (expand_builtin_return_addr): Adjust.
* defaults.h (INITIAL_FRAME_ADDRESS_RTX): New default definition.
From-SVN: r228685
2015-10-11 00:47:52 +00:00
Andrew Dixie
04218b3564
config.host (powerpc-ibm-aix*): Add crtdbase.o to extra_parts.
...
libgcc/
* config.host (powerpc-ibm-aix*): Add crtdbase.o to extra_parts.
* config/rs6000/crtdbase.S: New file.
* config/rs6000/t-aix-cxa: Build crtdbase.o.
gcc/
* defaults.h (EH_FRAME_SECTION_NAME): Depend on
EH_FRAME_THROUGH_COLLECT2.
* dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Add case for
DW_EH_PE_datarel.
* dwarf2out.c (switch_to_eh_frame_section): Use a read-only section
even if EH_FRAME_SECTION_NAME is undefined. Restrict special
collect2 labels to EH_FRAME_THROUGH_COLLECT2.
* except.c (switch_to_exception_section): Use a read-only section
even if EH_FRAME_SECTION_NAME is undefined.
* system.h (EH_FRAME_IN_DATA_SECTION): Poison.
* collect2.c (write_c_file_stat): Provide dbase on AIX.
(scan_prog_file): Don't export __dso_handle nor
__gcc_unwind_dbase.
* config/rs6000/aix.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
(EH_TABLES_CAN_BE_READ_ONLY): Define.
(ASM_OUTPUT_DWARF_PCREL): Define.
(ASM_OUTPUT_DWARF_DATAREL): Define.
(EH_FRAME_THROUGH_COLLECT2): Define.
(EH_FRAME_IN_DATA_SECTION): Delete.
* config/rs6000/rs6000.c (rs6000_aix_asm_output_dwarf_pcrel): New.
(rs6000_aix_asm_output_dwarf_datarel): New.
(rs6000_xcoff_asm_init_sections): Don't set exception_section.
* config/spu/spu-elf.h (EH_FRAME_IN_DATA_SECTION): Delete.
(EH_FRAME_THROUGH_COLLECT2): Define.
* config/i386/i386-interix.h (EH_FRAME_IN_DATA_SECTION): Delete.
(EH_FRAME_THROUGH_COLLECT2): Define.
(EH_TABLES_CAN_BE_READ_ONLY): Define.
* doc/tm.texi.in (EH_FRAME_IN_DATA_SECTION): Delete.
(EH_FRAME_THROUGH_COLLECT2): New.
(ASM_OUTPUT_DWARF_DATAREL): New.
* doc/tm.texi: Regenerate.
Co-Authored-By: David Edelsohn <dje.gcc@gmail.com>
From-SVN: r227906
2015-09-18 10:10:36 -04:00
Eric Botcazou
c55721c0df
defaults.h (STACK_OLD_CHECK_PROTECT): Adjust for -fno-exceptions.
...
* defaults.h (STACK_OLD_CHECK_PROTECT): Adjust for -fno-exceptions.
Bump to 4KB for SJLJ exceptions.
(STACK_CHECK_PROTECT): Likewise. Bump to 8KB for SJLJ exceptions.
* doc/tm.texi.in (STACK_CHECK_PROTECT): Adjust.
* doc/tm.texi: Regenerate.
From-SVN: r227799
2015-09-15 16:25:59 +00:00
Trevor Saunders
6b00e42da3
add default for CONSTANT_ALIGNMENT
...
gcc/ChangeLog:
2015-08-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (CONSTANT_ALIGNMENT): New macro definition.
* builtins.c (get_object_alignment_2): Adjust.
* varasm.c (align_variable): Likewise.
(get_variable_align): Likewise.
(build_constant_desc): Likewise.
(force_const_mem): Likewise.
* doc/tm.texi.in: Likewise.
* doc/tm.texi: Regenerate.
From-SVN: r227052
2015-08-21 01:15:33 +00:00
Magnus Granberg
e0f6cba004
common.opt (fstack-protector): Initialize to -1.
...
* common.opt (fstack-protector): Initialize to -1.
(fstack-protector-all): Likewise.
(fstack-protector-strong): Likewise.
(fstack-protector-explicit): Likewise.
* configure.ac: Add --enable-default-ssp.
* defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
* opts.c (finish_options): Update opts->x_flag_stack_protect if it is
-1.
* doc/install.texi: Document --enable-default-ssp.
* config.in: Regenerated.
* configure: Likewise.
* lib/target-supports.exp
(check_effective_target_fstack_protector_enabled): New test.
* gcc.target/i386/ssp-default.c: New test.
From-SVN: r227017
2015-08-19 16:07:06 -06:00
Thomas Schwinge
c9665100d6
Add DWARF2_LINENO_DEBUGGING_INFO, and use it for nvptx
...
gcc/
* config/nvptx/nvptx.c (nvptx_option_override): Don't override
debug options.
* config/nvptx/nvptx.h (DWARF2_LINENO_DEBUGGING_INFO): Define.
(DWARF2_DEBUGGING_INFO): Don't define.
* debug.h (dwarf2_lineno_debug_hooks): Declare.
* toplev.c (process_options): Add a case for it.
* dwarf2out.c (dwarf2_lineno_debug_hooks): New variable.
(dwarf2out_init): Skip most initializations if
DWARF2_LINENO_DEBUGGING_INFO, but set cur_line_info_table in that
case.
* defaults.h (PREFERRED_DEBUGGING_TYPE): Also use DWARF2_DEBUG if
DWARF2_LINENO_DEBUGGING_INFO.
* opts.c (set_debug_level): Likewise.
Co-Authored-By: Bernd Schmidt <bernds@codesourcery.com>
From-SVN: r226890
2015-08-14 12:37:14 +02:00
Trevor Saunders
9e11bfef7a
always define WORD_REGISTER_OPERATIONS
...
gcc/ChangeLog:
2015-07-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h: Provide default for WORD_REGISTER_OPERATIONS.
* config/alpha/alpha.h: Define WORD_REGISTER_OPERATIONS to 1.
* config/arc/arc.h: Likewise.
* config/arm/arm.h: Likewise.
* config/bfin/bfin.h: Likewise.
* config/epiphany/epiphany.h: Likewise.
* config/frv/frv.h: Likewise.
* config/ia64/ia64.h: Likewise.
* config/iq2000/iq2000.h: Likewise.
* config/lm32/lm32.h: Likewise.
* config/m32r/m32r.h: Likewise.
* config/mcore/mcore.h: Likewise.
* config/mep/mep.h: Likewise.
* config/microblaze/microblaze.h: Likewise.
* config/mips/mips.h: Likewise.
* config/mmix/mmix.h: Likewise.
* config/mn10300/mn10300.h: Likewise.
* config/nds32/nds32.h: Likewise.
* config/nios2/nios2.h: Likewise.
* config/pa/pa.h: Likewise.
* config/rl78/rl78.h: Likewise.
* config/sh/sh.h: Likewise.
* config/sparc/sparc.h: Likewise.
* config/stormy16/stormy16.h: Likewise.
* config/tilegx/tilegx.h: Likewise.
* config/tilepro/tilepro.h: Likewise.
* config/v850/v850.h: Likewise.
* config/xtensa/xtensa.h: Likewise.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in: Adjust.
* combine.c (simplify_set): Likewise.
(simplify_comparison): Likewise.
* expr.c (store_constructor): Likewise.
* internal-fn.c (expand_arith_overflow): Likewise.
* reload.c (push_reload): Likewise.
(find_reloads): Likewise.
(find_reloads_subreg_address): Likewise.
* reload1.c (eliminate_regs_1): Likewise.
* rtlanal.c (nonzero_bits1): Likewise.
(num_sign_bit_copies1): Likewise.
* simplify-rtx.c (simplify_truncation): Likewise.
From-SVN: r225597
2015-07-09 02:51:19 +00:00
Trevor Saunders
58f2ae18ff
always define SHORT_IMMEDIATES_SIGN_EXTEND
...
gcc/ChangeLog:
2015-07-08 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* combine.c (update_rsp_from_reg_equal): Don't check if
SHORT_IMMEDIATES_SIGN_EXTEND is defined.
(reg_nonzero_bits_for_combine): Likewise.
* config/alpha/alpha.h: Define SHORT_IMMEDIATES_SIGN_EXTEND to
1.
* config/frv/frv.h: Likewise.
* config/lm32/lm32.h: Likewise.
* config/mep/mep.h: Likewise.
* config/mips/mips.h: Likewise.
* config/rs6000/rs6000.h: Likewise.
* config/sh/sh.h: Likewise.
* config/tilegx/tilegx.h (enum reg_class): Likewise.
* config/tilepro/tilepro.h: Likewise.
* defaults.h: Add default for SHORT_IMMEDIATES_SIGN_EXTEND.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in: Adjust.
* rtlanal.c (nonzero_bits1): Likewise.
From-SVN: r225593
2015-07-09 02:50:07 +00:00
Richard Sandiford
8684d89dea
target.def: Add code_for_* hooks.
...
gcc/
* target.def: Add code_for_* hooks.
* gentarget-def.c (def_target_insn): Add TARGET_CODE_FOR_* macros.
* defaults.h (HAVE_tablejump, gen_tablejump): Delete.
* target-insns.def (casesi, tablejump): New targetm instruction
patterns.
* expr.c (try_casesi): Use them instead of HAVE_*/gen_* interface.
(do_tablejump): Likewise.
* stmt.c (expand_switch_as_decision_tree_p): Likewise.
(expand_sjlj_dispatch_table): Likewise.
* targhooks.c (default_case_values_threshold): Likewise.
From-SVN: r225421
2015-07-05 07:44:45 +00:00
Richard Sandiford
20fceb31cd
gcc/
...
* defaults.h (HAVE_load_multiple, gen_load_multiple)
(HAVE_store_multiple, gen_store_multiple): Delete.
* target-insns.def (load_multiple, store_multiple): New targetm
instruction patterns.
* expr.c (move_block_to_reg, move_block_from_reg): Use them instead
of HAVE_*/gen_* interface.
From-SVN: r225210
2015-06-30 20:56:43 +00:00
Richard Sandiford
ccf5bbdd40
gcc/
...
* defaults.h (HAVE_mem_thread_fence, gen_mem_thread_fence)
(HAVE_memory_barrier, gen_memory_barrier, HAVE_mem_signal_fence)
(gen_mem_signal_fence): Delete.
* target-insns.def (mem_signal_fence, mem_thread_fence)
(memory_barrier): New targetm instruction patterns.
* optabs.c (expand_mem_thread_fence): Use them instead of HAVE_*/gen_*
interface.
(expand_mem_signal_fence): Likewise.
From-SVN: r225209
2015-06-30 20:56:14 +00:00
Richard Sandiford
e86a994681
defaults.h (HAVE_epilogue, [...]): Delete.
...
gcc/
* defaults.h (HAVE_epilogue, gen_epilogue): Delete.
* target-insns.def (epilogue, prologue, sibcall_prologue): New
targetm instruction patterns.
* alias.c (init_alias_analysis): Use them instead of HAVE_*/gen_*
interface.
* calls.c (expand_call): Likewise.
* cfgrtl.c (cfg_layout_finalize): Likewise.
* df-scan.c (df_get_entry_block_def_set): Likewise.
(df_get_exit_block_use_set): Likewise.
* dwarf2cfi.c (pass_dwarf2_frame::gate): Likewise.
* final.c (final_start_function): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
(reposition_prologue_and_epilogue_notes): Likewise.
* reorg.c (find_end_label): Likewise.
* toplev.c (process_options): Likewise.
From-SVN: r225208
2015-06-30 20:55:13 +00:00
Richard Sandiford
4bccb39eba
Makefile.in (TARGET_DEF): Add target-insns.def.
...
gcc/
* Makefile.in (TARGET_DEF): Add target-insns.def.
(.PRECIOUS, simple_rtl_generated_h): Add insn-target-def.h.
(build/gentarget-def.o): New rule.
(genprogrtl): Add target-def.
* target-insns.def, gentarget-def.c: New files.
* target.def: Add targetm.have_* and targetm.gen_* hooks,
based on the contents of target-insns.def.
* defaults.h (HAVE_simple_return, gen_simple_return): Delete.
(HAVE_return, gen_return): Delete.
* target-def.h: Include insn-target-def.h.
* cfgrtl.c (force_nonfallthru_and_redirect): Use targetm interface
instead of direct calls. Rely on them to do the appropriate assertions.
* function.c (gen_return_pattern): Likewise. Return an rtx_insn *.
(convert_jumps_to_returns): Use targetm interface instead of
direct calls.
(thread_prologue_and_epilogue_insns): Likewise.
* reorg.c (find_end_label, dbr_schedule): Likewise.
* shrink-wrap.h (SHRINK_WRAPPING_ENABLED): Likewise.
* shrink-wrap.c (convert_to_simple_return): Likewise.
(try_shrink_wrapping): Use SHRINK_WRAPPING_ENABLED.
From-SVN: r224979
2015-06-25 17:18:12 +00:00
Richard Sandiford
8a810680ee
defaults.h (SWITCHABLE_TARGET, [...]): Move out of GCC_INSN_FLAGS_H block.
...
gcc/
* defaults.h (SWITCHABLE_TARGET, TARGET_SUPPORTS_WIDE_INT): Move out
of GCC_INSN_FLAGS_H block.
From-SVN: r224069
2015-06-03 09:29:42 +00:00
H.J. Lu
428b381275
Add --enable-default-pie option to GCC configure
...
Add --enable-default-pie option to configure GCC to generate PIE by
default.
gcc/
* Makefile.in (COMPILER): Add @NO_PIE_CFLAGS@.
(BUILD_CFLAGS): Likewise.
(BUILD_CXXFLAGS): Likewise.
(LINKER): Add @NO_PIE_FLAG@.
(BUILD_LDFLAGS): Likewise.
(libgcc.mvars): Set NO_PIE_CFLAGS to -fno-PIE for
--enable-default-pie.
* common.opt (fPIE): Initialize to -1.
(fpie): Likewise.
(no-pie): New option.
(pie): Replace "Negative(shared)" with "Negative(no-pie)".
* configure.ac: Add --enable-default-pie.
(NO_PIE_CFLAGS): New. Check if -fno-PIE works. AC_SUBST.
(NO_PIE_FLAG): New. Check if -no-pie works. AC_SUBST.
* defaults.h (DEFAULT_FLAG_PIE): New. Default PIE to -fPIE.
* gcc.c (NO_PIE_SPEC): New.
(PIE_SPEC): Likewise.
(NO_FPIE1_SPEC): Likewise.
(FPIE1_SPEC): Likewise.
(NO_FPIE2_SPEC): Likewise.
(FPIE2_SPEC): Likewise.
(NO_FPIE2_SPEC): Likewise.
(FPIE_SPEC): Likewise.
(NO_FPIE_SPEC): Likewise.
(NO_FPIC1_SPEC): Likewise.
(FPIC1_SPEC): Likewise.
(NO_FPIC2_SPEC): Likewise.
(FPIC2_SPEC): Likewise.
(NO_FPIC2_SPEC): Likewise.
(FPIC_SPEC): Likewise.
(NO_FPIC_SPEC): Likewise.
(NO_FPIE1_AND_FPIC1_SPEC): Likewise.
(FPIE1_OR_FPIC1_SPEC): Likewise.
(NO_FPIE2_AND_FPIC2_SPEC): Likewise.
(FPIE2_OR_FPIC2_SPEC): Likewise.
(NO_FPIE_AND_FPIC_SPEC): Likewise.
(FPIE_OR_FPIC_SPEC): Likewise.
(LD_PIE_SPEC): Likewise.
(LINK_PIE_SPEC): Handle -no-pie. Use PIE_SPEC and LD_PIE_SPEC.
* opts.c (finish_options): Update opts->x_flag_pie if it is -1.
* config/darwin.h (PIE_SPEC): Renamed to ...
(DARWIN_PIE_SPEC): This.
(LINK_SPEC): Replace PIE_SPEC with DARWIN_PIE_SPEC.
* config/darwin9.h (PIE_SPEC): Renamed to ...
(DARWIN_PIE_SPEC): This.
* config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Use
PIE_SPEC and NO_PIE_SPEC if HAVE_LD_PIE is defined.
* config/openbsd.h (ASM_SPEC): Use FPIE1_OR_FPIC1_SPEC and
FPIE2_OR_FPIC2_SPEC.
* config/m68k/netbsd-elf.h (ASM_SPEC): Likewise.
* config/m68k/openbsd.h (ASM_SPEC): Likewise.
* gcc/config/sol2.h (ASM_PIC_SPEC): Likewise.
* config/arm/freebsd.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise.
* config/arm/netbsd-elf.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise.
* config/arm/semi.h (SUBTARGET_EXTRA_ASM_SPEC): Likewise.
* config/cris/linux.h (CRIS_ASM_SUBTARGET_SPEC): Likewise.
* config/m32r/m32r.h (ASM_SPEC): Likewise.
* config/m68k/uclinux.h (DRIVER_SELF_SPECS): Likewise.
* config/rs6000/linux64.h (ASM_SPEC32): Likewise.
* config/rs6000/sysv4.h (ASM_SPEC): Likewise.
* config/sparc/freebsd.h (ASM_SPEC): Likewise.
* config/sparc/linux.h (ASM_SPEC): Likewise.
* config/sparc/linux64.h (ASM_SPEC): Likewise.
* config/sparc/netbsd-elf.h (ASM_SPEC): Likewise.
* config/sparc/openbsd64.h (ASM_SPEC): Likewise.
* config/sparc/sp-elf.h (ASM_SPEC): Likewise.
* config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
* config/sparc/sparc.h (ASM_SPEC): Likewise.
* config/sparc/sysv4.h (ASM_SPEC): Likewise.
* config/sparc/vxworks.h (ASM_SPEC): Likewise.
* config/c6x/elf-common.h (ASM_SPEC): Use NO_FPIC2_SPEC,
FPIC2_SPEC, FPIC1_SPEC and FPIC2_SPEC.
* config/c6x/uclinux-elf.h (LINK_SPEC): Use FPIE_SPEC.
* config/frv/frv.h (DRIVER_SELF_SPECS): Use FPIC_SPEC,
NO_FPIC_SPEC and NO_FPIE1_AND_FPIC1_SPEC.
(ASM_SPEC): Use FPIE1_OR_FPIC1_SPEC and FPIE2_OR_FPIC2_SPEC.
* config/m68k/m68k.h (ASM_PCREL_SPEC): Use FPIC_SPEC and
NO_FPIC_SPEC.
* config/mips/gnu-user.h (NO_SHARED_SPECS): Use
NO_FPIE_AND_FPIC_SPEC.
* config/mips/vxworks.h (SUBTARGET_ASM_SPEC): Use FPIC_SPEC.
* config/rs6000/freebsd64.h (ASM_SPEC32): Likewise.
* config/rs6000/vxworks.h (ASM_SPEC): Likewise.
* config/vax/linux.h (ASM_SPEC): Likewise.
* doc/install.texi: Document --enable-default-pie.
* doc/invoke.texi: Document -no-pie.
* config.in: Regenerated.
* configure: Likewise.
gcc/ada/
* gcc-interface/Makefile.in (TOOLS_LIBS): Add @NO_PIE_FLAG@.
libgcc/
* Makefile.in (CRTSTUFF_CFLAGS): Add $(NO_PIE_CFLAGS).
From-SVN: r223796
2015-05-27 19:36:55 -07:00
Trevor Saunders
0e5f14d420
add default for HAVE_tablejump
...
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_tablejump): New function.
(HAVE_tablejump): Add default value.
* expr.c: Adjust.
* stmt.c: Likewise.
From-SVN: r223625
2015-05-24 00:33:06 +00:00
Trevor Saunders
b77eb5eb02
add default for HAVE_store_multiple
...
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_store_multiple): New function.
(HAVE_store_multiple): Add default value.
* expr.c (move_block_from_reg): Adjust.
From-SVN: r223624
2015-05-24 00:33:00 +00:00
Trevor Saunders
e51f0f4f35
add default for HAVE_load_multiple
...
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_load_multiple): New function.
(HAVE_load_multiple): Add default value.
* expr.c (move_block_to_reg): Adjust.
From-SVN: r223623
2015-05-24 00:32:54 +00:00
Trevor Saunders
15469812ac
provide default for HAVE_mem_signal_fence
...
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_mem_signal_fence): New function.
(HAVE_mem_signal_fence): Add default value.
* optabs.c: Adjust.
From-SVN: r223622
2015-05-24 00:32:49 +00:00
Trevor Saunders
c76a461051
always define HAVE_memory_barrier
...
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_memory_barrier): New function.
(HAVE_memory_barrier): Add default value.
* optabs.c: Adjust.
From-SVN: r223621
2015-05-24 00:32:43 +00:00
Trevor Saunders
fcb922a9c6
provide default for HAVE_mem_thread_fence
...
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_mem_thread_fence): New function.
(HAVE_mem_thread_fence): Add default definition.
* optabs.c: Adjust.
From-SVN: r223620
2015-05-24 00:32:37 +00:00
Trevor Saunders
dfed696157
move default for STACK_PUSH_CODE to defaults.h
...
gcc/ChangeLog:
2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h: Add default for STACK_PUSH_CODE.
* expr.c: Don't redefine STACK_PUSH_CODE.
* recog.c: Likewise.
From-SVN: r223515
2015-05-22 01:03:51 +00:00
Trevor Saunders
62f9f30bfb
always define STACK_GROWS_DOWNWARD
...
gcc/c-family/ChangeLog:
2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* c-cppbuiltin.c (c_cpp_builtins): Check the value of
STACK_GROWS_DOWNWARD rather than if it is defined.
gcc/ChangeLog:
2015-05-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* *.c: Check the value of STACK_GROWS_DOWNWARD rather than if it
is defined.
* config/**/*.h: Define STACK_GROWS_DOWNWARD to an integer.
* defaults.h: Provide default for STACK_GROWS_DOWNWARD.
* doc/tm.texi.in: Update references to STACK_GROWS_DOWNWARD.
* doc/tm.texi: Regenerate.
From-SVN: r223513
2015-05-22 01:03:11 +00:00
Jason Merrill
1699809426
bitmap.c, [...]: Add space between string literal and macro name.
...
* bitmap.c, c/c-aux-info.c, cfg.c, cfghooks.c, cgraph.c,
config/aarch64/aarch64.md config/alpha/vms.h, config/darwin.c,
config/darwin.h, config/darwin9.h, config/elfos.h,
config/i386/bsd.h, config/ia64/ia64.c, config/lm32/lm32.h,
config/microblaze/microblaze.h, config/mips/mips.h,
config/mmix/mmix.c, config/msp430/msp430.c, config/nios2/nios2.h,
config/nvptx/nvptx.c, config/nvptx/nvptx.h, config/pa/pa.c,
config/pa/pa.h, config/rs6000/rs6000.c, config/rs6000/sysv4.h,
config/rs6000/xcoff.h, config/rx/rx.h, config/s390/s390.h,
config/sparc/sol2.h, config/sparc/sparc.h, config/visium/visium.h,
cppbuiltin.c, defaults.h, doc/invoke.texi, dwarf2cfi.c,
dwarf2out.c, final.c, gcc.c, gcov-dump.c, gcov.c, ipa-cp.c,
ipa-inline.c, ipa-polymorphic-call.c, ipa-profile.c, ipa-prop.c,
ira-color.c, ira.c, loop-doloop.c, loop-iv.c, mcf.c,
modulo-sched.c, predict.c, profile.c, stor-layout.c, toplev.c,
tree-ssa-reassoc.c, value-prof.c, wide-int-print.cc: Add space
between string literal and macro name.
From-SVN: r222960
2015-05-09 00:50:05 -04:00
Trevor Saunders
376bddabe1
always define ARGS_GROW_DOWNWARD
...
gcc/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* config/pa/pa.h (ARGS_GROW_DOWNWARD): Define to 1.
* defaults.h (ARGS_GROW_DOWNWARD): Define it to 0 by default.
* calls.c (save_fixed_argument_area): Don't chekc if
ARGS_GROW_DOWNWARD is defined.
(restore_fixed_argument_area): Likewise.
(mem_overlaps_already_clobbered_arg_p): Likewise.
(check_sibcall_argument_overlap): Likewise.
(expand_call): Likewise.
(emit_library_call_value_1): Likewise.
(store_one_arg): Likewise.
* function.c (assign_parms): Likewise.
(locate_and_pad_parm): Likewise.
(pad_to_arg_alignment): Likewise.
* targhooks.c (std_gimplify_va_arg_expr): Likewise.
From-SVN: r222507
2015-04-28 04:46:20 +00:00
Trevor Saunders
5251b8b350
always define HAVE_epilogue
...
gcc/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_epilogue): New function.
(HAVE_epilogue): Add default definition to false.
* alias.c (init_alias_analysis): don't check if HAVE_epilogue is
defined.
* cfgrtl.c (cfg_layout_finalize): Likewise.
* df-scan.c: Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
(reposition_prologue_and_epilogue_notes): Likewise.
* reorg.c (find_end_label): Likewise.
* toplev.c: Likewise.
From-SVN: r222506
2015-04-28 04:45:12 +00:00
Trevor Saunders
08b7ff1e1d
always define HAVE_simple_return and HAVE_return
...
gcc/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* bb-reorder.c (HAVE_return): Don't check if its undefined.
* defaults.h (gen_simple_return): New function.
(gen_simple_return): Likewise.
(HAVE_return): Add default definition to false.
(HAVE_simple_return): Likewise.
* cfgrtl.c (force_nonfallthru_and_redirect): Remove checks if
HAVE_return and HAVE_simple_return are defined.
* function.c (gen_return_pattern): Likewise.
(convert_jumps_to_returns): Likewise.
(thread_prologue_and_epilogue_insns): Likewise.
* reorg.c (find_end_label): Likewise.
(dbr_schedule): Likewise.
* shrink-wrap.c: Likewise.
* shrink-wrap.h: Likewise.
From-SVN: r222505
2015-04-28 04:44:09 +00:00
Trevor Saunders
a3699d669a
add default for EPILOGUE_USES
...
gcc/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (EPILOGUE_USES): Add default definition of false.
* df-scan.c (EPILOGUE_USES): Remove check if its undefined.
* resource.c (init_resource_info): Likewise.
From-SVN: r222504
2015-04-28 04:43:12 +00:00
Trevor Saunders
1d0275e2bb
add default for PCC_BITFIELD_TYPE_MATTERS
...
gcc/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (PCC_BITFIELD_TYPE_MATTERS): Add default definition
to false.
* dwarf2out.c (field_byte_offset): REmove check if
PCC_BITFIELD_TYPE_MATTERS is defined.
* stor-layout.c (layout_decl): Likewise.
(update_alignment_for_field): Likewise.
(place_field): Likewise.
gcc/cp/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* class.c (layout_class_type): Remove check if
PCC_BITFIELD_TYPE_MATTERS is defined.
From-SVN: r222503
2015-04-28 04:42:04 +00:00
Trevor Saunders
aedf2c0283
add default for HARD_REGNO_RENAME_OK
...
gcc/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (HARD_REGNO_RENAME_OK): Add default definition to
true.
* regrename.c (check_new_reg_p): Remove check if
HARD_REGNO_RENAME_OK is defined.
* sel-sched.c (sel_hard_regno_rename_ok): Likewise.
From-SVN: r222502
2015-04-28 04:40:43 +00:00
Trevor Saunders
1e8552c2ee
add default for NO_FUNCTION_CSE
...
gcc/ChangeLog:
2015-04-27 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* calls.c (prepare_call_address): Remove ifdef NO_FUNCTION_CSE.
* cse.c (fold_rtx): Likewise.
* config/alpha/alpha.h (NO_FUNCTION_CSE): Define to 1.
* config/arc/arc.h (NO_FUNCTION_CSE): Likewise.
* config/avr/avr.h (NO_FUNCTION_CSE): Likewise.
* config/cr16/cr16.h (NO_FUNCTION_CSE): Likewise.
* config/epiphany/epiphany.h (NO_FUNCTION_CSE): Likewise.
* config/frv/frv.h (NO_FUNCTION_CSE): Likewise.
* config/h8300/h8300.h (NO_FUNCTION_CSE): Likewise.
* config/i386/i386.h (NO_FUNCTION_CSE): Likewise.
* config/ia64/ia64.h (NO_FUNCTION_CSE): Likewise.
* config/lm32/lm32.h (enum reg_class) (NO_FUNCTION_CSE):
* Likewise.
* config/m32r/m32r.h (NO_FUNCTION_CSE): Likewise.
* config/mep/mep.h (NO_FUNCTION_CSE): Likewise.
* config/mn10300/mn10300.h (NO_FUNCTION_CSE): Likewise.
* config/nds32/nds32.h (NO_FUNCTION_CSE): Likewise.
* config/nios2/nios2.h (NO_FUNCTION_CSE): Likewise.
* config/pa/pa.h (NO_FUNCTION_CSE): Likewise.
* config/rs6000/rs6000.h (NO_FUNCTION_CSE): Likewise.
* config/s390/s390.h (NO_FUNCTION_CSE): Likewise.
* config/sparc/sparc.h (NO_FUNCTION_CSE): Likewise.
* config/spu/spu.h (NO_FUNCTION_CSE): Likewise.
* config/stormy16/stormy16.h (NO_FUNCTION_CSE): Likewise.
* config/v850/v850.h (NO_FUNCTION_CSE): Likewise.
* defaults.h (NO_FUNCTION_CSE): Provide default definition to 0.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in: Document NO_FUNCTION_CSE is always defined to
either true or false.
From-SVN: r222501
2015-04-28 04:40:00 +00:00
Trevor Saunders
6e37129a8d
add default for INSN_REFERENCES_ARE_DELAYED
...
gcc/ChangeLog:
2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (INSN_REFERENCES_ARE_DELAYED): New definition.
* reorg.c (redundant_insn): Remove ifdef
INSN_REFERENCES_ARE_DELAYED.
* resource.c (mark_referenced_resources): Likewise.
From-SVN: r222304
2015-04-22 00:45:20 +00:00
Trevor Saunders
0923e946fb
provide default for INSN_SETS_ARE_DELAYED
...
gcc/ChangeLog:
2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (INSN_SETS_ARE_DELAYED): New definition.
* reorg.c (redundant_insn): Remove ifdef INSN_SETS_ARE_DELAYED.
* resource.c (mark_set_resources): Likewise.
From-SVN: r222303
2015-04-22 00:45:11 +00:00
Trevor Saunders
cbc7d031c4
provide default for MASK_RETURN_ADDR
...
gcc/ChangeLog:
2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (MASK_RETURN_ADDR): New definition.
* except.c (expand_builtin_extract_return_addr): Remove ifdef
MASK_RETURN_ADDR.
From-SVN: r222299
2015-04-22 00:44:48 +00:00
Trevor Saunders
a8a6b3dfd3
provide default for RETURN_ADDR_OFFSET
...
gcc/ChangeLog:
2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (RETURN_ADDR_OFFSET): New definition.
* except.c (expand_builtin_extract_return_addr): Remove ifdef
RETURN_ADDR_OFFSET.
(expand_builtin_frob_return_addr): Likewise.
From-SVN: r222298
2015-04-22 00:44:43 +00:00
Trevor Saunders
9a52250502
add default definition of EH_RETURN_DATA_REGNO
...
gcc/ChangeLog:
2015-04-21 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h: New definition of EH_RETURN_DATA_REGNO.
* except.c: Remove definition of EH_RETURN_DATA_REGNO.
* builtins.c (expand_builtin): Remove check if
EH_RETURN_DATA_REGNO is defined.
* df-scan.c (df_bb_refs_collect): Likewise.
(df_get_exit_block_use_set): Likewise.
* haifa-sched.c (initiate_bb_reg_pressure_info): Likewise.
* ira-lives.c (process_bb_node_lives): Likewise.
* lra-lives.c (process_bb_lives): Likewise.
From-SVN: r222293
2015-04-22 00:44:08 +00:00
Max Filippov
2e612c470d
Turn RETURN_ADDR_IN_PREVIOUS_FRAME into C expression
...
This allows a target to support both windowed and non-windowed ABI.
2015-03-03 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* builtins.c (expand_builtin_return_addr): Add
RETURN_ADDR_IN_PREVIOUS_FRAME to 'if' condition, remove
surrounding #ifdef.
* config/sparc/sparc.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Change
definition to 1.
* config/xtensa/xtensa.h (RETURN_ADDR_IN_PREVIOUS_FRAME):
Likewise.
* defaults.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 if
undefined.
* doc/tm.texi.in (RETURN_ADDR_IN_PREVIOUS_FRAME): Update
paragraph.
From-SVN: r221150
2015-03-03 15:04:02 +00:00
Jakub Jelinek
5624e564d2
Update copyright years.
...
From-SVN: r219188
2015-01-05 13:33:28 +01:00
Olivier Hainque
a66272f6d2
defaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default.
...
2014-12-05 Olivier Hainque <hainque@adacore.com>
gcc/
* defaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default.
* dwarf2cfi.c (init_one_dwarf_reg_size): Honor
DWARF_REG_TO_UNWIND_COLUMN.
libgcc/
* unwind-dw2.c (DWARF_REG_TO_UNWIND_COLUMN): Remove default def,
now provided by defaults.h.
From-SVN: r218429
2014-12-05 17:01:42 +00:00