aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
AgeCommit message (Collapse)AuthorFilesLines
2009-07-16gcc.c (option_map): New flag -no-canonical-prefixes.Simon Baldwin1-1/+8
* gcc.c (option_map): New flag -no-canonical-prefixes. * (display_help): Print help text for new flag. * (process_command): Move options translation and language specifics and handle new flag early. Use it to set a function pointer to a prefix builder. Replace make_relative_prefix calls with calls to the function pointed to. Ignore new flag in regular options handling. * doc/invoke.texi (Overall Options): Documented -no-canonical-prefixes. From-SVN: r149702
2009-07-14invoke.texi: Added descriptions of the scheduling heuristics that are ↵Ghassan Shobaki1-19/+29
enabled/disabled by... 2009-07-14 Ghassan Shobaki <ghassan.shobaki@amd.com> * doc/invoke.texi: Added descriptions of the scheduling heuristics that are enabled/disabled by the flags introduced by a previous patch. From-SVN: r149650
2009-07-14sourcebuild.texi: Document install-plugin target.Taras Glek1-0/+2
2009-07-14 Taras Glek <tglek@mozilla.com> Rafael Espindola <espindola@google.com> * doc/sourcebuild.texi: Document install-plugin target. * configure.ac: Added install-plugin target to language makefiles. * configure: Regenerate. * Makefile.in: (install-plugin): Install more headers, depend on lang.install-plugin. ada/ChangeLog * gcc-interface/Make-lang.in (ada.install-plugin): New target for installing plugin headers. cp/ChangeLog * Make-lang.in: Added CP_PLUGIN_HEADERS and c.install-target to export cp-tree.h cxx-pretty-print.h name-lookup.h headers for plugins. fortran/ChangeLog * Make-lang.in (fortran.install-plugin): New target for installing plugin headers. java/ChangeLog * Make-lang.in (java.install-plugin): New target for installing plugin headers. objc/ChangeLog * Make-lang.in (objc.install-plugin): New target for installing plugin headers. objcp/ChangeLog * Make-lang.in (obj-c.install-plugin): New target for installing plugin headers. Co-Authored-By: Rafael Avila de Espindola <espindola@google.com> From-SVN: r149648
2009-07-132009-07-13 Ghassan Shobaki <ghassan.shobaki@amd.com>Ghassan Shobaki1-0/+47
* haifa-sched.c (rank_for_schedule): Introduced flags to enable/disable individual scheduling heuristics. * common.opt: Introduced flags to enable/disable individual heuristics in the scheduler. * doc/invoke.texi: Introduced flags to enable/disable individual heuristics in the scheduler. From-SVN: r149603
2009-07-11re PR target/40667 (stack frames are generated even with -fomit-frame-pointer)Jakub Jelinek1-0/+8
PR rtl-optimization/40667 * defaults.h (MINIMUM_ALIGNMENT): Define if not defined. * doc/tm.texi (MINIMUM_ALIGNMENT): Document it. * config/i386/i386.h (MINIMUM_ALIGNMENT): Define. * config/i386/i386.c (ix86_minimum_alignment): New function. * config/i386/i386-protos.h (ix86_minimum_alignment): New prototype. * cfgexpand.c (expand_one_var): Use MINIMIM_ALIGNMENT. * emit-rtl.c (gen_reg_rtx): Likewise. * function.c (assign_parms): Likewise. If nominal_type needs bigger alignment than FUNCTION_ARG_BOUNDARY, use its alignment rather than passed_type's alignment. From-SVN: r149513
2009-07-10re PR target/39079 (MIPS: __builtin___clear_cache() broken on SMP ↵David Daney2-1/+25
ISA_HAS_SYNCI systems.) 2009-07-10 David Daney <ddaney@caviumnetworks.com> PR target/39079 * testsuite/gcc.target/mips/mips.exp: Make -msynci a known option. * gcc.target/mips/clear-cache-1.c (dg-options): Add -msynci. 2009-07-10 David Daney <ddaney@caviumnetworks.com> PR target/39079 * config.gcc (supported_defaults): Add synci. (with_synci): Add validation. (all_defaults): Add synci. * config/mips/mips.md (clear_cache): Use TARGET_SYNCI instead of ISA_HAS_SYNCI. (synci): Same. * config/mips/mips.opt (msynci): New option. * config/mips/mips.c (mips_override_options): Warn on use of -msynci for targets that do now support it. * gcc/config/mips/mips.h (OPTION_DEFAULT_SPECS): Add a default for msynci. * gcc/doc/invoke.texi (-msynci): Document the new option. * doc/install.texi (--with-synci): Document the new option. From-SVN: r149500
2009-07-10re PR c/25509 (can't disable __attribute__((warn_unused_result)))Manuel López-Ibáñez1-1/+8
2009-07-10 Manuel López-Ibáñez <manu@gcc.gnu.org> PR 25509 PR 40614 * c.opt (Wunused-result): New. * doc/invoke.texi: Document it. * c-common.c (c_warn_unused_result): Use it. testsuite/ * g++.dg/warn/unused-result1-Werror.c: New. From-SVN: r149458
2009-07-06lib1funcs.h (FMOVD_WORKS): Only define if __FMOVD_ENABLED__ is defined.Nick Clifton1-77/+71
* config.sh/lib1funcs.h (FMOVD_WORKS): Only define if __FMOVD_ENABLED__ is defined. * config/sh/sh.h (TARGET_FMOVD): Provide a default definition. (MASK_FMOVD): Likewise. (TARGET_CPU_CPP_BUILTINS): Define __FMOVD_ENABLED__ if TARGET_FMOVD is true. * config/sh/sh.md (movdf_i4): For alternative 0 use either one or two fmov instructions depending upon whether TARGET_FMOVD is enabled. (split for DF load from memory into register): Also handle MEMs which consist of REG+DISP addressing. (split for DF store from register to memory): Likewise. (movsf_ie): Always use single fp_mode. * config/sh/sh.c (sh_override_options): Do not automatically enable TARGET_MOVD for the SH2A when supporting doubles - leave that to the -mfmovd command line switch. (broken_move): Do not restrict fldi test to only the SH4 and SH4A. (fldi_ok): Always allow. * config/sh/sh.opt (mfmovd): Remove this switch. * doc/invoke.texi (-mfmovd): Remove documentation of this switch. Co-Authored-By: DJ Delorie <dj@redhat.com> From-SVN: r149283
2009-06-29* doc/install.texi (mep-x-elf): Correct chip's full name.DJ Delorie1-1/+1
From-SVN: r149079
2009-06-29extend.texi: Fix typo.H.J. Lu1-1/+1
2009-06-29 H.J. Lu <hongjiu.lu@intel.com> * doc/extend.texi: Fix typo. From-SVN: r149076
2009-06-29extend.texi: Add MeP attributes and pragmas.DJ Delorie5-2/+447
* doc/extend.texi: Add MeP attributes and pragmas. * doc/invoke.text: Add MeP Options. * doc/contrib.texi: Add MeP contribution. * doc/md.texi: Add MeP constraints. * doc/install.texi: Add MeP target. From-SVN: r149068
2009-06-30target.h (struct gcc_target): Add frame_pointer_required field.Anatoly Sokolov1-9/+9
* target.h (struct gcc_target): Add frame_pointer_required field. * target-def.h (TARGET_FRAME_POINTER_REQUIRED): New. (TARGET_INITIALIZER): Use TARGET_FRAME_POINTER_REQUIRED. * ira.c (setup_eliminable_regset): Use frame_pointer_required target hook. * reload1.c (update_eliminables): (Ditto.). * gcc/system.h (FRAME_POINTER_REQUIRED): Poison. * doc/tm.texi (FRAME_POINTER_REQUIRED): Revise documentation. (INITIAL_FRAME_POINTER_OFFSET): (Ditto.). * config/arc/arc.h (FRAME_POINTER_REQUIRED): Remove macro. * config/arm/arm.h (FRAME_POINTER_REQUIRED): Remove macro. * config/arm/arm.c (TARGET_FRAME_POINTER_REQUIRED): Define. (arm_frame_pointer_required): New function. * config/avr/avr.h (FRAME_POINTER_REQUIRED): Remove macro. * config/avr/avr.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. (avr_frame_pointer_required_p): Declare as static. * config/avr/avr-protos.h (avr_frame_pointer_required_p): Remove. * config/bfin/bfin.h (FRAME_POINTER_REQUIRED): Remove macro. * config/bfin/bfin.c (TARGET_FRAME_POINTER_REQUIRED): Define. (bfin_frame_pointer_required): Make as static, change return type to bool. * config/bfin/bfin-protos.h (bfin_frame_pointer_required): Remove. * config/cris/cris.h (FRAME_POINTER_REQUIRED): Remove macro. * config/cris/cris.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. (cris_frame_pointer_required): New function. * config/crx/crx.h (FRAME_POINTER_REQUIRED): Remove macro. * config/fr30/fr30.h (FRAME_POINTER_REQUIRED): Remove macro. * config/fr30/fr30.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. (fr30_frame_pointer_required): New function. * config/frv/frv.h (FRAME_POINTER_REQUIRED): Remove macro. * config/frv/frv.c (TARGET_FRAME_POINTER_REQUIRED): Define. (frv_frame_pointer_required): Make as static, change return type to bool. * config/bfin/bfin-protos.h (frv_frame_pointer_required): Remove. * config/i386/i386.h (FRAME_POINTER_REQUIRED): Remove macro. * config/i386/i386.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. (ix86_frame_pointer_required): Make as static, change return type to bool. * config/i386/i386-protos.h (ix86_frame_pointer_required): Remove. * config/m32c/m32c.h (FRAME_POINTER_REQUIRED): Remove macro. * config/m32c/m32c.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. * config/m32r/m32r.h (FRAME_POINTER_REQUIRED): Remove macro. * config/mcore/mcore.h (CAN_ELIMINATE): Remove macro. * config/mep/mep.h (FRAME_POINTER_REQUIRED): Remove macro. * config/mips/mips.h (FRAME_POINTER_REQUIRED): Remove macro. * config/mips/mips.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. (mips_frame_pointer_required): Make as static. * config/mips/mips-protos.h (mips_frame_pointer_required): Remove. * config/mmix/mmix.h (FRAME_POINTER_REQUIRED): Remove macro. * config/mmix/mmix.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. (mmix_frame_pointer_required): Mew function. * config/moxie/moxie.h (FRAME_POINTER_REQUIRED): Remove macro. * config/moxie/moxie.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. * config/pa/pa.h (FRAME_POINTER_REQUIRED): Remove macro. * config/score/score.h (FRAME_POINTER_REQUIRED): Remove macro. * config/sh/sh.h (CAN_ELIMINATE): Remove macro. * config/sparc/sparc.h (FRAME_POINTER_REQUIRED): Remove macro. (CAN_ELIMINATE): Redefine. * config/sparc/sparc.c (TARGET_FRAME_POINTER_REQUIRED): Define macro. (sparc_frame_pointer_required): New function. (sparc_can_eliminate): New function. * config/sparc/sparc-protos.h (sparc_can_eliminate): Declare. * config/vax/vax.h (FRAME_POINTER_REQUIRED): Remove macro. * config/vax/vax.c (TARGET_FRAME_POINTER_REQUIRED): Define. * config/xtensa/xtensa.h (FRAME_POINTER_REQUIRED): Remove macro. * config/xtensa/xtensa.c (TARGET_FRAME_POINTER_REQUIRED): Define. (xtensa_frame_pointer_required): Make as static, change return type to bool. * config/xtensa/xtensa-protos.h (xtensa_frame_pointer_required): Remove. From-SVN: r149065
2009-06-29plugins.texi: Document PLUGIN_START_UNIT.Olatunji Ruwase1-0/+1
2009-06-29 Olatunji Ruwase <tjruwase@google.com> * doc/plugins.texi: Document PLUGIN_START_UNIT. * toplev.c (compile_file): Call PLUGIN_START_UNIT. * gcc-plugin.h (PLUGIN_START_UNIT): Added new event. * plugin.c (plugin_event_name): Added PLUGIN_START_UNIT. (register_callback): Handle PLUGIN_START_UNIT. (invoke_plugin_callbacks): Handle PLUGIN_START_UNIT. From-SVN: r149064
2009-06-29extend.texi (Additional Floating Types): __float128 is also supported on ↵Uros Bizjak1-2/+1
i386 targets. * doc/extend.texi (Additional Floating Types): __float128 is also supported on i386 targets. From-SVN: r149054
2009-06-26arm-cores.def: Added core cortex-m0.Daniel Gutson1-0/+1
2009-06-26 Daniel Gutson <dgutson@codesourcery.com> * config/arm/arm-cores.def: Added core cortex-m0. * config/arm/arm-tune.md: Regenerated. * doc/invoke.texi: Added entry for cpu ARM Cortex-M0. From-SVN: r148987
2009-06-25g++spec.c (SKIPOPT): define.Ian Lance Taylor1-1/+14
cp/: * g++spec.c (SKIPOPT): define. (lang_specific_driver): Handle -static-libstdc++. Only add LIBSTDCXX_STATIC if we add LIBSTDCXX. ./: * doc/invoke.texi (Option Summary): Mention -static-libstdc++. (Link Options): Document -static-libstdc++. From-SVN: r148951
2009-06-25plugins.texi (Building GCC plugins): Corrected typo in Makefile excerpt - @ ↵Basile Starynkevitch1-1/+1
should be doubled for texinfo. 2009-06-25 Basile Starynkevitch <basile@starynkevitch.net> * doc/plugins.texi (Building GCC plugins): Corrected typo in Makefile excerpt - @ should be doubled for texinfo. From-SVN: r148929
2009-06-25invoke.texi (SH Options): Document -m2a, -m2a-single, -m2a-single-only and ↵Takashi YOSHII1-1/+23
-m2a-nofpu. * doc/invoke.texi (SH Options): Document -m2a, -m2a-single, -m2a-single-only and -m2a-nofpu. * config/sh/sh.opt: Document m2a generates FPU code. From-SVN: r148926
2009-06-25defaults.h (CAN_ELIMINATE): Provide default.Anatoly Sokolov1-2/+4
* defaults.h (CAN_ELIMINATE): Provide default. * doc/tm.texi (CAN_ELIMINATE): Revise documentation. * config/alpha/alpha.h (CAN_ELIMINATE): Delete. * config/m32c/m32c.h (CAN_ELIMINATE): Delete. * config/spu/spu.h (CAN_ELIMINATE): Delete. * config/xtensa/xtensa.h (CAN_ELIMINATE): Delete. * config/moxie/moxie.h (CAN_ELIMINATE): Delete. * config/cris/cris.h (CAN_ELIMINATE): Delete. * config/mn10300/mn10300.h (CAN_ELIMINATE): Delete. * config/pa/pa64-linux.h (CAN_ELIMINATE): Delete. * config/mmix/mmix.h (CAN_ELIMINATE): Delete. From-SVN: r148919
2009-06-24contrib.texi (Contributors):Denis Chertykov1-1/+1
* doc/contrib.texi (Contributors): From-SVN: r148909
2009-06-24configure.ac: Add --enable-build-with-cxx.Ian Lance Taylor1-0/+25
./: * configure.ac: Add --enable-build-with-cxx. When set, add c++ to boot_languages. Only bootstrap target libraries listed in target_libs for some boot language. Add --with-stage1-ldflags, --with-stage1-libs, --with-boot-ldflags, --with-boot-libs. Remove with_host_libstdcxx from ppllibs. Only add -fkeep-inline-functions if not building with C++. * Makefile.def: For target_module libstdc++-v3, set bootstrap=true. * Makefile.tpl (STAGE1_LDFLAGS, STAGE1_LIBS): New variables. (POSTSTAGE1_LDFLAGS, POSTSTAGE1_LIBS): New variables. (HOST_EXPORTS): Add STAGE1_LDFLAGS to LDFLAGS. Export HOST_LIBS. (POSTSTAGE1_HOST_EXPORTS): Set CXX and CXX_FOR_BUILD. Add POSTSTAGE1_LDFLAGS to LDFLAGS. Export HOST_LIBS. (POSTSTAGE1_FLAGS_TO_PASS): Likewise. * configure, Makefile.in: Rebuild. gcc/: * configure.ac: Invoke AC_PROG_CXX. Separate C specific warnings from loose_warn into c_loose_warn and from strict_warn into c_strict_warn. Set and substitute warn_cxxflags. Check for --enable-build-with-cxx. Set and substitute ENABLE_BUILD_WITH_CXX. Set and substitute HOST_LIBS. * Makefile.in (CXXFLAGS): New variable. (C_LOOSE_WARN, C_STRICT_WARN): New variables. (GCC_WARN_CFLAGS): Add $(C_LOOSE_WARN). Add $(C_STRICT_WARN) if the default is the same as $(STRICT_WARN). (GCC_WARN_CXXFLAGS, WARN_CXXFLAGS): New variables. (CXX): New variable. (COMPILER): New value if ENABLE_BUILD_WITH_CXX. (COMPILER_FLAGS, LINKER, LINKER_FLAGS): Likewise. (ALL_COMPILERFLAGS, ALL_LINKERFLAGS): Likewise. (HOST_LIBS): New variable. (GCC_CFLAGS): Add $(C_LOOSE_WARN). (ALL_CXXFLAGS): New variable. (LIBS, BACKENDLIBS): Add $(HOST_LIBS). * doc/install.texi (Configuration): Document --enable-build-with-cxx, --with-stage1-ldflags, --with-stage1-libs, --with-boot-ldflags, --with-boot-libs. * configure: Rebuild. From-SVN: r148889
2009-06-22invoke.texi (Link Options): -nodefaultlibs and -nostdlib override library ↵Ralf Wildenhues1-2/+6
linkage flags such as... gcc/ * doc/invoke.texi (Link Options): -nodefaultlibs and -nostdlib override library linkage flags such as -static-libgcc or -shared-libgcc. From-SVN: r148811
2009-06-22Disable caller and callee super interworking.Ramana Radhakrishnan1-2/+5
2009-06-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> * config/arm/arm.c (arm_override_options): Disable -mcaller-super-interworking and -mcallee-super-interworking. * doc/invoke.texi (ARM Options): Document this. From-SVN: r148790
2009-06-18re PR testsuite/40488 (Revision 148642 caused extra failures)Richard Henderson1-0/+4
PR 40488 * tree-pass.h (TDF_ASMNAME): New. * tree-dump.c (dump_options): Add asmname. * doc/invoke.texi: Document it. * tree-pretty-print.c (maybe_dump_asm_name): Merge into... (dump_decl_name): ...here. (dump_function_name): New flags arg; mind TDF_ASMNAME. (dump_generic_node): Update dump_function_name calls. (print_call_name): New flags arg; update all dump calls. * diagnostic.h (print_call_name): Update. * gimple-pretty-print.c (dump_gimple_call): Update. From-SVN: r148685
2009-06-18plugins.texi: Document plugin_is_GPL_compatible.Diego Novillo1-0/+20
* doc/plugins.texi: Document plugin_is_GPL_compatible. * plugin.c (str_license): Declare. (try_init_one_plugin): Assert that the symbol 'plugin_is_GPL_compatible' exists. testsuite/ChangeLog * gcc.dg/plugin/selfassign.c: Declare plugin_is_GPL_compatible. * gcc.dg/plugin/ggcplug.c: Likewise. * gcc.dg/plugin/one_time_plugin.c: Likewise. * g++.dg/plugin/selfassign.c: Likewise. * g++.dg/plugin/attribute_plugin.c: Likewise. * g++.dg/plugin/dumb_plugin.c: Likewise. From-SVN: r148667
2009-06-18see removalSergei Dyshel1-6/+1
From-SVN: r148664
2009-06-18extend.texi (Half-Precision): New section.Sandra Loosemore2-2/+60
2009-06-18 Sandra Loosemore <sandra@codesourcery.com> gcc/ * doc/extend.texi (Half-Precision): New section. * doc/invoke.texi (Option Summary): List -mfp16-format. (ARM Options): List neon-fp16 as -mfpu value. Document -mfp16-format. * config/arm/arm.opt (mfp16-format=): New. * config/arm/arm.c: Include intl.h. (TARGET_INVALID_PARAMETER_TYPE): Redefine. (TARGET_INVALID_RETURN_TYPE): Redefine. (TARGET_PROMOTED_TYPE): Redefine. (TARGET_CONVERT_TO_TYPE): Redefine. (arm_fp16_format): Define. (all_fpus): Add entry for neon-fp16. (fp_model_for_fpu): Likewise. (struct fp16_format): Declare. (all_fp16_formats): Define. (arm_init_libfuncs): Add entries for HFmode conversions and arithmetic functions. (arm_override_options): Set arm_fp16_format. Call sorry for fp16 and no ldrh. (arm_legitimate_index_p): Treat HFmode like HImode. (thumb1_legitimate_address_p): Make it recognize HFmode constants. (coproc_secondary_reload_class): Special-case HFmode. (arm_print_operand): Add 'z' specifier for vld1.16/vst1.16. (arm_hard_regno_mode_ok): Allow HFmode values in VFP registers. (arm_init_fp16_builtins): New. (arm_init_builtins): Call it. (arm_invalid_parameter_type): New. (arm_invalid_return_type): New. (arm_promoted_type): New. (arm_convert_to_type). (arm_file_start): Deal with neon-fp16 as fpu_name. Emit tag for fp16 format. (arm_emit_fp16_const): New function. (arm_mangle_type): Mangle __fp16 as "Dh". * config/arm/arm.h (TARGET_VFPD32): Make it know about FPUTYPE_NEON_FP16. (TARGET_NEON_FP16): New. (TARGET_NEON): Make it know about FPUTYPE_NEON_FP16. (enum fputype): Add FPUTYPE_NEON_FP16. (enum arm_fp16_format_type): Declare. (arm_fp16_format): Declare. (LARGEST_EXPONENT_IS_NORMAL): Define. * config/arm/arm-protos.h (arm_emit_fp16_const): Declare. * config/arm/arm-modes.def (HFmode): Define. * config/arm/vfp.md: (*movhf_vfp): New. (extendhfsf2): New. (truncsfhf2): New. * config/arm/arm.md: (fpu): Add neon_fp16. (floatsihf2, floatdihf2): New. (fix_trunchfsi2, fix_trunchfdi2): New. (truncdfhf2): New. (extendhfdf2): New. (movhf): New. (*arm32_movhf): New. (*thumb1_movhf): New. (consttable_2): Add check for HFmode constants. (consttable_4): Handle HFmode constants. From-SVN: r148654
2009-06-17Create new constraint "d" for PowerPC FPRs with 64-bit values.Michael Eager1-1/+4
Replace uses of "f" constraint with "d" as needed. From-SVN: r148630
2009-06-17plugins.texi (Building GCC plugins): Added new section.Basile Starynkevitch1-0/+34
2009-06-17 Basile Starynkevitch <basile@starynkevitch.net> * gcc/doc/plugins.texi (Building GCC plugins): Added new section. From-SVN: r148612
2009-06-16install.texi (*-*-aix): Update explanation of XLC bootstrap.David Edelsohn1-5/+17
* doc/install.texi (*-*-aix): Update explanation of XLC bootstrap. GCC can bootstrap on AIX with GNU Binutils 2.20. From-SVN: r148545
2009-06-16invoke.texi (Debugging Options): Fix option index entries for ↵Ralf Wildenhues1-11/+13
-fdump-statistics... gcc/ * doc/invoke.texi (Debugging Options): Fix option index entries for -fdump-statistics, -frandom-seed add entries for -fdump-tree-original, -fdump-tree-optimized, -frandom-seed. (FRV Options): Fix entries for -mTLS, -mtls. (HPPA Options): Fix entries for -mgnu-ld, -mhp-ld. (i386 and x86-64 Options): Fix entry for -mno-red-zone. (M68hc1x Options): Fix @itemx for -mnominmax. (MCore Options): Fix entry for -mno-lsim. (MMIX Options): Fix entry for -mabi=mmixware. (PDP-11 Options): Fix entry for -mbcopy-builtin. From-SVN: r148516
2009-06-16plugins.texi (Interacting with the GCC Garbage Collector): Mention the ↵Basile Starynkevitch2-4/+14
plugin mode of gengtype. 2009-06-16 Basile Starynkevitch <basile@starynkevitch.net> * gcc/doc/plugins.texi (Interacting with the GCC Garbage Collector): Mention the plugin mode of gengtype. * gcc/doc/gty.texi (Source Files Containing Type Information): Likewise. * gcc/gengtype.c: Updated copyright. (plugin_files, nb_plugin_files) Added new static variables. (measure_input_list) Care about plugin_files. (write_rtx_next): Added early return in plugin mode. (create_file): Updated copyright year in generated file. Added asserts. (oprintf): Added early return if NULL outf. (get_output_file_with_visibility): Care of plugin_files. (get_output_file_name): May return null. (write_local): Added early return. (put_mangled_filename): Ditto. (finish_root_table): Added check for base_files. (write_roots): Care about null when plugins. (main): Added plugin mode. From-SVN: r148515
2009-06-16df-problems.c (df_simulate_one_insn_forwards): Fix braces in switch.Ian Lance Taylor1-1/+15
./: * df-problems.c (df_simulate_one_insn_forwards): Fix braces in switch. * gcov.c (read_count_file): Add braces around variables declared before label. * c.opt (Wjump-misses-init): New warning. * c-opts.c (c_common_handle_option): Set warn_jump_misses_init for -Wall and -Wc++-compat if not already set. (c_common_post_options): Clear warn_jump_misses_init if it was not set. * c-decl.c (struct c_binding): Change type field to a union with new label field. Make it the first field in the struct. Update references to type to use u.type instead. (struct c_spot_bindings): Define. (struct c_goto_bindings): Define. (c_goto_bindings_p): Define, along with VECs. (struct c_label_vars): Define. (struct c_scope): Add has_label_bindings field. (bind_label, set_spot_bindings): New static functions. (decl_jump_unsafe, update_spot_bindings): New static functions. (update_label_decls): New static function. (pop_scope): Call update_label_decls. Don't call c_end_vm_scope. Update binding u.label field to shadowed field. (c_binding_start_stmt_expr): New function. (c_binding_end_stmt_expr): New function. (pushdecl): Don't call c_begin_vm_scope. (make_label): Add defining and p_label_vars parameters. Change all callers. (lookup_label): Correct test for whether a label has not yet been defined. Call bind_label rather than bind. (warn_about_goto): New static function. (lookup_label_for_goto): New function. (declare_label): Call bind_label rather than bind. (check_earlier_gotos): New static function. (define_label): Don't give errors about jumping into statement expressions or scopes of variably modified types. Call set_spot_bindings and check_earlier_gotos. Call bind_label instead of bind. Don't set label_context_stack_se or label_context_stack_vm. (c_get_switch_bindings): New function. (c_release_switch_bindings): New function. (c_check_switch_jump_warnings): New function. (start_function): Don't set label_context_stack_se or label_context_stack_vm. (finish_function): Likewise. * c-typeck.c (label_context_stack_se): Don't define. (label_context_stack_vm): Don't define. (c_finish_goto_label): Call lookup_label_for_goto rather than lookup_label. Don't give errors about jumping into a statement expression or the scope of a variably modified type. Don't set label_context_stack_se or label_context_stack_vm. (struct c_switch): Remove blocked_stmt_expr and blocked_vm fields. Add bindings field. (c_start_case): Don't set deleted fields. Set bindings field. (do_case): Rework order of tests. Don't check blocked_stmt_expr or blocked_vm. Call c_check_switch_jump_warnings. (c_finish_case): Don't test blocked_stmt_expr field. Call c_release_switch_bindings. (c_begin_stmt_expr): Don't increment blocked_stmt_expr in c_switch_stack. Don't walk label_context_stack_se labels. Don't set label_context_stack_se. Call c_bindings_start_stmt_expr. (c_finish_stmt_expr): Don't decrement blocked_stmt_expr in c_switch_stack. Don't walk label_context_stack_se labels. Don't set label_context_stack_se. Call c_bindings_end_stmt_expr. (c_begin_vm_scope, c_end_vm_scope): Don't define. * c-tree.h (C_DECL_UNJUMPABLE_STMT_EXPR): Don't define. (C_DECL_UNDEFINABLE_STMT_EXPR): Don't define. (C_DECL_UNJUMPABLE_VM): Don't define. (C_DECL_UNDEFINABLE_VM): Don't define. (struct c_label_list): Don't define. (struct c_label_context_se): Don't define. (struct c_label_context_vm): Don't define. (struct c_spot_bindings): Declare. (c_bindings_start_stmt_expr): Declare. (c_bindings_end_stmt_expr): Declare. (lookup_label_for_goto): Declare. (c_get_switch_bindings, c_release_switch_bindings): Declare. (c_check_switch_jump_warnings): Declare. (label_context_stack_se, label_context_stack_vm): Don't declare. (c_finish_goto_label): Update declaration. (c_begin_vm_scope, c_end_vm_scope): Don't declare. * doc/invoke.texi (Option Summary): Mention -Wjump-misses-init. (Warning Options): Document -Wjump-misses-init. cp/: * parser.c (cp_parser_direct_declarator): Add braces around variables declared before label. objc/: * objc-act.c (objc_start_function): Don't set label_context_stack_se or label_context_stack_vm. testsuite/: * gcc.dg/Wjump-misses-init-1.c: New testcase. * gcc.dg/Wjump-misses-init-2.c: New testcase. * gcc.dg/c99-vla-jump-5.c: Adjust expected error messages. Recognize new notes. * gcc.dg/stmt-expr-label-2.c: Likewise. * gcc.dg/c99-vla-jump-1.c: Recognize new notes. Fix column numbers. * gcc.dg/c99-vla-jump-2.c: Recognize new notes. * gcc.dg/c99-vla-jump-3.c: Recognize new notes. * gcc.dg/c99-vla-jump-4.c: Likewise. * gcc.dg/stmt-expr-label-1.c: Likewise. * gcc.dg/stmt-expr-label-3.c: Likewise. * gcc.dg/vla-8.c: Likewise. Move error message to different line. From-SVN: r148512
2009-06-13invoke.texi: Add missing option -Wp,OPTION in list, fix index entry for ↵Joerg Sonnenberger1-1/+2
-Xpreprocessor. gcc/: * doc/invoke.texi: Add missing option -Wp,OPTION in list, fix index entry for -Xpreprocessor. From-SVN: r148451
2009-06-11i386.c (OPTION_MASK_ISA_CRC32_SET): New.H.J. Lu1-1/+7
gcc/ 2009-06-11 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (OPTION_MASK_ISA_CRC32_SET): New. (OPTION_MASK_ISA_CRC32_UNSET): Likewise. (ix86_handle_option): Handle OPT_mcrc32. (ix86_target_string): Add -mcrc32. (bdesc_args): Enable crc32 builtins with OPTION_MASK_ISA_CRC32. * config/i386/i386.h (TARGET_CRC32): New. * config/i386/i386.md (sse4_2_crc32<mode>): Also check TARGET_CRC32. (sse4_2_crc32di): Likewise. * config/i386/i386.opt (mcrc32: New. * doc/invoke.texi: Document -mcrc32. gcc/testsuite/ 2009-06-11 H.J. Lu <hongjiu.lu@intel.com> * gcc.target/i386/crc32-1.c: New. * gcc.target/i386/crc32-2.c: Likewise. From-SVN: r148410
2009-06-11common.opt (gdwarf-): Accept a version number.Richard Henderson1-9/+10
* common.opt (gdwarf-): Accept a version number. * doc/invoke.texi (gdwarf-): Update docs. * opth-gen.awk: Special case -gdwarf+ to OPT_gdwarfplus. * opts.c (common_handle_option) [OPT_gdwarf_]: Verify dwarf version level, and record it. * dwarf2.h (DW_CIE_VERSION): Remove. * dwarf2out.c (DWARF_VERSION): Remove. (add_fde_cfi): Skip DW_CFA_set_loc addition for dwarf3. (output_call_frame_info): Use CIE version 3 for dwarf3, or if the return register column is out of range for version 1. (dwarf_stack_op_name): Add all dwarf3 values. (DEBUG_PUBTYPES_SECTION): New. (size_of_die) [dw_val_class_die_ref]: Handle DW_FORM_ref_addr encoding change for dwarf3. (output_die) [dw_val_class_die_ref]: Likewise. (output_compilation_unit_header): Emit correct version for dwarf3. (output_line_info): Likewise. (output_pubnames): Update for DWARF_VERSION removal. (output_aranges): Likewise. (gen_subprogram_die): Emit DW_OP_call_frame_cfa if emitting dwarf3. (dwarf2out_init): Don't ifdef DEBUG_PUBTYPES_SECTION. (dwarf2out_finish): Likewise. ada/ * gcc-interface/misc.c (gnat_handle_option): Rename OPT_gdwarf_ to OPT_gdwarfplus. From-SVN: r148408
2009-06-11re PR c/39252 (Request new feature __builtin_unreachable ())David Daney1-0/+55
2009-06-11 David Daney <ddaney@caviumnetworks.com> PR c/39252 * doc/extend.texi ( __builtin_unreachable): Document new builtin. * builtins.c (expand_builtin_unreachable): New function. (expand_builtin): Handle BUILT_IN_UNREACHABLE case. * builtins.def (BUILT_IN_UNREACHABLE): Add new builtin. * cfgcleanup.c (try_optimize_cfg): Delete empty blocks with no successors. * cfgrtl.c (rtl_verify_flow_info): Handle empty blocks when searching for missing barriers. 2009-06-11 David Daney <ddaney@caviumnetworks.com> PR c/39252 * gcc.dg/builtin-unreachable-1.c: New test. * gcc.dg/builtin-unreachable-2.c: Same. From-SVN: r148403
2009-06-10extend.texi: Add description for __builtin_ia32_crc32di.H.J. Lu1-0/+1
2009-06-10 H.J. Lu <hongjiu.lu@intel.com> * doc/extend.texi: Add description for __builtin_ia32_crc32di. From-SVN: r148341
2009-06-10Commit moxie port.Anthony Green3-1/+28
From-SVN: r148339
2009-06-082009-06-08 Ghassan Shobaki <ghassan.shobaki@amd.com>Ghassan Shobaki1-0/+9
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com> * tree-ssa-loop-prefetch.c (gather_memory_references): Introduced a counter for the number of memory references. (anything_to_prefetch_p): Introduced a counter for the number of prefetches. (is_loop_prefetching_profitable): New function with a cost model for prefetching. (loop_prefetch_arrays): Use the new cost model to determine if prefetching is profitable. * params.def (MIN_INSN_TO_PREFETCH_RATIO, PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters. * params.h (MIN_INSN_TO_PREFETCH_RATIO, PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters. * doc/invoke.texi (MIN_INSN_TO_PREFETCH_RATIO, PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters. Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com> From-SVN: r148277
2009-06-08common.opt (fcompare-debug=, [...]): New.Alexandre Oliva1-1/+58
gcc/ChangeLog: * common.opt (fcompare-debug=, fcompare-debug-second): New. (fdump-final-insns=, gtoggle): New. * doc/invoke.texi: Document them. * final.c (rest_of_clean_state): Dump final insn stream. * gcc.c (invoke_as): Hook in -fcompare-debug. (static_spec_functions): Add compare-debug-dump-opt, compare-debug-self-opt and compare-debug-auxbase-opt. (compare_debug, compare_debug_second, compare_debug_opt): New. (switches_debug_check, n_switches_debug_check): New. (debug_auxbase_opt, debug_check_temp_file): New. (process_command): Handle -fno-compare-debug, -fcompare-debug and -fcompare-debug=*. (do_self_spec): Handle arguments after switches. (do_spec_1): Add .gk extension to temp file basenames for compare. (check_live_switch): Take SWITCH_IGNORE into account, and earlier. (cc1_options): Use it instead of normal auxbase computation for the second compare-debug compilation. (compare_files): New. (main): Set up and implement compare debug mode. (compare_debug_dump_opt_spec_function): New. (compare_debug_self_opt_spec_function): New. (compare_debug_auxbase_opt_spec_function): New. * toplev.c (process_options): Handle flag_gtoggle, flag_dump_final_insns. * coverage.c (coverage_begin_output): Don't overwrite .gcno file during -fcompare-debug-second compilation. gcc/cp/ChangeLog: * repo.c (get_base_filename): Use aux_base_name rather than alternate temporary file during second compare debug compilation. (finish_repo): Skip during -fcompare-debug-second. gcc/ada/ChangeLog: * lib-writ.adb (flag_compare_debug): Import. (Write_ALI): Skip during -fcompare-debug-second. gcc/fortran/ChangeLog: * options.c (gfc_post_options): Disable dump_parse_tree during -fcompare-debug-second. gcc/objc/ChangeLog: * objc-act.c (objc_init): Skip print_struct_values during -fcompare-debug-second. From-SVN: r148271
2009-06-08dwarf2.h (enum dwarf_location_atom): Add INTERNAL_DW_OP_tls_addr.Ian Lance Taylor1-2/+6
./: * dwarf2.h (enum dwarf_location_atom): Add INTERNAL_DW_OP_tls_addr. * dwarf2out.c (INTERNAL_DW_OP_tls_addr): Don't #define. * c-common.c (c_do_switch_warnings): Don't exit early for -Wswitch with no default node. Change warning with %H to warning_at. Don't clear warn_switch around case checking. * doc/invoke.texi (Warning Options): Clarify distinction between -Wswitch and -Wswitch-enum. java/: * jcf-parse.c (handle_constant): Change local variable 'kind' to unsigned int. testsuite/: * g++.dg/warn/Wswitch-3.C: New testcase. * gcc.dg/Wswitch.c: Adjust for -Wswitch change. * gcc.dg/Wswitch-enum-error.c: Likewise. * gcc.dg/Wswitch-error.c: Likewise. From-SVN: r148270
2009-06-07extend.texi (Attribute Syntax): Document that C++ labels on empty statements ↵Ian Lance Taylor1-5/+7
can now have attributes. ./: * doc/extend.texi (Attribute Syntax): Document that C++ labels on empty statements can now have attributes. cp/: * parser.c (cp_parser_label_for_labeled_statement): Support attribute on labels if immediately followed by semicolon. * semantics.c (finish_label_stmt): Return new label. * pt.c (tsubst_expr): Handle attributes for LABEL_EXPR. testsuite/: * gcc.dg/Wunused-label-1.c: New test case. * g++.dg/warn/Wunused-label-1.C: New test case. * g++.dg/warn/Wunused-label-2.C: New test case. * g++.dg/warn/Wunused-label-3.C: New test case. From-SVN: r148242
2009-06-04gcc.c (report_times_to_file): New.Alexandre Oliva1-3/+17
* gcc.c (report_times_to_file): New. (execute): Implement it. (process_command): Support -time=. * doc/invoke.texi: Document it. From-SVN: r148162
2009-06-02common.opt (fdump-unnumbered-links): New.Alexandre Oliva1-1/+7
* common.opt (fdump-unnumbered-links): New. * doc/invoke.texi (-fdump-unnumbered-links): Document it. * print-rtl.c (flag_dump_unnumbered_links): New. (print_rtx): Test it. From-SVN: r148074
2009-06-01attribs.c (register_attribute): Use CONST_CAST.Ian Lance Taylor1-0/+13
./: * attribs.c (register_attribute): Use CONST_CAST. * collect2.c (main): Use CONST_CAST2. (scan_prog_file): Likewise. * gcc.c (process_command, main): Likewise. * toplev.c (toplev_main): Likewise. * c-typeck.c (handle_warn_cast_qual): New static function, partially broken out of build_c_cast. (build_c_cast): Call handle_warn_cast_qual. * doc/invoke.texi (Warning Options): Document new effect of -Wcast-qual. ./java: * jcf-io.c (find_class): Use CONST_CAST. ./testsuite: * gcc.dg/cast-qual-3.c: New testcase. * g++.dg/warn/Wcast-qual2.C: New testcase. From-SVN: r148053
2009-06-01* doc/invoke.texi (IA-64 Options): Fix typo.Nick Clifton1-2/+2
From-SVN: r148037
2009-05-29tree-sra.c: New implementation of SRA.Martin Jambor1-13/+0
2009-05-29 Martin Jambor <mjambor@suse.cz> * tree-sra.c: New implementation of SRA. * params.def (PARAM_SRA_MAX_STRUCTURE_SIZE): Removed. (PARAM_SRA_MAX_STRUCTURE_COUNT): Removed. (PARAM_SRA_FIELD_STRUCTURE_RATIO): Removed. * params.h (SRA_MAX_STRUCTURE_SIZE): Removed. (SRA_MAX_STRUCTURE_COUNT): Removed. (SRA_FIELD_STRUCTURE_RATIO): Removed. * doc/invoke.texi (sra-max-structure-size): Removed. (sra-field-structure-ratio): Removed. * testsuite/gfortran.dg/pr25923.f90: XFAIL warning expectation. * testsuite/gcc.dg/tree-ssa/ssa-fre-7.c: Compile with -fno-tree-sra. * testsuite/gcc.dg/tree-ssa/ssa-fre-8.c: Likewise. * testsuite/gcc.dg/tree-ssa/ssa-fre-9.c: Likewise. * testsuite/gcc.dg/memcpy-1.c: Removed param sra-max-structure-size. * testsuite/gcc.dg/tree-ssa/sra-2.c: Likewise. * testsuite/gcc.dg/tree-ssa/sra-3.c: Likewise. * testsuite/gcc.dg/tree-ssa/sra-1.c: Likewise. * testsuite/gcc.dg/tree-ssa/sra-4.c: Changed comment. * testsuite/gcc.dg/tree-ssa/sra-5.c: New file. * testsuite/gcc.dg/tree-ssa/sra-6.c: New file. * testsuite/gcc.c-torture/compile/sra-1.c: New file. From-SVN: r147980
2009-05-282009-05-28 Steve Ellcey <sje@cup.hp.com>Steve Ellcey1-43/+70
* doc/invoke.texi (IA-64 Options) Add -msdata, -mfused-madd, -mno-inline-float-divide, -mno-inline-int-divide, -mno-inline-sqrt, -msched-spec-ldc, -msched-spec-control-ldc, -msched-prefer-non-data-spec-insns, -msched-prefer-non-control-spec-insns, -msched-stop-bits-after-every-cycle, -msched-count-spec-in-critical-path, -msel-sched-dont-check-control-spec, -msched-fp-mem-deps-zero-cost -msched-max-memory-insns-hard-limit, -msched-max-memory-insns Remove -mt, -pthread, -msched-ldc, -mno-sched-control-ldc, and -msched-spec-verbose. From-SVN: r147960
2009-05-28re PR target/37216 ([cygming] Invalid alignment for SSE store to .comm data ↵Dave Korn2-1/+17
generated with -O3) gcc/ChangeLog: 2009-05-28 Dave Korn <dave.korn.cygwin@gmail.com> PR target/37216 * configure.ac (HAVE_GAS_ALIGNED_COMM): Add autoconf test and macro definition for support of three-operand format aligned .comm directive in assembler on cygwin/pe/mingw target OS. * configure: Regenerate. * config.in: Regenerate. * config/i386/winnt.c (i386_pe_asm_output_aligned_decl_common): Use aligned form of .comm directive if -mpe-aligned-commons is in effect. * config/i386/cygming.opt (-mpe-aligned-commons): Add new option. * doc/invoke.texi (-mpe-aligned-commons): Document new target option. * doc/tm.texi (ASM_OUTPUT_COMMON): Document zero size commons. gcc/testsuite/ChangeLog: 2009-05-28 Dave Korn <dave.korn.cygwin@gmail.com> Uros Bizjak <ubizjak@gmail.com> Danny Smith <dansmister@gmail.com> PR target/37216 * lib/target-supports.exp (check_effective_target_pe_aligned_commons): New function. * gcc.target/i386/pr37216.c: New test source file. * gcc.dg/compat/struct-layout-1_generate.c (dg_options[]): No longer use -fno-common for testing Cygwin and MinGW targets. Co-Authored-By: Danny Smith <dansmister@gmail.com> Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r147950