| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69123 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(dump_cgraph): Use it.
* cgraph.h (cgraph_dump_file): Declare.
(cgraph_node_name): Declare.
* cgraphunit.c: Include timevar.h
(cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
(cgraph_optimize_function): Use TV_INTEGRATION.
(cgraph_mark_local_functions): reorganize dumps.
(cgraph_mark_functions_to_inline_once): Likewise.
(cgraph_optimize): Likewise; use timevar.
* timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
* toplev.c (dump_file_index): Add DFI_cgraph.
(dump_file_info): Likewise.
(cgraph_dump_file): New global variable.
(do_compile): Open and close cgraph dump.
* invoke.texi (-d): Document new flag; renumber.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69120 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(DECL_ESTIMATED_INSNS): ... this.
* lang.c (java_estimate_num_insns, java_estimate_num_insns_1):
New static functions.
(LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): Define.
* parser.y (add_stmt_to_compound): Do not account statements.
* cp-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
* decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
(start_function): Use DECL_ESTIMATED_INSNS.
* optimize.c (maybe_clone_body): Use DECL_ESTIMATED_INSNS.
* decl2.c (maybe_emit_vtables): Fix marking vtables as needed in
unit-at-a-time
* c-common.c (c_estimate_num_insns_1): New static function.
(c_estimate_num_insns): New global function.
* c-common.h (DECL_NUM_STMTS): Rename to...
(DECL_ESTIMATED_INSNS): ... this.
(c_estimate_num_insns): Declare.
* c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
* c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
* c-semantics.c (add_stmt): Do not account statements.
* langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
New.
* langhooks.h (lang_hooks_for_tree_inlining): Add
estimate_num_insns
* params.def (max-inline-insns-auto, max-inline-insns-auto): set
to 100.
(max-inline-insns): set to 300.
(min-inline-insns): set to 10.
* tree-inline.c (struct inline_data): Rename inlined_stmts to
inlined-insns.
(INSNS_PER_STMT): Kill.
(inlinable_function_p): Compute and store body size.
(expand_call_inline): Likewise.
(optimize_inline_calls): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69113 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
(SECTION_FUNCTION_TEMPLATE): Delete.
* config/mips/elf.h: As for elf64.h.
(ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
* config/mips/linux.h: As for elf.h
* config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
* config/mips/iris6.h (EXTRA_SECTIONS): Delete.
(EXTRA_SECTION_FUNCTIONS): Remove sdata_section. Remove the handling
of in_sdata from current_section_name and current_section_flags.
* config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
* config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
(MASK_GP_OPT, TARGET_GP_OPT): Delete.
(MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
(TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
(SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
* config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
(TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
(mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
(override_options): Remove setting of MASK_GPOPT.
(mips_output_external): Use mips_in_small_data_p to check whether a
symbol needs an .extern directive. Don't emit such directives for
TARGET_EXPLICIT_RELOCS.
(mips_declare_object): Update accordingly.
(mips_select_rtx_section): Call named_section rather than
SMALL_DATA_SECTION.
(mips_select_section): Use default_elf_section_section for everything
except .text string constants.
(mips_in_small_data_p): New function.
(mips_encode_section_info): Remove small data handling.
(mips_unique_section): Delete.
(iris6_section_type_flags): New function.
* doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69090 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69073 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
-frandom-seed.
* configure: Regenerated.
* Makefile.in: Remove extraneous comment.
* toplev.c (randomize): Protect against potential multiple calls.
* doc/invoke.texi (-frandom-seed): Document use for in coverage
files.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69039 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/invoke.texi (-falign-functions): Document that
when n is zero then a machine-dependent default is used.
(-falign-labels): Document that when n is zero then a
machine-dependent default is used and that -falign-labels =1
is equivalent to -fno-align-labels.
(-falign-loops): Likewise.
(-falign-jumps): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69030 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(struct cpp_options): Add narrow_charset, wide_charset,
bytes_big_endian fields. Remove EBCDIC field.
(cpp_init_iconv, cpp_interpret_string): New external interfaces.
* cpphash.h: Include <iconv.h> if we have it, otherwise
provide a dummy definition of iconv_t.
(struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
(_cpp_valid_ucn): Update prototype.
(_cpp_destroy_iconv): New prototype.
* doc/cpp.texi: Document character set handling.
* doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
* doc/extend.texi: Delete entire section on multiline strings.
Rewrite section on __FUNCTION__ etc now that these are
variables in C.
* cppucnid.tab, cppucnid.pl: New files.
* cppucnid.h: New generated file.
* cppcharset.c: Include cppucnid.h. Lots of commentary added.
(iconv_open, iconv, iconv_close): Provide dummy definitions
if !HAVE_ICONV.
(SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
_cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
emit_numeric_escape, convert_hex, convert_oct, convert_escape,
cpp_interpret_string, narrow_str_to_charconst,
wide_str_to_charconst): New.
(ucn_valid_in_identifier): Use a binary search through the
ucnranges table defined in cppucnid.h, not a long chain of if
statements.
(_cpp_valid_ucn): Add a limit pointer. Downgrade "universal
character names are only valid in C++ and C99" to a warning.
Issue the "meaning of \[uU] is different in traditional C"
warning here. Take care not to let iconv see an invalid UCS
value if we get a malformed UCN. Issue an error if we don't
have iconv.
(cpp_interpret_charconst): Moved here from cpplex.c. Use
cpp_interpret_string to do the heavy lifting.
* cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
narrow_charset, wide_charset fields of options structure.
(cpp_destroy): Call _cpp_destroy_iconv.
* cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
(maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
(cpp_interpret_charconst): Moved to cppcharset.c.
* cpplib.c (dequote_string): Delete.
(interpret_string_notranslate): New.
(do_line, do_linemarker): Use interpret_string_notranslate.
* Makefile.in (cppcharset.o): Depend on cppucnid.h.
* c-common.c (fname_string, combine_strings): Delete.
* c-common.h (fname_string, combine_strings): Delete prototypes.
* c-lex.c (ignore_escape_flag): Delete.
(cb_ident): Use cpp_interpret_string, not lex_string.
(get_nonpadding_token): New function.
(c_lex): Handle Objective-C @-prefixed identifiers and strings here.
Adjust calls to lex_string. Don't write *value twice.
(lex_string): Now handles string constant concatenation.
Most of the work handed off to cpp_interpret_string.
Call fix_string_type here.
* c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
FUNC_NAME, throughout.
(OBJC_STRING): New token type.
(primary:STRING): No need to call fix_string_type here.
(primary:objc_string): Make that OBJC_STRING.
(objc_string nonterminal): Delete.
(yylexname): Delete code to handle fake string constants.
(yylexstring): Delete entirely.
(_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING. No need
to handle CPP_ATSIGN.
* c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
* c-opts.c (missing_arg, c_common_handle_option): Handle
OPT_fexec_charset_ and OPT_fwide_exec_charset_.
(c_common_init): Set cpp_opts->bytes_big_endian, not
cpp_opts->EBCDIC. Call cpp_init_iconv.
(print_help): Document -fexec-charset= and -fexec-wide-charset=.
(TARGET_EBCDIC): Delete default definition.
* objc/objc-act.c (build_objc_string_object): No need to
handle string constant concatenation.
cp:
* parser.c (cp_lexer_read_token): No need to handle string
constant concatenation.
testsuite:
* gcc.c-torture/execute/wchar_t-1.x: New file; XFAIL wchar_t-1.c
everywhere.
* gcc.dg/concat.c: Concatenation of string constants with
__FUNCTION__ / __PRETTY_FUNCTION__ is now a hard error.
* gcc.dg/wtr-strcat-1.c: Loosen dg-warning regexp.
* gcc.dg/cpp/escape-2.c: Use wide character constants where
necessary to avoid multi-character character constant warning.
* gcc.dg/cpp/escape.c: Likewise.
* gcc.dg/cpp/ucs.c: Likewise.
Remove backslashes from dg-bogus comments, as they confuse Tcl.
Fix a typo.
libstdc++-v3:
* testsuite/22_locale/collate/compare/wchar_t/2.cc
* testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
* testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
* testsuite/22_locale/collate/hash/wchar_t/2.cc
* testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
* testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
* testsuite/22_locale/collate/transform/wchar_t/2.cc
* testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
* testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
XFAIL on all targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68952 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* doc/invoke.texi: Likewise.
* doc/tm.texi: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68951 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* install.texi: Even the g77 manpage is derived from
the full g77 manual.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68929 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
dllimport attribute if function is defined at declaration, but
report error instead. Likewise for dllimport'd variable
definitions. Set implicit TREE_PUBLIC for dllimport'd variables
declared within functions, Report error if dllimport or dllexport
symbol is not global.
(i386_pe_dllimport_p): Ignore dllimport attribute of functions
if defined after declaration or if inlined. Don't allow definition
of static data members of C++ classes. Don't dllimport virtual
methods.
(i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
(i386_pe_mark_dllimport): Remove unnecessary checks.
(i386_pe_encode_section_info): Warn if the dllimport attribute
and symbol prefix have been instantiated and then overridden.
* doc/extend.texi: Document dllimport and dllexport attributes.
* config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68916 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
(DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
define based on HAVE_DOS_BASED_FILE_SYSTEM.
* config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
* config/i386/xm-mingw32.h: Don't define
HAVE_DOS_BASED_FILE_SYSTEM,
DIR_SEPARATOR, or DIR_SEPARATOR_2.
* doc/hostconfig.texi: Update to match.
* cppfiles.c, gcc.c, gensupport.c, protoize.c,
config/i386/cygwin.h:
Use IS_ABSOLUTE_PATH throughout.
* gcc.c (DIR_UP): Delete, unused.
* protoize.c (IS_SAME_PATH): Define in terms of
FILENAME_CMP.
(is_abspath): Delete.
java:
* jcf-path.c: Don't default-define PATH_SEPARATOR nor
DIR_SEPARATOR.
Use FILENAME_CMP.
* jcf-write.c: Don't default-define DIR_SEPARATOR.
* jcf.h: Delete COMPARE_FILENAMES definition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68863 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
* doc/invoke.texi: Likewise.
* doc/passes.texi: Likewise.
* doc/sourcebuild.texi: Likewise.
* doc/tm.texi: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68772 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* cse.c (cse_insn): Likewise.
* final.c (final_scan_insn): Likewise.
* jump.c (duplicate_loop_exit_test): Likewise.
* rtl.c (reg_note_name): Remove REG_WAS_0.
* rtl.h (REG_WAS_0): Remove.
* unroll.c (final_reg_note_copy): Don't bother REG_WAS_0.
* config/avr/avr.c (output_movqi): Don't use reg_was_0.
(output_movhi): Likewise.
(output_movsisf): Likewise.
(reg_was_0): Remove.
* config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Don't use
REG_WAS_0.
(m68hc11_gen_movqi): Likewise.
* config/vax/vax-protos.h: Remove the prototype for
reg_was_0_p.
* config/vax/vax.c (follows_p): Remove.
(reg_was_0_p): Likewise.
* config/vax/vax.md (movsi): Don't use reg_was_0_p.
(movhi): Likewise.
(movqi): Likewise.
* doc/rtl.texi (REG_WAS_0): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68753 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* xtensa-config.h: New file imported from binutils.
gcc/ChangeLog:
* config/xtensa/lib1funcs.asm: Use "xtensa-config.h" from
top-level include directory.
* config/xtensa/lib2funcs.S: Likewise.
* config/xtensa/xtensa.h: Likewise.
* config/xtensa/xtensa-config.h: Remove.
* doc/install.texi: Update location of "xtensa-config.h" header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68747 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
--with-mode configure options.
* config/s390/s390.h (OPTION_DEFAULT_SPECS): Define.
(DRIVER_SELF_SPECS): Define.
* config/s390/linux.h (ASM_SPEC): Pass architecture mode and cpu
architecture to assembler.
(LINK_SPEC): Merge 31-bit and 64-bit variants.
(LINK_ARCH31_SPEC, LINK_ARCH64_SPEC, EXTRA_SPECS): Remove.
* config/s390/s390.c (override_options): New default rules for
architecture mode and cpu architecture selection.
* doc/invoke.texi (-mesa, -mzarch, -march, -mtune): Document
new default rules.
* config/s390/s390.h (enum processor_type): Add PROCESSOR_2084_Z990.
* config/s390/s390.md (attr "cpu"): Add "z990" processor type.
* config/s390/s390.c (override_options): Add "z990" to
processor_alias_table.
* doc/invoke.texi (-march): Document "z990" processor type.
* config/s390/s390.c (s390_tune_flags, s390_arch_flags): New variables.
* config/s390/s390.h (s390_tune_flags, s390_arch_flags): Declare.
(enum processor_flags, TARGET_CPU_IEEE_FLOAT, TARGET_CPU_ZARCH,
TARGET_CPU_LONG_DISPLACEMENT, TARGET_LONG_DISPLACEMENT): New.
* config/s390/s390.c (override_options): Replace enum pta_flags by
enum processor_flags. Fill in s390_tune_flags and s390_arch_flags.
* config/s390/s390.c (s390_cpu): Rename to ...
(s390_tune): ... this.
* config/s390/s390.h (s390_cpu, s390_tune): Likewise.
* config/s390/s390.c (s390_issue_rate, override_options): Likewise.
* config/s390/s390.md (attr "cpu"): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68736 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* doc/sourcebuild.texi: Don't reference gnats.html any more.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68710 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* calls.c: Not here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68701 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/install.texi: Remove install documentation for obsoleted targets
i?86-*-sco, i?86-*-sco3.2v4, powerpcle-*-pe, powerpcle-*-winnt,
arm-*-aof.
Update information about IA64 toolchain, AIX make requirements,
and binutils for m68k-*-hpux and *-*-linuxaout targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68683 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* system.h: Poison OBJ_FORMAT_ROSE.
* doc/tm.texi (Macros for Initialization): Remove documentatin of
OBJECT_FORMAT_ROSE.
* config/rs6000/lynx.h: Remove undef of OBJECT_FORMAT_ROSE.
* collect2.c: Remove usage of OBJECT_FORMAT_ROSE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68678 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(debug_queue_symbol): New function.
(debug_free_queue): New function.
(debug_nesting): New variable.
(symbol_queue): New variable.
(symbol_queue_index): Same.
(symbol_queue_size): Same.
* debug.h (debug_flush_symbol_queue): New.
(debug_queue_symbol): New.
(debug_free_queue): New.
(debug_nesting): New.
(symbol_queue_index): New.
* dbxout.c (DBXOUT_DECR_NESTING): New macro.
(DBXOUT_DECR_NESTING_AND_RETURN): New macro.
(dbxout_init): Delay symbol output.
(dbxout_global_decl): Save, set and reset TREE_USED bit around dbxout_symbol()
call.
(dbxout_begin_function): Same.
(dbxout_finish): Free symbol queue.
(dbxout_type): Put appropriate symbols in queue.
(dbxout_symbol): Put info for symbol's type in queue. Decrement/Increment
nesting counts flush symbol queue appropriately.
(dbxout_parms): Increment dbxout nesting.
(dbxout_reg_parms): Same.
* flags.h (flag_debug_only_used_symbols): New.
* toplev.c (flag_debug_only_used_symbols): New variable.
(lang_independent_options): Add entries for new option -feliminate-unused-debug-symbols.
* common.opt: Add entry for -feliminate-unused-debug-symbols.
* opts.c (common_handle_options): Same.
* config/rs6000/darwin.h (CC1_SPEC): Interpret -gused as -feliminate-unused-debug-symbols.
* doc/invoke.texi (Debugging Options): Document -feliminate-unused-debug-symbols.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68556 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68523 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/extend.texi: Document new builtin functions for Intel
Prescott New Intrunctions.
* doc/invoke.texi: Document new command-line options, -mpni and
-mno-pni, for Intel Prescott New Intrunctions.
* config.gcc (extra_headers): Add pmmintrin.h for i[34567]86-*-*.
* config/i386/i386.c (override_options): Turn on MASK_SSE2
for -mpni. Turn on MASK_SSE for -msse2.
(bdesc_2arg): Add PNI builtins with 2 args.
(bdesc_1arg): Add PNI builtins with 1 arg.
(ix86_init_mmx_sse_builtins): Handle PNI builtins.
(ix86_expand_builtin): Likewise.
* config/i386/i386.h (MASK_3DNOW, MASK_3DNOW_A,
MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT,
MASK_TLS_DIRECT_SEG_REFS): Renumbered.
(TARGET_PNI): New.
(TARGET_SWITCHES): Don't enable MASK_SSE for -msse2 here. Add
-mpni and -mno-pni.
(TARGET_CPU_CPP_BUILTINS): Defined __PNI__ for PNI.
(ix86_builtins): Add PNI builtins.
(config/i386/i386.md): Add PNI patterns.
* config/i386/pmmintrin.h: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68502 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* gcc/doc/invoke.texi (Optimization Options): Remove -Os from
-freorder-functions description.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68470 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
calls for pow, powf, powl and their __builtin_ variants.
(expand_builtin_pow): If the second argument is a constant
integer and compiling with -ffast-math, use expand_powi to
generate RTL if powi_cost is less than POWI_MAX_MULTS.
(powi_cost): New function to return the number of multiplications
necessary to evaluate an Nth power, for integer constant N.
(expand_powi): New function to expand the RTL for evaluating
the Nth power of a floating point value, for integer constant N.
* doc/tm.texi (POWI_MAX_MULTS): Document new target macro.
* gcc.dg/builtins-24.c: New test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68401 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* doc/md.texi: Likewise.
* doc/tm.texi: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68371 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
remove duplicates from testers list.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68367 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68361 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68345 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68343 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68339 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68338 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68336 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68333 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
Update Andreas Jaeger's entry.
Merge the two entries of Kaveh Ghazi, David Edelsohn, and
Loren J. Rittle.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68293 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tree-inline.c (expand_call_inline): Do not warn about failing to
inline functions declared in system headers.
* doc/invoke.texi (-Winline): Expand on documentation.
PR c++/10888
* g++.dg/warn/Winline-3.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68281 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
hook_reg_class_void_no_regs; change return type.
* hooks.h: Update.
* target-def.h (TARGET_BRANCH_TARGET_REGISTER_CLASS): Update.
* target.h (branch_target_register_class): Change return type to int.
Add documentation.
* config/sh/sh.c (sh_target_reg_class): Change return type.
* doc/tm.texi (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68275 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
about parallel builds.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68257 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
support.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68252 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
SPARC64/Solaris as platforms where --with-gnu-as makes a difference.
(--with-as): Add @anchor.
(--with-gnu-ld): Fix typo.
(--with-ld): Add @uref to --with-as.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68249 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
@table items. Minor formatting and editorial corrections.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68248 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
file_start_file_directive): New hooks.
* target-def.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE,
TARGET_ASM_FILE_START_APP_OFF, TARGET_ASM_FILE_START):
New hook-definition macros.
* doc/tm.texi: Document new hooks; remove docs of ASM_FILE_START.
* varasm.c (default_file_start): New.
* output.h: Prototype it.
* toplev.c (init_asm_output): Use targetm.asm_out.file_start.
* system.h: Poison ASM_FILE_START.
* config/alpha/alpha.c (alpha_write_verstamp): Delete.
(alpha_file_start): New, define if !TARGET_ABI_UNICOSMK.
(unicosmk_asm_file_start): Rename unicosmk_file_start,
make static, take no arguments.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_END,
TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set as appropriate.
* config/alpha/unicosmk.h: Don't define ASM_FILE_START nor
TARGET_ASM_FILE_END. Remove reference to ASM_FILE_START in
comment.
* config/arc/arc.c (arc_asm_file_start): Rename
arc_file_start, take no arguments, make static.
(TARGET_ASM_FILE_START): Set it.
* config/arm/arm.c (aof_file_start): New static function.
(TARGET_ASM_FILE_START): Set it, when appropriate.
* config/arm/coff.h, config/arm/elf.h:
Set TARGET_ASM_FILE_START_APP_OFF to true.
* config/avr/avr.c (asm_file_start): Rename avr_file_start,
take no arguments, make static.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE):
Set them.
* config/c4x/c4x.c (c4x_file_start): New static function.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE):
Set them.
* config/cris/cris.c (cris_file_start): New static function.
(TARGET_ASM_FILE_START): Set it.
* config/dsp16xx/dsp16xx.c (coff_dsp16xx_file_start): Rename
dsp16xx_file_start, make static.
(luxworks_dsp16xx_file_start): Delete.
(TARGET_ASM_FILE_START): Set it.
* config/h8300/h8300.c (asm_file_start): Rename
h8300_file_start, make static, take no arguments.
(TARGET_ASM_FILE_START): Set it.
* config/i370/i370.c (i370_file_start): New static function.
(TARGET_ASM_FILE_START): Set it.
* config/i386/i386.c (x86_file_start): New static function.
(TARGET_ASM_FILE_START): Set it.
* config/i386/i386.h (X86_FILE_START_VERSION_DIRECTIVE,
X86_FILE_START_FLTUSED): New macros, default to false.
* config/i386/i386-interix.h: Override X86_FILE_START_FLTUSED to 1.
* config/i386/sysv4.h, config/i386/sco5.h: Override
X86_FILE_START_VERSION_DIRECTIVE to true.
* config/ia64/ia64.c (ia64_file_start): New static function.
(TARGET_ASM_FILE_START): Set it.
(emit_safe_across_calls): Take no arguments.
* config/ia64/ia64.md: Update to match.
* config/m32r/m32r.c (m32r_asm_file_start): Rename
m32r_file_start, make static, take no arguments.
(TARGET_ASM_FILE_START): Set it.
* config/m68hc11/m68hc11.c (m68hc11_asm_file_start): Rename
m68hc11_file_start, make static, take no arguments.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
(print_options): Delete.
* config/m68k/m68k.c (m68k_hp320_file_start): New static function.
(TARGET_ASM_FILE_START_APP_OFF): Set.
* config/m68k/hp320.h: Set TARGET_ASM_FILE_START to
m68k_hp320_file_start.
* config/mips/mips.c (iris6_asm_file_start, mips_asm_file_start):
Make static, take no arguments.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
* config/mmix/mmix.c (mmix_asm_file_start): Rename
mmix_file_start, make static, take no arguments.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
* config/mn10300/mn10300.c (asm_file_start): Rename
mn10300_file_start, make static, take no arguments.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
* config/ns32k/ns32k.c (TARGET_ASM_FILE_START_APP_OFF): Set.
* config/pa/pa.c (pa_file_start_level, pa_file_start_space,
pa_file_start_file, pa_file_start_mcount, pa_elf_file_start,
pa_som_file_start, pa_linux_file_start, pa_hpux64_gas_file_start,
pa_hpux64_hpas_file_start): New static functions.
* config/pa/elf.h: Set TARGET_ASM_FILE_START to pa_elf_file_start.
* config/pa/pa-linux.h: Set TARGET_ASM_FILE_START to
pa_linux_file_start.
* config/pa/pa64-hpux.h: Set TARGET_ASM_FILE_START to
pa_hpux64_gas_file_start or pa_hpux64_hpas_file_start, as
appropriate.
* config/pa/som.h: Set TARGET_ASM_FILE_START to pa_som_file_start.
* config/rs6000/rs6000.c: Include xcoffout.h when TARGET_XCOFF.
(rs6000_file_start): Make static, take no arguments. Reset
default_cpu under certain conditions.
(rs6000_xcoff_file_start): New function.
* config/rs6000/rs6000.h (TARGET_ASM_FILE_START): Set.
* config/rs6000/xcoff.h (TARGET_ASM_FILE_START,
TARGET_ASM_FILE_START_FILE_DIRECTIVE): Override.
* config/sh/sh.c (output_file_start): Rename
sh_file_start, make static, take no arguments. Merge in old
code from sh/elf.h's ASM_FILE_START, conditioned on TARGET_ELF.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
* config/sh/sh.c (TARGET_ELF): Define to 0.
* config/sh/elf.h (TARGET_ELF): Redefine to 1.
* config/v850/v850.c (asm_file_start): Delete.
(TARGET_ASM_FILE_START_FILE_DIRECTIVE): Set.
* config/vax/vax.c (vax_file_start): New static function.
(TARGET_ASM_FILE_START, TARGET_ASM_FILE_START_APP_OFF): Set.
* config/darwin.h: Override ASM_FILE_START_FILE_DIRECTIVE to false.
* config/elfos.h, config/svr3.h, config/arm/elf.h, config/arm/pe.h
* config/i386/att.h, config/i386/gas.h, config/i386/linux.h
* config/i386/sysv4.h, config/i386/sco5.h, config/i960/i960-coff.h
* config/m68k/coff.h, config/m68k/hp320.h, config/mcore/mcore-pe.h
* config/vax/vaxv.h: Set ASM_FILE_START_FILE_DIRECTIVE to true.
* config/darwin.h, config/elfos.h, config/alpha/elf.h
* config/alpha/openbsd.h, config/alpha/osf.h, config/alpha/vms.h
* config/arc/arc.h, config/arm/aof.h, config/arm/aout.h
* config/arm/coff.h, config/arm/elf.h, config/arm/pe.h
* config/avr/avr.h, config/c4x/c4x.h, config/cris/cris.h
* config/dsp16xx/dsp16xx.h, config/h8300/elf.h, config/h8300/h8300.h
* config/i370/i370.h, config/i386/att.h, config/i386/gas.h
* config/i386/i386-interix.h, config/i386/linux.h, config/i386/sysv4.h
* config/i386/sco5.h, config/i960/i960-coff.h, config/i960/i960.h
* config/ia64/ia64.h, config/ia64/sysv4.h, config/m32r/m32r.h
* config/m68hc11/m68hc11.h, config/m68k/coff.h, config/m68k/m68k.h
* config/mcore/mcore-pe.h, config/mips/iris6.h, config/mips/mips.h
* config/mmix/mmix.h, config/mn10300/mn10300.h, config/ns32k/ns32k.h
* config/pa/elf.h, config/pa/pa-linux.h, config/pa/pa64-hpux.h
* config/pa/som.h, config/pdp11/pdp11.h, config/rs6000/linux64.h
* config/rs6000/lynx.h, config/rs6000/xcoff.h, config/sh/elf.h
* config/sh/sh.h, config/sparc/sparc.h, config/v850/v850.h
* config/vax/vax.h, config/vax/vaxv.h: Don't (re)define ASM_FILE_START.
* config/alpha/alpha-protos.h, config/arc/arc-protos.h
* config/avr/avr-protos.h, config/dsp16xx/dsp16xx-protos.h
* config/h8300/h8300-protos.h, config/ia64/ia64-protos.h
* config/m32r/m32r-protos.h, config/m68hc11/m68hc11-protos.h
* config/mips/mips-protos.h, config/mmix/mmix-protos.h
* config/mn10300/mn10300-protos.h, config/rs6000/rs6000-protos.h
* config/sh/sh-protos.h, config/v850/v850-protos.h: Update.
* xcoffout.h, config/rs6000/aix.h, config/rs6000/xcoff.h:
Remove reference to ASM_FILE_START in comment.
* config/arm/aof.h, config/arm/aout.h, config/arm/freebsd.h
* config/arm/linux-gas.h, config/arm/netbsd-elf.h
* config/arm/netbsd.h: Delete definition of ARM_OS_NAME.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68229 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
SYSROOT_SUFFIX_SPEC, SYSROOT_HEADERS_SUFFIX_SPEC, sysroot_suffix_spec,
sysroot_hdrs_suffix_spec): New.
(static_specs): Initialize new variables.
(add_sysroot_suffix_prefix, do_spec_1, main): Use new variables.
* doc/tm.texi (SYSROOT_SUFFIX_SPEC, SYSROOT_HEADERS_SUFFIX_SPEC):
New macros.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68223 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
J"orn Rennecke <joern.rennecke@superh.com>
* bt-load.c: New file.
* Makefile.in (OBJS): Include bt-load.o
(bt-load.o): Add dependencies.
* flags.h (flag_branch_target_load_optimize): Declare.
(flag_branch_target_load_optimize2): Likewise.
* hooks.c (hook_reg_class_void_no_regs): New function.
(hook_bool_bool_false): Likewise.
* hooks.h (hook_reg_class_void_no_regs, hook_bool_bool_false): Declare.
* rtl.h (branch_target_load_optimize): Declare.
* target-def.h (TARGET_BRANCH_TARGET_REGISTER_CLASS): Define.
(TARGET_BRANCH_TARGET_REGISTER_CALLEE_SAVED): Likewise.
(TARGET_INITIALIZER): Include these.
* target.h (struct gcc_target): Add branch_target_register_class
and branch_target_register_callee_saved members.
* toplev.c (enum dump_file_index): Add DFI_branch_target_load
(dump_file) Add "tars" entry.
(flag_branch_target_load_optimize): New variable.
(flag_branch_target_load_optimize2): Likewise.
(lang_independent_options): Add entries for new options.
(rest_of_compilation): Call branch_target_load_optimize.
* doc/tm.texi (TARGET_BRANCH_TARGET_REGISTER_CLASS): Document.
(TARGET_BRANCH_TARGET_REGISTER_CALLEE_SAVED): Likewise.
* doc/invoke.texi: Document -fbranch-target-load-optimize and
-fbranch-target-load-optimize2.
* rtl.h (epilogue_completed): Declare.
* recog.c (epilogue_completed): New variable.
* toplev.c (rest_of_compilation): Set it.
* flow.c (mark_regs_live_at_end): Use it.
* config/ia64/ia64.c (ia64_output_mi_thunk): Set it.
* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Likewise.
* config/sh/sh.c (sh_output_mi_thunk): Likewise.
* config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
* sh.c (shmedia_space_reserved_for_target_registers): New variable.
(sh_target_reg_class): New function.
(sh_optimize_target_register_callee_saved): Likwise.
(shmedia_target_regs_stack_space): Likewise.
(shmedia_reserve_space_for_target_registers_p): Likewise.
(shmedia_target_regs_stack_adjust): Likewise.
(TARGET_BRANCH_TARGET_REGISTER_CLASS): Override.
(TARGET_BRANCH_TARGET_REGISTER_CALLEE_SAVED): Likewise.
(calc_live_regs): If flag_branch_target_load_optimize2 and
TARGET_SAVE_ALL_TARGET_REGS is enabled, and we have space reserved
for target registers, make sure that we save all target registers.
(sh_expand_prologue, sh_expand_epilogue): Take target register
optimizations into account. Collapse stack adjustments if that
is beneficial.
(initial_elimination_offset): Reserve space for target registers
if necessary.
* sh.h (SAVE_ALL_TR_BIT, TARGET_SAVE_ALL_TARGET_REGS): Define.
(OPTIMIZATION_OPTIONS): Enable flag_branch_target_load_optimize.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68165 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support configuring with --with-cpu=iwmmxt.
* doc/invoke.texi: Document new value for -mcpu= ARM switch.
* config/arm/aof.h (REGISTER_NAMES): Add iwmmxt register
names. Fix formatting.
* config/arm/aout.h (REGISTER_NAMES): Add iwmmxt register
names.
* config/arm/arm-protos.h (arm_emit_vector_const): New
prototype.
(arm_output_load_gr): New prototype.
* config/arm/arm.c (extra_reg_names1): Delete.
(TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN, FL_IWMMXT,
* arch_is_iwmmxt): Define.
(all_cores, all_architecture): Add entry for iwmmxt.
(arm_override_options): Add support for iwmmxt.
(use_return_insn, arm_function_arg, arm_legitimate_index_p,
arm_print_value, arm_rtx_costs_1, output_move_double,
arm_compute_save_reg_mask, arm_output_epilogue,
arm_get_frame_size, arm_expand_prologue, arm_print_operand,
arm_assemble_integer, arm_hard_regno_ok, arm_regno_class):
Likewise.
(arm_init_cumulative_args): Count iwmmxt registers.
(arm_function_ok_for_sibcall): Return false of sibcall_blocked
has been set.
(struct minipool_node): Add fix_size field.
(add_minipool_forward_ref): Add support for 8-byte aligning of
the pool.
(add_minipool_backward_ref, add_minipool_offsets,
dump_minipool, push_minipool_fix): Likewise.
(struct builtin_description): New struct.
(builtin_description): New array of iwmmxt builtin functions.
(arm_init_iwmmxt_builtins): New function.
(arm_init_builtins): New function.
(safe_vector_operand): New function.
(arm_expand_binop_builtin): New function.
(arm_expand_unop_builtin): New function.
(arm_expand_builtin): New function.
(arm_emit_vector_const): New function.
(arm_output_load_gr): New function.
* config/arm/arm.h (TARGET_CPU_iwmmxt, TARGET_IWMMXT,
TARGET_REALLY_IWMMXT, arm_arch_iwmmxt, IWMMXT_ALIGNMENT,
TYPE_NEEDS_IWMMXT_ALIGNMENT, ADJUST_FIELD_ALIGN,
DATA_ALIGNMENT, LOCAL_ALIGNMENT, VECTOR_MODE_SUPPORTED_P): Define.
(BIGGEST_ALIGNMENT): Set to 64 if ATPCS support is enabled.
(CPP_CPU_ARCH_SPEC): Add entries for iwmmxt.
(FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER,
reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS,
REG_CLASS_FOR_LETTER): Add iwmmxt registers.
(SUBTARGET_CONDITIONAL_REGISTER_USAGE): Disable iwmmxt
registers unless the iwmmxt target is selected.
(FIRST_IWMMXT_GR_REGNUM, LAST_IWMMXT_GR_REGNUM,
FIRST_IWMMXT_REGNUM, LAST_IWMMXT_REGNUM, IS_IWMMXT_REGNUM,
IS_IWMMXT_GR_REGNUM): Define.
(FIRST_PSEUDO_REGISTER): Bump to 63.
(struct machine_function): Add sibcall_blocked field.
(Struct CUMULATIVE_ARGS): Add iwmmxt_nregs, named_count and
nargs fields.
(enum arm_builtins): New enum list.
* config/arm/arm.md (UNSPEC_WSHUFH, UNSPEC_WACC,
UNSPEC_TMOVMSK, UNSPEC_WSAD, UNSPEC_WSADZ, UNSPEC_WMACS,
UNSPEC_WMACU, UNSPEC_WMACSZ, UNSPEC_WMACUZ, UNSPEC_CLRDI,
UNSPEC_WMADDS, UNSPEC_WMADDU): New unspecs.
(VUNSPEC_TMRC, VUNSPEC_TMCR, VUNSPEC_ALIGN8, VUNSPEC_WCMP_EQ,
VUNSPEC_WCMP_GTU, VUNSPEC_WCMP_GT): New vunspecs.
(movv2si, movv4hi, movv8qi): New expands for vector moves.
Include iwmmxt.md.
* config/arm/t-xscale-elf (MULTILIB_OPITONS): Add iwmmxt
multilib.
(MULTILIB_DIRNAMES, MULTILIB_REDUNDANT_DIRS): Likewise.
* config/arm/mmintrin.h: New ARM specific header file.
* config/arm/iwmmx.md: New iWMMXt specific machine patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68157 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
runtime tests separately.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68114 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
to run Java runtime tests separately.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68103 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
* doc/install.texi: Likewise.
* doc/invoke.texi: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68096 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* doc/tm.texi (MD_FALLBACK_FRAME_STATE_FOR): Mention MAKE_THROW_FRAME.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68094 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mark it with GTY(()).
(dbxout_source_line): Increment dbxout_source_line_counter
and pass it to ASM_OUTPUT_SOURCE_LINE.
* sdbout.c (sdbout_source_line_counter): New global variable.
Mark it with GTY(()).
(unnamed_struct_number): Mark it with GTY(()).
(sdbout_source_line): Increment sdbout_source_line_counter
and pass it to ASM_OUTPUT_SOURCE_LINE.
* xcoffout.c (ASM_OUTPUT_SOURCE_LINE): Add third parameter
(xcoffout_source_line): Pass 0 as third argument to
ASM_OUTPUT_SOURCE_LINE.
(xcoffout_begin_prologue): Likewise.
* config/dbxout.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
Use it instead of 'sym_lineno' but without incrementing it.
* config/dbxelf.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/lynx.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/ptx4.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/alpha/alpha.c (alpha_start_function): Pass 0 as third
argument to ASM_OUTPUT_SOURCE_LINE.
* config/alpha/alpha.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
* config/arm/aout.h: Remove useless comment.
* config/avr/avr.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
* config/i960/i960.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/m32r/m32r.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
Use it instead of 'sym_lineno' but without incrementing it.
* config/m68k/hp320.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
* config/mcore/mcore-pe.h (ASM_OUTPUT_SOURCE_LINE): Add third
parameter. Use it instead of 'sym_lineno' but without incrementing it.
* config/mips/mips.c (mips_output_function_prologue): Pass 0 as third
argument to ASM_OUTPUT_SOURCE_LINE.
* config/mips/mips.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
* config/mmix/mmix.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/pa/som.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
Use it instead of 'sym_lineno' but without incrementing it.
* config/rs6000/linux64.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/sh/elf.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/sparc/aout.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* config/sparc/pbd.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
* doc/tm.texi (ASM_OUTPUT_SOURCE_LINE): Document third parameter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68072 138bc75d-0d04-0410-961f-82ee72b054a4
|