platform/upstream/linaro-gcc.git
11 years ago * cfg.c (dump_bb_info): Print a newline if there were no edges to dump.
steven [Wed, 29 Aug 2012 20:40:53 +0000 (20:40 +0000)]
* cfg.c (dump_bb_info): Print a newline if there were no edges to dump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190786 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 19:12:12 +0000 (19:12 +0000)]
2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

Revert:
* config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use
mapping style, add ../lib/mips16.
(MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16.
(MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190785 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Wed, 29 Aug 2012 18:57:49 +0000 (18:57 +0000)]
gcc/
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci
if TARGET_SYNCI.

gcc/testsuite/
* gcc.target/mips/mips.exp: Work out default -msynci setting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190784 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago Add simd_fast_mersenne_twister_engine class.
drepper [Wed, 29 Aug 2012 18:43:08 +0000 (18:43 +0000)]
Add simd_fast_mersenne_twister_engine class.
* include/ext/random: New file.
* include/ext/random.tcc: New file.
* include/Makefile.am (ext_headers): Add random and random.tcc.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/inequal.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/equal.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/serialize.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed2.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/default.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed_seq.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/copy.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed1.cc: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190783 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/sh/sh.opt (menable-tas): Rename to mtas.
olegendo [Wed, 29 Aug 2012 18:41:52 +0000 (18:41 +0000)]
* config/sh/sh.opt (menable-tas): Rename to mtas.
* doc/invoke.texi (SH options): Likewise.
* config/sh/sync.md: Update comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190782 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/sh/iterators.md: New file.
olegendo [Wed, 29 Aug 2012 18:40:09 +0000 (18:40 +0000)]
* config/sh/iterators.md: New file.
* config/sh/sync.md (I124, I12, i124suffix): Delete.  Replace usage with
new iterators QIHISI, QIHI, bw, bwl respectively throughout the file.
* config/sh/sh.md: Include new file iterators.md.
(zero_extendhisi2, zero_extendqisi2): Fold into zero_extend<mode>si2.
(*zero_extendhisi2_compact, *zero_extendqisi2_compact): Fold into
*zero_extend<mode>si2_compact.
(*zero_extendqisi2_disp_mem, zero_extendhisi2_disp_mem): Fold into
*zero_extend<mode>si2_disp_mem.
(extendhisi2, extendqisi2): Fold into extend<mode>si2.
(*extendqisi2_compact_reg, *extendhisi2_compact_reg): Fold into
*extend<mode>si2_compact_reg.
(*extendqisi2_compact_mem_disp, *extendhisi2_compact_mem_disp): Fold
into *extend<mode>si2_compact_mem_disp.
(*extendqisi2_compact_snd, *extendhisi2_compact_snd): Fold into
*extend<mode>si2_compact_snd.
(*movsi_index_disp, *movhi_index_disp): Fold with iterators and rename
to *movsi_index_disp_load, *movhi_index_disp_load,
*mov<mode>_index_disp_store.
(*movqi_reg_reg, *movhi_reg_reg): Fold into *mov<mode>_reg_reg.
(*movqi_store_mem_disp04, *movhi_store_mem_disp05): Fold into
*mov<mode>_store_mem_disp04.
(*movqi_store_mem_disp12, *movhi_store_mem_disp13): Fold into
*mov<mode>_store_mem_disp12.
(*movqi_load_mem_disp, *movhi_load_mem_disp): Fold into
*mov<mode>_load_mem_disp04 and *mov<mode>_load_mem_disp12.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190781 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-29 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 29 Aug 2012 12:16:11 +0000 (12:16 +0000)]
2012-08-29  Martin Jambor  <mjambor@suse.cz>

* ipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not
do_estimate_edge_time.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190777 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 09:33:49 +0000 (09:33 +0000)]
2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm
directives, remove #ifndef __mips16 guards.
* config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use
mapping style, add ../lib/mips16.
(MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16.
(MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190774 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 09:31:52 +0000 (09:31 +0000)]
2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

libgcc/
* config/mips/crtfastmath.c (set_fast_math): Add 'nomips16'
attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190773 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 09:29:55 +0000 (09:29 +0000)]
2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

libgomp/
* config/linux/mips/futex.h (sys_futex0): Change to static
function with noinline, nomips16 attributes under MIPS16. Adjust
asm statement to place 'li v0,SYS_futex' immediately before
syscall insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190772 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 29 Aug 2012 04:44:10 +0000 (04:44 +0000)]
2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54102, part 2
* doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
* doc/Makefile.in: Regenerate.
* doc/html/*: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190771 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 29 Aug 2012 02:09:55 +0000 (02:09 +0000)]
2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190770 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 29 Aug 2012 01:37:16 +0000 (01:37 +0000)]
2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54102
* doc/xsl/customization.xsl.in: New.
* configure.ac: Output local copy of customization xsl.
* doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
(stamp-html-docbook): Set stringparam to UTF-8.
* Makefile.in: Regenerated.
* configure: Same.
* doc/Makefile.in: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190768 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoReplace malloc with xmalloc
hjl [Wed, 29 Aug 2012 01:03:21 +0000 (01:03 +0000)]
Replace malloc with xmalloc

* argv.c (dupargv): Replace malloc with xmalloc.  Don't check
xmalloc return.
(buildargv): Likewise.  Also replace strdup with xstrdup.
(expandargv): Don't check dupargv return.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190767 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoReplace alloca with xmalloc/free
hjl [Wed, 29 Aug 2012 00:46:36 +0000 (00:46 +0000)]
Replace alloca with xmalloc/free

PR binutils/14526
* argv.c (buildargv): Replace alloca with xmalloc/free.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190766 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Wed, 29 Aug 2012 00:18:57 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190765 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 18:18:11 +0000 (18:18 +0000)]
2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54389
        * trans-decl.c (gfc_get_extern_function_decl,
        build_function_decl): Don't mark impure elemental
        functions as DECL_PURE_P and honour implicit_pure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190757 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 14:49:55 +0000 (14:49 +0000)]
2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54382
        * error.c (show_locus): Avoid out of bound access.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190752 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 14:49:15 +0000 (14:49 +0000)]
2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * decl.c (match_data_constant): Add missing gfc_free_expr.
        (top_val_list): Remove always-true condition.
        * data.c (get_array_index, create_character_initializer):
        Free temporary expressions.
        (gfc_assign_data_value): Free expression when aborting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190751 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add -fno-short-enums.
jye2 [Tue, 28 Aug 2012 09:51:11 +0000 (09:51 +0000)]
* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add -fno-short-enums.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190745 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix ChangeLog formatting.
walt [Tue, 28 Aug 2012 07:00:10 +0000 (07:00 +0000)]
Fix ChangeLog formatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190741 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix some typos and coding style violations.
walt [Tue, 28 Aug 2012 06:09:45 +0000 (06:09 +0000)]
Fix some typos and coding style violations.
* confg/tilegx/tilegx.md: Fix code style.
(*zero_extendsidi_truncdisi): Fix typo.
* config/tilegx/tilegx.c: Fix code style.
(tilegx_function_profiler): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190739 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 05:35:15 +0000 (05:35 +0000)]
2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * symbol.c (gfc_copy_formal_args): Set also sym->formal_ns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190738 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAdd support for the -mcmodel=MODEL flag on TILE-Gx. The models
walt [Tue, 28 Aug 2012 05:25:35 +0000 (05:25 +0000)]
Add support for the -mcmodel=MODEL flag on TILE-Gx.  The models
supported are small and large.  In the small model (default), distance
for direct calls is limited to 500M in either direction.  PC-relative
addresses are 32 bits.  Absolute addresses support the full address
range.  In the large model, there is no limiation on call distance,
pc-relative addresses, or absolute addresses.
* doc/invoke.texi: Document -mcmodel=small, -mcmodel=large.
* config/tilegx/tilegx.h: Include config/tilegx/tilegx-opts.h.
(CRT_CALL_STATIC_FUNCTION): Define.
* config/tilegx/predicates.md (const_last_symbolic_operand):
Handle UNSPEC_HW2_LAST_PCREL, UNSPEC_HW1_LAST_PLT_PCREL, and
UNSPEC_HW2_LAST_PLT_PCREL.
(const_symbolic_operand): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW0_PLT_PCREL, and UNSPEC_HW1_PLT_PCREL.
* config/tilegx/tilegx.md (UNSPEC_MOV_LARGE_PCREL_STEP4): Define,
and renumber the constants that follow.
(UNSPEC_HW1_PCREL): Define, and renumber the constants that
follow.
(UNSPEC_HW0_PLT_PCREL): Define.
(UNSPEC_HW1_PLT_PCREL): Define.
(UNSPEC_HW1_LAST_PLT_PCREL): Define.
(UNSPEC_HW2_LAST_PLT_PCREL): Define.
(mov_large_pcrel_step1): Define.
(mov_large_pcrel_step2): Define.
(mov_large_pcrel_step3): Define.
(mov_large_pcrel_step4): Define.
(mov_plt_pcrel_step1): Define.
(mov_plt_pcrel_step2): Define.
(mov_plt_pcrel_step3): Define.
(mov_plt_pcrel_step1_32bit): Define.
(mov_plt_pcrel_step2_32bit): Define.
(call): Handle tilegx_cmodel == CM_LARGE, CM_LARGE_PIC.
(call_value): Ditto.
* config/tilegx/tilegx.opt: Include config/tilegx/tilegx-opts.h.
(mcmodel): New option.
(enum cmodel): Define.
(CM_SMALL): Define.
(CM_LARGE): Define.
* config/tilegx/tilegx-protos.h (tilegx_compute_pcrel_address):
Declare.
(tilegx_compute_pcrel_plt_address): Declare.
* config/tilegx/tilegx.c (tilegx_option_override): Handle
tilegx_cmodel.
(tilegx_function_ok_for_sibcall): Ditto.
(compute_pcrel_address): Rename to tilegx_compute_pcrel_address,
and don't declare static.  Handle tilegx_cmodel.
(tilegx_compute_pcrel_plt_address): Define.
(tilegx_legitimize_pic_address): Rename calls to
compute_pcrel_address.
(tilegx_delegitimize_address): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.
(load_pic_register): Rename call to compute_pcrel_address.
(tilegx_print_operand): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190737 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Tue, 28 Aug 2012 00:17:15 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190736 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * sched-deps.c (add_dependence_list_and_free): Simplify.
mkuvyrkov [Mon, 27 Aug 2012 22:11:48 +0000 (22:11 +0000)]
* sched-deps.c (add_dependence_list_and_free): Simplify.
(flush_pending_list_and_free): Fix a hack that was fixing a hack.  Free
lists when add_dependence_list_and_free doesn't free them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190733 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR target/46254
uros [Mon, 27 Aug 2012 21:13:07 +0000 (21:13 +0000)]
PR target/46254
* config/i386/predicates.md (cmpxchg8b_pic_memory_operand): Return
true for TARGET_64BIT or !flag_pic.
* config/i386/sync.md (*atomic_compare_and_swap_doubledi_pic): Remove.
(atomic_compare_and_swap_double<mode>): Change operand 2 predicate
to cmpxchg8b_pic_memory_operand.  Use DWIH mode iterator.
Add insn constraint.  Conditionally emit xchg asm insns.
(atomic_compare_and_swap<mode>): Update calls.  Check only
cmpxchg8b_pic_memory_operand in memory address fixup.
(DCASMODE): Remove.
(CASHMODE): Rename from DCASHMODE.
(doublemodesuffix): Update modes.
(regprefix): New mode attribute.

(unspecv) <UNSPECV_CMPXCHG_{1,2,3,4}>: Remove.
<UNSPECV_CMPXCHG>: New constant.
(atomic_compare_and_swap<mode>_1): Rename from
atomic_compare_and_swap_single<mode>.  Update calls and
unspec_volatile constants.
(atomic_compare_and_swap<mode>_doubleword): Rename from
atomic_compare_and_swap_double<mode>.  Update calls and
unspec_volatile constants.

testsuite/ChangeLog:

PR target/46254
* gcc.target/i386/pr46254.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190732 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 20:51:52 +0000 (20:51 +0000)]
2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * resolve.c (gfc_resolve_character_operator): Free temporary
        variables.
        * trans-expr.c (gfc_conv_statement_function): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190731 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix doc typo.
walt [Mon, 27 Aug 2012 18:51:07 +0000 (18:51 +0000)]
Fix doc typo.
* doc/md.texi (TILE-Gx): Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190729 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 18:47:57 +0000 (18:47 +0000)]
2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * dependency.c (check_section_vs_section): Use gfc_free_expr
        instead of free.
        * trans-intrinsic.c (conv_generic_with_optional_char_arg): Use
        gfc_free_symbol instead of free.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190728 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix a typo in the mcount function_profiler.
walt [Mon, 27 Aug 2012 18:35:39 +0000 (18:35 +0000)]
Fix a typo in the mcount function_profiler.
* config/tilegx/tilegx.c (tilegx_function_profiler): Fix typo.
config/tilepro/tilepro.c (tilepro_function_profiler): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190726 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoStop trying to represent the bfins instruction with the insv pattern,
walt [Mon, 27 Aug 2012 18:16:34 +0000 (18:16 +0000)]
Stop trying to represent the bfins instruction with the insv pattern,
because it causes an extra copy when bfins reuses one of its inputs.
* config/tilegx/tilegx.md (*bfins): Rename to insn_bfins.
(insn_bfins): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190724 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoProperly set the latency of atomic ops to the approximate latency of a
walt [Mon, 27 Aug 2012 17:27:04 +0000 (17:27 +0000)]
Properly set the latency of atomic ops to the approximate latency of a
remote memory operation.
* config/tilegx/sync.md (atomic_compare_and_swap_bare<mode>,
atomic_exchange_bare<mode>,
atomic_fetch_<fetchop_name>_bare<mode>): Set type to X1_remote.
* config/tilegx/tilegx-generic.md (X1_remote): New
insn_reservation.
* config/tilegx/tilegx.md (type): Add X1_remove.
(insn_cmpexch<four_if_si>, insn_exch<four_if_si>,
insn_fetchadd<four_if_si>, insn_fetchaddgez<four_if_si>,
insn_fetchand<four_if_si>, insn_fetchor<four_if_si>): Set type to
X1_remote.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190722 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago* gdbinit.in: Fix syntax of skip command.
schwab [Mon, 27 Aug 2012 16:35:05 +0000 (16:35 +0000)]
* gdbinit.in: Fix syntax of skip command.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190721 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/testsuite/
rsandifo [Mon, 27 Aug 2012 16:31:46 +0000 (16:31 +0000)]
gcc/testsuite/
* gcc.target/mips/ext_ins.c, gcc.target/mips/octeon-pop-2.c,
gcc.target/mips/pr54240.c, gcc.target/mips/stack-1.c,
gcc.target/mips/unaligned-1.c: Add NOMIPS16.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190720 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/testsuite/
rsandifo [Mon, 27 Aug 2012 16:31:29 +0000 (16:31 +0000)]
gcc/testsuite/
* gcc.target/mips/20020620-1.c, gcc.target/mips/atomic-memory-2.c,
gcc.target/mips/branch-2.c, gcc.target/mips/branch-3.c,
gcc.target/mips/clear-cache-1.c, gcc.target/mips/const-anchor-1.c,
gcc.target/mips/const-anchor-2.c, gcc.target/mips/dspr2-MULT.c,
gcc.target/mips/dspr2-MULTU.c, gcc.target/mips/ext-1.c,
gcc.target/mips/ext-2.c, gcc.target/mips/ext-3.c,
gcc.target/mips/ext-4.c, gcc.target/mips/ext_ins.c,
gcc.target/mips/fpcmp-1.c, gcc.target/mips/fpcmp-2.c,
gcc.target/mips/mips16e-extends.c, gcc.target/mips/mips32-dsp.c,
gcc.target/mips/mips32-dsp-type.c, gcc.target/mips/mips32r2-mxhc1.c,
gcc.target/mips/mips-ps-5.c, gcc.target/mips/mips-ps-7.c,
gcc.target/mips/mips-ps-type-2.c, gcc.target/mips/mips-ps-type.c,
gcc.target/mips/movcc-1.c, gcc.target/mips/movcc-2.c,
gcc.target/mips/movcc-3.c, gcc.target/mips/neg-abs-1.c,
gcc.target/mips/neg-abs-2.c, gcc.target/mips/nmadd-1.c,
gcc.target/mips/nmadd-2.c, gcc.target/mips/nmadd-3.c,
gcc.target/mips/octeon-exts-7.c, gcc.target/mips/octeon-seq-4.c,
gcc.target/mips/rsqrt-1.c, gcc.target/mips/rsqrt-2.c,
gcc.target/mips/rsqrt-3.c, gcc.target/mips/sb1-1.c,
gcc.target/mips/scc-4.c, gcc.target/mips/stack-1.c,
gcc.target/mips/unaligned-1.c: Tighten regexps.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190719 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/testsuite/
rsandifo [Mon, 27 Aug 2012 16:27:50 +0000 (16:27 +0000)]
gcc/testsuite/
* gcc.target/mips/mips.exp: Use gcc-dg-runtest rather than dg-runtest.
(mips_option_groups): Remove optimization.  Add various -f options.
(mips-dg-options): Make -funroll-loops imply -funroll-all-loops
and -pg imply -fno-omit-frame-pointer.
* gcc.target/mips/abi-eabi32-long32.c: Remove optimization flag.
* gcc.target/mips/abi-eabi32-long64.c: Likewise.
* gcc.target/mips/abi-eabi64-long32.c: Likewise.
* gcc.target/mips/abi-eabi64-long64.c: Likewise.
* gcc.target/mips/abi-n32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long32-pic.c: Likewise.
* gcc.target/mips/abi-n32-long32.c: Likewise.
* gcc.target/mips/abi-n32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long64-pic.c: Likewise.
* gcc.target/mips/abi-n32-long64.c: Likewise.
* gcc.target/mips/abi-n64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long32-pic.c: Likewise.
* gcc.target/mips/abi-n64-long32.c: Likewise.
* gcc.target/mips/abi-n64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long64-pic.c: Likewise.
* gcc.target/mips/abi-n64-long64.c: Likewise.
* gcc.target/mips/abi-o32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long32-pic.c: Likewise.
* gcc.target/mips/abi-o32-long32.c: Likewise.
* gcc.target/mips/abi-o32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long64-pic.c: Likewise.
* gcc.target/mips/abi-o32-long64.c: Likewise.
* gcc.target/mips/abi-o64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long32-pic.c: Likewise.
* gcc.target/mips/abi-o64-long32.c: Likewise.
* gcc.target/mips/abi-o64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long64-pic.c: Likewise.
* gcc.target/mips/abi-o64-long64.c: Likewise.
* gcc.target/mips/asm-1.c: Likewise.
* gcc.target/mips/branch-1.c: Likewise.
* gcc.target/mips/call-3.c: Likewise.
* gcc.target/mips/call-saved-3.c: Likewise.
* gcc.target/mips/clear-cache-1.c: Likewise.
* gcc.target/mips/div-1.c: Likewise.
* gcc.target/mips/div-2.c: Likewise.
* gcc.target/mips/div-3.c: Likewise.
* gcc.target/mips/div-4.c: Likewise.
* gcc.target/mips/div-5.c: Likewise.
* gcc.target/mips/div-6.c: Likewise.
* gcc.target/mips/div-7.c: Likewise.
* gcc.target/mips/div-8.c: Likewise.
* gcc.target/mips/div-9.c: Likewise.
* gcc.target/mips/div-10.c: Likewise.
* gcc.target/mips/div-11.c: Likewise.
* gcc.target/mips/div-12.c: Likewise.
* gcc.target/mips/dsp-ctrl.c: Likewise.
* gcc.target/mips/dsp-no-lhx.c: Likewise.
* gcc.target/mips/ext-8.c: Likewise.
* gcc.target/mips/extend-2.c: Likewise.
* gcc.target/mips/fix-r10000-1.c: Likewise.
* gcc.target/mips/fix-r10000-2.c: Likewise.
* gcc.target/mips/fix-r10000-3.c: Likewise.
* gcc.target/mips/fix-r10000-4.c: Likewise.
* gcc.target/mips/fix-r10000-5.c: Likewise.
* gcc.target/mips/fix-r10000-6.c: Likewise.
* gcc.target/mips/fix-r10000-7.c: Likewise.
* gcc.target/mips/fix-r10000-8.c: Likewise.
* gcc.target/mips/fix-r10000-9.c: Likewise.
* gcc.target/mips/fix-r10000-10.c: Likewise.
* gcc.target/mips/fix-r10000-11.c: Likewise.
* gcc.target/mips/fix-r10000-12.c: Likewise.
* gcc.target/mips/fix-r10000-13.c: Likewise.
* gcc.target/mips/fix-r10000-14.c: Likewise.
* gcc.target/mips/fix-r10000-15.c: Likewise.
* gcc.target/mips/fpcmp-1.c: Likewise.
* gcc.target/mips/fpcmp-2.c: Likewise.
* gcc.target/mips/fpr-moves-7.c: Likewise.
* gcc.target/mips/fpr-moves-8.c: Likewise.
* gcc.target/mips/int-moves-1.c: Likewise.
* gcc.target/mips/int-moves-2.c: Likewise.
* gcc.target/mips/long-calls-pg.c: Likewise.
* gcc.target/mips/loongson-muldiv-1.c: Likewise.
* gcc.target/mips/loongson-muldiv-2.c: Likewise.
* gcc.target/mips/loongson-shift-count-truncated-1.c: Likewise.
* gcc.target/mips/loongson3a-muldiv-1.c: Likewise.
* gcc.target/mips/loongson3a-muldiv-2.c: Likewise.
* gcc.target/mips/mips-3d-1.c: Likewise.
* gcc.target/mips/mips-3d-2.c: Likewise.
* gcc.target/mips/mips-3d-3.c: Likewise.
* gcc.target/mips/mips-3d-4.c: Likewise.
* gcc.target/mips/mips-3d-5.c: Likewise.
* gcc.target/mips/mips-3d-6.c: Likewise.
* gcc.target/mips/mips-3d-7.c: Likewise.
* gcc.target/mips/mips-3d-8.c: Likewise.
* gcc.target/mips/mips-3d-9.c: Likewise.
* gcc.target/mips/mips-ps-1.c: Likewise.
* gcc.target/mips/mips-ps-2.c: Likewise.
* gcc.target/mips/mips-ps-3.c: Likewise.
* gcc.target/mips/mips-ps-4.c: Likewise.
* gcc.target/mips/mips-ps-6.c: Likewise.
* gcc.target/mips/mips32-dspr2.c: Likewise.
* gcc.target/mips/mmcount-ra-address-1.c: Likewise.
* gcc.target/mips/neg-abs-1.c: Likewise.
* gcc.target/mips/neg-abs-2.c: Likewise.
* gcc.target/mips/nmadd-3.c: Likewise.
* gcc.target/mips/no-smartmips-lwxs.c: Likewise.
* gcc.target/mips/no-smartmips-ror-1.c: Likewise.
* gcc.target/mips/octeon-pop-1.c: Likewise.
* gcc.target/mips/pr26765.c: Likewise.
* gcc.target/mips/pr33256.c: Likewise.
* gcc.target/mips/pr33635-1.c: Likewise.
* gcc.target/mips/pr33755.c: Likewise.
* gcc.target/mips/pr35802.c: Likewise.
* gcc.target/mips/pr45074.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-1.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-2.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-3.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-4.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-5.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-6.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-7.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-8.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-9.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-11.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-12.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-13.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-15.c: Likewise.
* gcc.target/mips/save-restore-1.c: Likewise.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-5.c: Likewise.
* gcc.target/mips/smartmips-ror-1.c: Likewise.
* gcc.target/mips/smartmips-ror-2.c: Likewise.
* gcc.target/mips/smartmips-ror-3.c: Likewise.
* gcc.target/mips/smartmips-ror-4.c: Likewise.
* gcc.target/mips/stack-1.c: Likewise.

* gcc.target/mips/clear-cache-2.c: Remove optimization flag.
Tighten regexps.

* gcc.target/mips/branch-8.c: Arrange for the delay slot of the
branch under test to be filled with preceding rather than
following instructions.
* gcc.target/mips/branch-10.c: Likewise.
* gcc.target/mips/branch-11.c: Likewise.
* gcc.target/mips/branch-12.c: Likewise.
* gcc.target/mips/branch-13.c: Likewise.
* gcc.target/mips/branch-9.c: Likewise.  Allow the frame pointer
to be eliminated.  Tighten $28 scan-assembler-not test.

* gcc.target/mips/call-2.c: Remove optimization flag.  Move second
function to...
* gcc.target/mips/call-4.c: ...this new test.

* gcc.target/mips/code-readable-2.c: Rework to make a jump table
more likely.
* gcc.target/mips/code-readable-3.c: Likewise.
* gcc.target/mips/code-readable-1.c: Likewise.  Remove optimization
flag but skip for -O0.
* gcc.target/mips/code-readable-4.c: Likewise.

* gcc.target/mips/mips32-dsp-run.c: Prevent compile-time reduction
of operations under test.
* gcc.target/mips/mips32-dsp.c: Likewise.  Remove optimization flag.

* gcc.target/mips/near-far-3.c: Remove optimization flag.
Don't require sibling-call optimization.
* gcc.target/mips/near-far-4.c: Likewise.

* gcc.target/mips/no-dsp-1.c: Require -ffat-lto-objects.
Make sure that the register variable is used.
* gcc.target/mips/soft-float-1.c: Likewise.

* gcc.target/mips/sdata-1.c: Make static data volatile.
* gcc.target/mips/sdata-2.c: Likewise.
* gcc.target/mips/sdata-3.c: Likewise.
* gcc.target/mips/sdata-4.c: Likewise.

* gcc.target/mips/20020620-1.c: Remove optimization flag but
skip for -O0.
* gcc.target/mips/atomic-memory-2.c: Likewise.
* gcc.target/mips/branch-cost-1.c: Likewise.
* gcc.target/mips/branch-cost-2.c: Likewise.
* gcc.target/mips/cache-1.c: Likewise.
* gcc.target/mips/call-1.c: Likewise.
* gcc.target/mips/call-saved-2.c: Likewise.
* gcc.target/mips/const-anchor-1.c: Likewise.
* gcc.target/mips/const-anchor-2.c: Likewise.
* gcc.target/mips/dse-1.c: Likewise.
* gcc.target/mips/dsp-lhx.c: Likewise.
* gcc.target/mips/dspr2-MULTU.c: Likewise.
* gcc.target/mips/ext-1.c: Likewise.
* gcc.target/mips/ext-2.c: Likewise.
* gcc.target/mips/ext-3.c: Likewise.
* gcc.target/mips/ext-4.c: Likewise.
* gcc.target/mips/ext-5.c: Likewise.
* gcc.target/mips/ext-6.c: Likewise.
* gcc.target/mips/ext-7.c: Likewise.
* gcc.target/mips/extend-1.c: Likewise.
* gcc.target/mips/fix-r4000-1.c: Likewise.
* gcc.target/mips/fix-r4000-3.c: Likewise.
* gcc.target/mips/fix-r4000-5.c: Likewise.
* gcc.target/mips/fix-r4000-6.c: Likewise.
* gcc.target/mips/fix-r4000-8.c: Likewise.
* gcc.target/mips/fix-r4000-10.c: Likewise.
* gcc.target/mips/fixed-scalar-type.c: Likewise.
* gcc.target/mips/fixed-vector-type.c: Likewise.
* gcc.target/mips/fpr-moves-1.c: Likewise.
* gcc.target/mips/fpr-moves-2.c: Likewise.
* gcc.target/mips/fpr-moves-3.c: Likewise.
* gcc.target/mips/fpr-moves-4.c: Likewise.
* gcc.target/mips/fpr-moves-5.c: Likewise.
* gcc.target/mips/fpr-moves-6.c: Likewise.
* gcc.target/mips/ins-1.c: Likewise.
* gcc.target/mips/ins-2.c: Likewise.
* gcc.target/mips/interrupt_handler-2.c: Likewise.
* gcc.target/mips/interrupt_handler-3.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.
* gcc.target/mips/madd-3.c: Likewise.
* gcc.target/mips/madd-5.c: Likewise.
* gcc.target/mips/madd-6.c: Likewise.
* gcc.target/mips/madd-8.c: Likewise.
* gcc.target/mips/madd-9.c: Likewise.
* gcc.target/mips/memcpy-1.c: Likewise.
* gcc.target/mips/mips-ps-type.c: Likewise.
* gcc.target/mips/mips-ps-type-2.c: Likewise.
* gcc.target/mips/mips-sched-madd.c: Likewise.
* gcc.target/mips/mips16e-extends.c: Likewise.
* gcc.target/mips/mips32r2-mxhc1.c: Likewise.
* gcc.target/mips/mips64-dsp-ldx.c: Likewise.
* gcc.target/mips/movcc-1.c: Likewise.
* gcc.target/mips/movcc-2.c: Likewise.
* gcc.target/mips/movcc-3.c: Likewise.
* gcc.target/mips/msub-5.c: Likewise.
* gcc.target/mips/msub-6.c: Likewise.
* gcc.target/mips/msub-8.c: Likewise.
* gcc.target/mips/mult-2.c: Likewise.
* gcc.target/mips/mult-3.c: Likewise.
* gcc.target/mips/mult-5.c: Likewise.
* gcc.target/mips/mult-6.c: Likewise.
* gcc.target/mips/mult-7.c: Likewise.
* gcc.target/mips/mult-12.c: Likewise.
* gcc.target/mips/mult-13.c: Likewise.
* gcc.target/mips/mult-14.c: Likewise.
* gcc.target/mips/mult-15.c: Likewise.
* gcc.target/mips/mult-17.c: Likewise.
* gcc.target/mips/mult-18.c: Likewise.
* gcc.target/mips/mult-19.c: Likewise.
* gcc.target/mips/nmadd-1.c: Likewise.
* gcc.target/mips/nmadd-2.c: Likewise.
* gcc.target/mips/octeon-baddu-1.c: Likewise.
* gcc.target/mips/octeon-cins-1.c: Likewise.
* gcc.target/mips/octeon-cins-2.c: Likewise.
* gcc.target/mips/octeon-dmul-3.c: Likewise.
* gcc.target/mips/octeon-exts-2.c: Likewise.
* gcc.target/mips/octeon-exts-3.c: Likewise.
* gcc.target/mips/octeon-exts-4.c: Likewise.
* gcc.target/mips/octeon-exts-5.c: Likewise.
* gcc.target/mips/octeon-exts-6.c: Likewise.
* gcc.target/mips/octeon-exts-7.c: Likewise.
* gcc.target/mips/octeon-pop-2.c: Likewise.
* gcc.target/mips/octeon-seq-3.c: Likewise.
* gcc.target/mips/octeon-seq-4.c: Likewise.
* gcc.target/mips/octeon2-lx-1.c: Likewise.
* gcc.target/mips/octeon2-lx-2.c: Likewise.
* gcc.target/mips/octeon2-lx-3.c: Likewise.
* gcc.target/mips/pr54240.c: Likewise.
* gcc.target/mips/rsqrt-1.c: Likewise.
* gcc.target/mips/rsqrt-2.c: Likewise.
* gcc.target/mips/rsqrt-3.c: Likewise.
* gcc.target/mips/rsqrt-4.c: Likewise.
* gcc.target/mips/save-restore-2.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.
* gcc.target/mips/sb1-1.c: Likewise.
* gcc.target/mips/scc-1.c: Likewise.
* gcc.target/mips/scc-2.c: Likewise.
* gcc.target/mips/scc-3.c: Likewise.
* gcc.target/mips/scc-4.c: Likewise.
* gcc.target/mips/smartmips-lwxs.c: Likewise.
* gcc.target/mips/truncate-1.c: Likewise.
* gcc.target/mips/truncate-2.c: Likewise.
* gcc.target/mips/truncate-3.c: Likewise.
* gcc.target/mips/truncate-4.c: Likewise.
* gcc.target/mips/truncate-5.c: Likewise.
* gcc.target/mips/truncate-6.c: Likewise.
* gcc.target/mips/unaligned-1.c: Likewise.

* gcc.target/mips/dpaq_sa_l_w.c: Remove optimization flag but
skip for -O0.  Require -fexpensive-optimizations.
* gcc.target/mips/dpsq_sa_l_w.c: Likewise.
* gcc.target/mips/dspr2-MULT.c: Likewise.
* gcc.target/mips/fix-r4000-2.c: Likewise.
* gcc.target/mips/fix-r4000-4.c: Likewise.
* gcc.target/mips/fix-r4000-7.c: Likewise.
* gcc.target/mips/fix-r4000-9.c: Likewise.
* gcc.target/mips/madd-1.c: Likewise.
* gcc.target/mips/madd-2.c: Likewise.
* gcc.target/mips/madd-4.c: Likewise.
* gcc.target/mips/maddu-1.c: Likewise.
* gcc.target/mips/maddu-2.c: Likewise.
* gcc.target/mips/maddu-3.c: Likewise.
* gcc.target/mips/maddu-4.c: Likewise.
* gcc.target/mips/msub-1.c: Likewise.
* gcc.target/mips/msub-2.c: Likewise.
* gcc.target/mips/msub-3.c: Likewise.
* gcc.target/mips/msub-4.c: Likewise.
* gcc.target/mips/msubu-1.c: Likewise.
* gcc.target/mips/msubu-2.c: Likewise.
* gcc.target/mips/msubu-3.c: Likewise.
* gcc.target/mips/msubu-4.c: Likewise.
* gcc.target/mips/mult-1.c: Likewise.
* gcc.target/mips/mult-4.c: Likewise.
* gcc.target/mips/mult-8.c: Likewise.
* gcc.target/mips/mult-9.c: Likewise.
* gcc.target/mips/mult-10.c: Likewise.
* gcc.target/mips/mult-11.c: Likewise.
* gcc.target/mips/mult-16.c: Likewise.

* gcc.target/mips/fix-r4000-11.c: Remove optimization flag but
skip for -O0 and -Os.
* gcc.target/mips/fix-r4000-12.c: Likewise.
* gcc.target/mips/madd-7.c: Likewise.
* gcc.target/mips/mips-ps-5.c: Likewise.
* gcc.target/mips/mips-ps-7.c: Likewise.
* gcc.target/mips/msub-7.c: Likewise.

* gcc.target/mips/mmcount-ra-address-2.c: Remove optimization flag but
skip for -O0.  Require -mno-abicalls.
* gcc.target/mips/mmcount-ra-address-3.c: Likewise.

* gcc.target/mips/octeon-bbit-1.c: Remove optimization flag but
skip for -O0.  Require a total number of BBIT instructions and
at least one of each kind.

* gcc.target/mips/octeon-bbit-2.c: Remove optimization flag but
skip for -O0.  Require -fno-unroll-loops.

* gcc.target/mips/octeon-bbit-3.c: Remove optimization flag but
skip for -O0.  Allow BLTZ as well as BGEZ.

* gcc.target/mips/octeon-dmul-2.c: Skip for -Os.

* gcc.target/mips/octeon-pipe-1.c: Remove optimization flag but
skip for -O0.  Require -fschedule-insns2.
* gcc.target/mips/octeon2-pipe-1.c: Likewise.

* gcc.target/mips/r10k-cache-barrier-10.c: Remove optimization flag
but skip for -O0.  Make a branch-likely more likely.

* gcc.target/mips/timode-2.c: Split each test into its own function.
* gcc.target/mips/timode-1.c: Likewise.  Skip for -Os.

* gcc.target/mips/vr-mult-1.c: Remove optimization flag but
skip for -O0.  Require -fpeephole2.
* gcc.target/mips/vr-mult-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190718 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Mon, 27 Aug 2012 16:25:47 +0000 (16:25 +0000)]
gcc/
* config/mips/mips.c (mips_pic_call_symbol_from_set): Check for
SYMBOL_REF SET_SRCs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190717 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Mon, 27 Aug 2012 16:25:12 +0000 (16:25 +0000)]
gcc/
* config/mips/mips.c (vr4130_align_insns): Don't simulate
ghost instructions.  Assert that the required instructions exist.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190716 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoPR preprocessor/53469 - argument tokens of _Pragma miss virtual location
dodji [Mon, 27 Aug 2012 15:41:38 +0000 (15:41 +0000)]
PR preprocessor/53469 - argument tokens of _Pragma miss virtual location

Consider this short test snippet:

-------------------------8-------------------
    #define STRINGIFY(x) #x
    #define TEST(x) \
      _Pragma(STRINGIFY(GCC diagnostic ignored "-Wunused-local-typedefs")) \
      typedef int myint;

    void bar ()
    {
      TEST(myint)
    }
-------------------------8-------------------

The _Pragma is effectively ignored, and compiling with
-Wunused-local-typedefs warns on the local typedef, even though the
pragma should have prevented the warning to be emitted.

This is because when the preprocessor sees the _Pragma operator and
then goes to handle the first token ('GCC' here) that makes up its
operands, it retains the spelling location of that token, not its
virtual location.

Later when diagnostic_report_diagnostic is called to emit the warning
(or ignore it because of the pragma), it compares the location of the
first operand of the pragma with the location of the unused location,
(by calling linemap_location_before_p) and that comparison fails
because in this case, both locations should be virtual.

This patch fixes the issue by teaching the pragma handling to use
virtual locations.

Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.

libcpp/

PR preprocessor/53469
* directives.c (do_pragma): Use the virtual location for the
pragma token, instead of its spelling location.

gcc/testsuite/

PR preprocessor/53469
* gcc.dg/cpp/_Pragma7.c: New test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190714 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 14:42:50 +0000 (14:42 +0000)]
2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * trans-expr.c (gfc_trans_arrayfunc_assign): Free se.ss
        and loop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190713 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago Add interfaces to retrieve random numbers in bulk.
drepper [Mon, 27 Aug 2012 14:13:15 +0000 (14:13 +0000)]
Add interfaces to retrieve random numbers in bulk.
* include/bits/random.h (uniform_int_distribution<>): Add __generate
and __generate_impl functions.
(uniform_real_distribution<>): Likewise.
(bernoulli_distribution): Likewise.
(geometric_distribution<>): Likewise.
(negative_binomial_distribution<>): Likewise.
(poisson_distribution<>): Likewise.
(exponential_distribution<>): Likewise.
(normal_distribution<>): Likewise.
(lognormal_distribution<>): Likewise.
(chi_squared_distribution<>): Likewise.
(cauchy_distribution<>): Likewise.
(fisher_f_distribution<>): Likewise.
(student_t_distribution<>): Likewise.
(gamma_distribution<>): Likewise.
(weibull_distribution<>): Likewise.
(extreme_value_distribution<>): Likewise.
(discrete_distribution<>): Likewise.
(piecewise_constant_distribution<>): Likewise.
(piecewise_linear_distribution<>): Likewise.
* include/bits/random.tcc (__detail::_Power_of_2): New function.
(uniform_int_distribution<>::__generate_impl): New function.
(uniform_real_distribution<>::__generate_impl): New function.
(bernoulli_distribution::__generate_impl): New function.
(geometric_distribution<>::__generate_impl): New function.
(negative_binomial_distribution<>::__generate_impl): New function.
(poisson_distribution<>::__generate_impl): New function.
(exponential_distribution<>::__generate_impl): New function.
(normal_distribution<>::__generate_impl): New function.
(lognormal_distribution<>::__generate_impl): New function.
(chi_squared_distribution<>::__generate_impl): New function.
(cauchy_distribution<>::__generate_impl): New function.
(fisher_f_distribution<>::__generate_impl): New function.
(student_t_distribution<>::__generate_impl): New function.
(gamma_distribution<>::__generate_impl): New function.
(weibull_distribution<>::__generate_impl): New function.
(extreme_value_distribution<>::__generate_impl): New function.
(discrete_distribution<>::__generate_impl): New function.
(piecewise_constant_distribution<>::__generate_impl): New function.
(piecewise_linear_distribution<>::__generate_impl): New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190712 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * include/bits/random.h (mersenne_twister_engine): Don't inline
drepper [Mon, 27 Aug 2012 12:08:16 +0000 (12:08 +0000)]
* include/bits/random.h (mersenne_twister_engine): Don't inline
discard here.  New member function _M_gen_rand.
* include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
New function.  Extracted from operator().
(mersenne_twister_engine<>::discard): New implementation which
skips in large steps.
(mersenne_twister_engine<>::operator()): Use _M_gen_rand.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190711 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 12:07:43 +0000 (12:07 +0000)]
2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/41093
        * gfortran.h (gfc_common_head): Add "int refs".
        * match.c (gfc_match_common): Increment refs.
        * resolve.c (resolve_symbol): Only increment formal_ns->refs
        if formal_ns is not sym->ns.
        * symbol.c (gfc_free_symbol): Only free formal_ns if
        if formal_ns is not sym->ns. Free common_block if refs is one.
        (gfc_release_symbol): Release formal_ns only if the
        symbol is not ENTRY of a module.
        * decl.c (get_proc_name): Don't increment gfc_current_ns->refs.
        * parse.c (parse_interface): Incement proc_unit->refs++ for
        proc-pointer result variables.
        * module.c (mio_symbol): Don't increase sym->refs for its
        use in sym->formal_ns->proc_name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190710 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 12:03:41 +0000 (12:03 +0000)]
2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54370
        * trans-stmt.c (gfc_trans_do_while): Don't change the logical
        kind for negation of the condition.

2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54370
        * gfortran.dg/do_5.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190709 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * MAINTAINERS: Fix my email address.
drepper [Mon, 27 Aug 2012 12:00:32 +0000 (12:00 +0000)]
    * MAINTAINERS: Fix my email address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190708 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 08:20:59 +0000 (08:20 +0000)]
2012-08-27  Tobias Burnus  <burnus@net-b.de>

        * options.c (set_Wall): Don't set for -Wcompare-reals.
        * invoke.texi (-Wall, -Wcompare-reals): -Wall no longer
        implies -Wcompare-reals.

2012-08-27  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/bessel_5.f90: Remove -Wno-compare-reals
        from dg-options as -Wall no longer implies it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190707 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Mon, 27 Aug 2012 00:17:35 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190706 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Sun, 26 Aug 2012 19:31:15 +0000 (19:31 +0000)]
gcc/
* config/mips/mips.h (AVOID_CCMODE_COPIES): Update rationale for
definition.
* config/mips/mips.c (machine_function): Add next_fcc.
(mips_output_move): Remove handling of fcc moves.
(mips_allocate_fcc): New function.
(mips_emit_compare, mips_expand_vcondv2sf): Use it.
(mips_hard_regno_mode_ok_p): Restrict CCmode to ST registers.
Remove special case for CCmode reloads.
(mips_expand_builtin_compare_1): Use mips_allocate_fcc and treat
the result a fixed operand.
* config/mips/mips.md (move_type): Remove lui_movf.
(type, length): Remove references to it.
(movcc, reload_incc, reload_outcc): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190703 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * btest-gcc.sh (TESTLOGS): Make gfortran.sum optional.
hp [Sun, 26 Aug 2012 19:30:44 +0000 (19:30 +0000)]
* btest-gcc.sh (TESTLOGS): Make gfortran.sum optional.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190702 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Sun, 26 Aug 2012 19:22:59 +0000 (19:22 +0000)]
gcc/
* config/mips/mips.c (mips_has_long_branch_p): New function,
split out from...
(mips_expand_ghost_gp_insns): ...here.  Look inside sequences.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190701 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Sun, 26 Aug 2012 19:20:31 +0000 (19:20 +0000)]
gcc/
* config/mips/mips.c (r10k_safe_mem_expr_p): Use get_inner_reference.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190700 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Sun, 26 Aug 2012 19:19:31 +0000 (19:19 +0000)]
gcc/
* config/mips/mips.c (mips_rtx_costs): Add costs for CINS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190699 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
rsandifo [Sun, 26 Aug 2012 19:17:33 +0000 (19:17 +0000)]
gcc/
* config/mips/mips.c (mips_rtx_costs): Add missing COSTS_N_INSNS
to the size cost of multiplication.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190698 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/testsuite/
rsandifo [Sun, 26 Aug 2012 19:16:33 +0000 (19:16 +0000)]
gcc/testsuite/
* lib/scanasm.exp (scan-assembler-times_required_options): New proc.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190697 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-26 Andrew Pinski <apinski@cavium.com>
pinskia [Sun, 26 Aug 2012 18:29:21 +0000 (18:29 +0000)]
2012-08-26  Andrew Pinski  <apinski@cavium.com>

PR libffi/53014
* src/mips/ffi.c (ffi_prep_closure_loc): Allow n32 with soft-float and n64 with
soft-float.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190696 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * doc/install.texi (Specific): Clarify what needs to be added to
gerald [Sun, 26 Aug 2012 17:31:57 +0000 (17:31 +0000)]
* doc/install.texi (Specific): Clarify what needs to be added to
this section.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190695 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-26 Marc Glisse <marc.glisse@inria.fr>
paolo [Sun, 26 Aug 2012 17:22:43 +0000 (17:22 +0000)]
2012-08-26  Marc Glisse  <marc.glisse@inria.fr>
    Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/54376
* include/bits/random.h (lognormal_distribution<>::operator==,
gamma_distribution<>::operator==,
chi_squared_distribution<>::operator==,
fisher_f_distribution<>::operator==,
student_t_distribution<>::operator==,
binomial_distribution<>::operator==,
negative_binomial_distribution<>::operator==,
poisson_distribution<>::operator==): Change inline friend definition
to non-template.
* testsuite/26_numerics/random/binomial_distribution/requirements/
explicit_instantiation/1.cc: New.
* testsuite/26_numerics/random/cauchy_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/chi_squared_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/discrete_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/exponential_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/extreme_value_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/fisher_f_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/gamma_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/lognormal_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/negative_binomial_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/normal_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/piecewise_constant_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/piecewise_linear_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/poisson_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/student_t_distribution/requirements/
explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/uniform_int_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/uniform_real_distribution/
requirements/explicit_instantiation/1.cc: Likewise.
* testsuite/26_numerics/random/weibull_distribution/requirements/
explicit_instantiation/1.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190694 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * doc/tm.texi.in (Misc): Move descriptions of NO_DOLLAR_IN_LABEL
gerald [Sun, 26 Aug 2012 16:43:20 +0000 (16:43 +0000)]
* doc/tm.texi.in (Misc): Move descriptions of NO_DOLLAR_IN_LABEL
and NO_DOT_IN_LABEL from here...
(Label Output): ...to here.
* doc/tm.texi: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190693 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * doc/invoke.texi (C++ Dialect Options): Add missing space.
gerald [Sun, 26 Aug 2012 15:36:33 +0000 (15:36 +0000)]
* doc/invoke.texi (C++ Dialect Options): Add missing space.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190692 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
redi [Sun, 26 Aug 2012 14:59:20 +0000 (14:59 +0000)]
* testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190691 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDon't set HOST_LIB_PATH_bfd/HOST_LIB_PATH_opcodes
hjl [Sun, 26 Aug 2012 14:40:22 +0000 (14:40 +0000)]
Don't set HOST_LIB_PATH_bfd/HOST_LIB_PATH_opcodes

PR binutils/4970
* Makefile.def (host_modules): Rmove lib_path=.libs from bfd
and opcodes.
* Makefile.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190689 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoMove config entries to ChangeLog
hjl [Sun, 26 Aug 2012 14:26:57 +0000 (14:26 +0000)]
Move config entries to ChangeLog

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190688 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix a typo in ChangeLog
hjl [Sun, 26 Aug 2012 14:06:56 +0000 (14:06 +0000)]
Fix a typo in ChangeLog

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190686 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR libstdc++/54297
redi [Sun, 26 Aug 2012 13:49:44 +0000 (13:49 +0000)]
PR libstdc++/54297
* src/c++11/future.cc (~_Async_state_common): Move to...
* src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
Here.
(_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
* include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190685 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * cloog.m4 (CLOOG_INIT_FLAGS): Use = instead of == in test.
gerald [Sun, 26 Aug 2012 12:20:01 +0000 (12:20 +0000)]
* cloog.m4 (CLOOG_INIT_FLAGS): Use = instead of == in test.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190684 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * g++.dg/cpp0x/fntmpdefarg3.C: New.
jason [Sun, 26 Aug 2012 03:50:56 +0000 (03:50 +0000)]
* g++.dg/cpp0x/fntmpdefarg3.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190683 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * btest-gcc.sh (TESTLOGS): Add libmudflap.sum, if it exists.
hp [Sun, 26 Aug 2012 01:21:14 +0000 (01:21 +0000)]
* btest-gcc.sh (TESTLOGS): Add libmudflap.sum, if it exists.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190682 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sun, 26 Aug 2012 00:17:49 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190680 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAdd testcase author to ChangeLog.
redi [Sun, 26 Aug 2012 00:14:59 +0000 (00:14 +0000)]
Add testcase author to ChangeLog.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190677 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR libstdc++/54351
redi [Sun, 26 Aug 2012 00:12:40 +0000 (00:12 +0000)]
PR libstdc++/54351
* include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
reset().
(unique_ptr<T[]>::~unique_ptr()): Likewise.
* testsuite/20_util/unique_ptr/54351.cc: New.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
line numbers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190676 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR rtl-optimization/54088
ebotcazou [Sat, 25 Aug 2012 23:21:53 +0000 (23:21 +0000)]
PR rtl-optimization/54088
* jump.c (delete_related_insns): Robustify latest change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190674 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR libstdc++/54297
redi [Sat, 25 Aug 2012 23:01:40 +0000 (23:01 +0000)]
PR libstdc++/54297
* include/std/future (~_Async_state_impl): Join thread before
derived class members are destroyed.
(~_Async_state_common): Only define non-trivial destructor when
included from future.cc for ABI compatibility reasons.
* src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
* testsuite/30_threads/async/54297.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190672 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * doc/extend.texi (__atomic Builtins): Remove space before comma.
gerald [Sat, 25 Aug 2012 22:55:27 +0000 (22:55 +0000)]
* doc/extend.texi (__atomic Builtins): Remove space before comma.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190671 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-25 Richard Sandiford <rdsandiford@googlemail.com>
pinskia [Sat, 25 Aug 2012 21:33:15 +0000 (21:33 +0000)]
2012-08-25  Richard Sandiford  <rdsandiford@googlemail.com>
            Andrew Pinski  <apinski@cavium.com>

* config/mips/mips.h (CASE_VECTOR_MODE): For not
TARGET_MIPS16_SHORT_JUMP_TABLES use ptr_mode.
(CASE_VECTOR_SHORTEN_MODE): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190670 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * INSTALL/README: Also refer to the online installation
gerald [Sat, 25 Aug 2012 20:48:20 +0000 (20:48 +0000)]
* INSTALL/README: Also refer to the online installation
instructions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190669 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR libstdc++/54248
redi [Sat, 25 Aug 2012 18:51:53 +0000 (18:51 +0000)]
PR libstdc++/54248
* include/bits/concept_check.h: Replace references to boost
namespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190668 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.h (FP_REG_P): Remove macro.
uros [Sat, 25 Aug 2012 17:16:05 +0000 (17:16 +0000)]
* config/i386/i386.h (FP_REG_P): Remove macro.
(FP_REGNO_P): Ditto.
(HARD_REGNO_NREGS): Use STACK_REGNO_P instead of FP_REGNO_P.
(HARD_REGNO_NREGS_HAS_PADDING): Ditto.
(ANY_FP_REGNO_P): Ditto.
(HARD_REGNO_RENAME_OK): Use STACK_REGNO_P.
* config/i386/i386.c (output_387_ffreep): Use STACK_REGNO_P
instead of FP_REGNO_P.
(ix86_hard_regno_mode_ok): Ditto.
* config/i386/predicates.md (fp_register_operand): Ditto.
(register_and_not_fp_reg_operand): Ditto.
* config/i386/sync.md (atomic_loaddi_fpu): Use STACK_REG_P instead
of FP_REG_P.

* reg-stack.c (get_true_reg): Use STACK_REG_P instead of FP_REG_P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190667 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * ChangeLog: Fix whitespace.
uros [Sat, 25 Aug 2012 15:52:23 +0000 (15:52 +0000)]
* ChangeLog: Fix whitespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190666 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago/cp
paolo [Sat, 25 Aug 2012 09:53:30 +0000 (09:53 +0000)]
/cp
2012-08-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51421
* decl2.c (mark_used): Consistently return false after errors
about uses before deduction of auto.
* semantics.c (finish_id_expression): Check mark_used return
value and return error_mark_node in case of failure.

/testsuite
2012-08-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51421
* g++.dg/cpp0x/auto34.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190665 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/51213 (again)
jason [Sat, 25 Aug 2012 03:30:11 +0000 (03:30 +0000)]
PR c++/51213 (again)
* pt.c (deduction_tsubst_fntype): Remove.
(fn_type_unification): Check deduction depth and call
instantiate_template here.  Handle default argument access checks.
(determine_specialization): Suppress access control.
(tsubst_decl): Check for excessive deduction depth.
(recheck_decl_substitution): Make sure access control is on.
(type_unification_real): Don't mess with access deferring here.
(get_bindings): Adjust for fn_type_unification return type.
* call.c (enum rejection_reason_code): Drop rr_template_instantiation.
(template_instantiation_rejection): Remove.
(struct rejection_reason): Change targs to num_targs.
(template_unification_rejection, print_z_candidate): Adjust.
(add_template_candidate_real): Adjust for fn_type_unification change.
* class.c (resolve_address_of_overloaded_function): Likewise.
* cp-tree.h: Adjust declaration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190664 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * print-tree.c (print_node): Don't check TREE_LANG_FLAG_*
jason [Sat, 25 Aug 2012 02:29:00 +0000 (02:29 +0000)]
* print-tree.c (print_node): Don't check TREE_LANG_FLAG_*
on TREE_VEC or SSA_NAME.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190663 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * pt.c (tsubst_default_argument): Indicate where the default
jason [Sat, 25 Aug 2012 02:27:27 +0000 (02:27 +0000)]
* pt.c (tsubst_default_argument): Indicate where the default
argument is being instantiated for.
(tsubst_expr): Restore previous location.
(tsubst_copy_and_build): Set and restore location.
* call.c (build_new_method_call_1): Remember location of call.
* semantics.c (finish_call_expr): Here too.
* parser.c (cp_parser_omp_for_loop): Remember the location of the
increment expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190662 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sat, 25 Aug 2012 00:17:26 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190661 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c/54363
jakub [Fri, 24 Aug 2012 21:46:17 +0000 (21:46 +0000)]
PR c/54363
* gimplify.c (optimize_compound_literals_in_ctor): Only recurse
if init is a CONSTRUCTOR.

* gcc.dg/pr54363.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190657 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c/54355
jakub [Fri, 24 Aug 2012 21:45:22 +0000 (21:45 +0000)]
PR c/54355
* c-decl.c (c_parser_label): Pass true as nested and fix up comments
for nested and empty_ok arguments in the call to
c_parser_declaration_or_fndef.

* gcc.dg/pr54355.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190656 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * tree-ssa-live.c (dump_var_map): Do not dump the partition
steven [Fri, 24 Aug 2012 20:25:42 +0000 (20:25 +0000)]
* tree-ssa-live.c (dump_var_map): Do not dump the partition
map of virtual operands.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190655 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoSync plugin-api.h with gold patch : http://sourceware.org/ml/binutils/2012-08/msg0044...
tmsriram [Fri, 24 Aug 2012 19:07:28 +0000 (19:07 +0000)]
Sync plugin-api.h with gold patch : sourceware.org/ml/binutils/2012-08/msg00447.html

* plugin-api.h (ld_plugin_allow_unique_segment_for_sections):
New interface.
(ld_plugin_unique_segment_for_sections): New interface.
(LDPT_ALLOW_UNIQUE_SEGMENT_FOR_SECTIONS): New enum val.
(LDPT_UNIQUE_SEGMENT_FOR_SECTIONS): New enum val.
(tv_allow_unique_segment_for_sections): New member.
(tv_unique_segment_for_sections): New member.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190654 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * pt.c (resolve_overloaded_unification): Use coerce_template_parms
jason [Fri, 24 Aug 2012 18:58:00 +0000 (18:58 +0000)]
* pt.c (resolve_overloaded_unification): Use coerce_template_parms
instead of get_bindings.
(resolve_nondeduced_context): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190653 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * pt.c (register_specialization): Correct argument to
jason [Fri, 24 Aug 2012 18:57:50 +0000 (18:57 +0000)]
* pt.c (register_specialization): Correct argument to
check_specialization_namespace.
(determine_specialization): Don't consider members of
unspecialized types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190652 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.c (ia32_multipass_dfa_lookahead) : Add
kyukhin [Fri, 24 Aug 2012 15:36:02 +0000 (15:36 +0000)]
    * config/i386/i386.c (ia32_multipass_dfa_lookahead) : Add
        case for Atom processor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190649 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/ChangeLog
simonb [Fri, 24 Aug 2012 14:58:06 +0000 (14:58 +0000)]
gcc/ChangeLog
* dwarf2out.c (gen_producer_string): Omit command line switch if
CL_NO_DWARF_RECORD flag set.
* opts.h (CL_NO_DWARF_RECORD): New.
* opt-functions.awk (switch_flags): Add NoDWARFRecord.
* doc/options.texi: Document NoDWARFRecord option flag.

gcc/fortran/ChangeLog
* lang.opt (-cpp=): Mark flag NoDWARFRecord.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190648 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAllow arg_pointer_rtx/frame_pointer_rtx for based_loc_descr
hjl [Fri, 24 Aug 2012 13:21:55 +0000 (13:21 +0000)]
Allow arg_pointer_rtx/frame_pointer_rtx for based_loc_descr

gcc/

PR debug/52857
* dwarf2out.c (mem_loc_descriptor): Allow arg_pointer_rtx and
frame_pointer_rtx for based_loc_descr.

gcc/testsuite/

PR debug/52857
* gcc.target/i386/pr52857-1.c: New.
* gcc.target/i386/pr52857-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190647 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR target/54222
gjl [Fri, 24 Aug 2012 13:01:54 +0000 (13:01 +0000)]
PR target/54222
* config/avr/t-avr (conv_X): Rename to func_X.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190646 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-24 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 24 Aug 2012 12:57:24 +0000 (12:57 +0000)]
2012-08-24  Martin Jambor  <mjambor@suse.cz>

* predict.c (maybe_hot_frequency_p): New parameter fun.  Use its decl
instead of current_function_decl, use profile_status_for_function and
ENTRY_BLOCK_PTR_FOR_FUNCTION with fun instead of their cfun variants.
(maybe_hot_count_p): New parameter fun, use
profile_status_for_function instead of its cfun_variant.
(maybe_hot_bb_p): New parameter fun, checking-assert it, pass it to
all callees.
(maybe_hot_edge_p): Pass cfun to maybe_hot_count_p and
maybe_hot_frequency_p.
(probably_never_executed_bb_p): New parameter fun, use its decl
instead of current_function_decl.
(optimize_bb_for_size_p): Pass cfun to maybe_hot_bb_p.
(rtl_profile_for_bb): Likewise.
(compute_function_frequency): Pass cfun to maybe_hot_bb_p and
probably_never_executed_bb_p.
* tree-ssa-operands.c (ssa_operands_active): New operator fun.  Use it
instead of cfun.
(update_stmt_operands): Pass cfun as an argument of
ssa_operands_active.
(swap_tree_operands): Likewise.
* gimple-iterator.c (update_modified_stmt): Likewise.
(update_modified_stmts): Likewise.
* tree-flow-inline.h (delink_stmt_imm_use): Likewise.
* tree-ssa.c (delete_tree_ssa): Likewise.
* bb-reorder.c (bb_to_key): Pass cfun to probably_never_executed_bb_p.
(push_to_next_round_p): Likewise.
(find_rarely_executed_basic_blocks_and_crossing_edges ): Likewise.
* cfg.c: Inlude tree.h.
(check_bb_profile): Use profile_status_for_function,
EXIT_BLOCK_PTR_FOR_FUNCTION and ENTRY_BLOCK_PTR_FOR_FUNCTION with
DECL_STRUCT_FUNCTION (current_function_decl) instead of their cfun
variants.
(dump_bb_info): Pass DECL_STRUCT_FUNCTION (current_function_decl) to
maybe_hot_bb_p and probably_never_executed_bb_p.
* gimple-pretty-print.c (gimple_dump_bb_buff): Checking-assert that
DECL_STRUCT_FUNCTION (current_function_decl) is not NULL.  Pass it to
dump_histograms_for_stmt.
(dump_gimple_mem_ops): Pass DECL_STRUCT_FUNCTION (current_function_decl)
as an argument to dump_gimple_mem_ops.
* tree-cfg.c (dump_function_to_file): Rename parameter fn to fndecl.
Do not change cfun.  Change and restore current_function_decl.
* Makefile.in (cfg.o): Include TREE_H in dependencies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190645 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agolibgcc/
gjl [Fri, 24 Aug 2012 12:42:48 +0000 (12:42 +0000)]
libgcc/
PR target/54222
* config/avr/lib1funcs-fixed.S: New file.
* config/avr/lib1funcs.S: Include it.  Undefine some divmodsi
after they are used.
(neg2, neg4): New macros.
(__mulqihi3,__umulqihi3,__mulhi3): Rewrite non-MUL variants.
(__mulhisi3,__umulhisi3,__mulsi3): Rewrite non-MUL variants.
(__umulhisi3): Speed up MUL variant if there is enough flash.
* config/avr/avr-lib.h (TA, UTA): Adjust according to gcc's
avr-modes.def.
* config/avr/t-avr (LIB1ASMFUNCS): Add: _fractqqsf, _fractuqqsf,
_fracthqsf, _fractuhqsf, _fracthasf, _fractuhasf, _fractsasf,
_fractusasf, _fractsfqq, _fractsfuqq, _fractsfhq, _fractsfuhq,
_fractsfha, _fractsfsa, _mulqq3, _muluqq3, _mulhq3, _muluhq3,
_mulha3, _muluha3, _mulsa3, _mulusa3, _divqq3, _udivuqq3, _divhq3,
_udivuhq3, _divha3, _udivuha3, _divsa3, _udivusa3.
(LIB2FUNCS_EXCLUDE): Add supported functions.

gcc/
PR target/54222
* avr-modes.def (HA, SA, DA, TA, UTA): Adjust modes.
* avr/avr-fixed.md: New file.
* avr/avr.md: Include it.
(cc): Add: minus.
(adjust_len): Add: minus, minus64, ufract, sfract.
(ALL1, ALL2, ALL4, ORDERED234): New mode iterators.
(MOVMODE): Add: QQ, UQQ, HQ, UHQ, HA, UHA, SQ, USQ, SA, USA.
(MPUSH): Add: HQ, UHQ, HA, UHA, SQ, USQ, SA, USA.
(pushqi1, xload8_A, xload_8, movqi_insn, *reload_inqi, addqi3,
subqi3, ashlqi3, *ashlqi3, ashrqi3, lshrqi3, *lshrqi3, *cmpqi,
cbranchqi4, *cpse.eq): Generalize to handle all 8-bit modes in ALL1.
(*movhi, reload_inhi, addhi3, *addhi3, addhi3_clobber, subhi3,
ashlhi3, *ashlhi3_const, ashrhi3, *ashirhi3_const, lshrhi3,
*lshrhi3_const, *cmphi, cbranchhi4): Generalize to handle all
16-bit modes in ALL2.
(subhi3, casesi, strlenhi): Add clobber when expanding minus:HI.
(*movsi, *reload_insi, addsi3, subsi3, ashlsi3, *ashlsi3_const,
ashrsi3, *ashrhi3_const, *ashrsi3_const, lshrsi3, *lshrsi3_const,
*reversed_tstsi, *cmpsi, cbranchsi4): Generalize to handle all
32-bit modes in ALL4.
* avr-dimode.md (ALL8): New mode iterator.
(adddi3, adddi3_insn, adddi3_const_insn, subdi3, subdi3_insn,
subdi3_const_insn, cbranchdi4, compare_di2,
compare_const_di2, ashrdi3, lshrdi3, rotldi3, ashldi3_insn,
ashrdi3_insn, lshrdi3_insn, rotldi3_insn): Generalize to handle
all 64-bit modes in ALL8.
* config/avr/avr-protos.h (avr_to_int_mode): New prototype.
(avr_out_fract, avr_out_minus, avr_out_minus64): New prototypes.
* config/avr/avr.c (TARGET_FIXED_POINT_SUPPORTED_P): Define to...
(avr_fixed_point_supported_p): ...this new static function.
(TARGET_BUILD_BUILTIN_VA_LIST): Define to...
(avr_build_builtin_va_list): ...this new static function.
(avr_adjust_type_node): New static function.
(avr_scalar_mode_supported_p): Allow if ALL_FIXED_POINT_MODE_P.
(avr_builtin_setjmp_frame_value): Use gen_subhi3 and return new
pseudo instead of gen_rtx_MINUS.
(avr_print_operand, avr_operand_rtx_cost): Handle: CONST_FIXED.
(notice_update_cc): Handle: CC_MINUS.
(output_movqi): Generalize to handle respective fixed-point modes.
(output_movhi, output_movsisf, avr_2word_insn_p): Ditto.
(avr_out_compare, avr_out_plus_1): Also handle fixed-point modes.
(avr_assemble_integer): Ditto.
(output_reload_in_const, output_reload_insisf): Ditto.
(avr_compare_pattern): Skip all modes > 4 bytes.
(avr_2word_insn_p): Skip movuqq_insn, movqq_insn.
(avr_out_fract, avr_out_minus, avr_out_minus64): New functions.
(avr_to_int_mode): New function.
(adjust_insn_length): Handle: ADJUST_LEN_SFRACT,
ADJUST_LEN_UFRACT, ADJUST_LEN_MINUS, ADJUST_LEN_MINUS64.
* config/avr/predicates.md (const0_operand): Allow const_fixed.
(const_operand, const_or_immediate_operand): New.
(nonmemory_or_const_operand): New.
* config/avr/constraints.md (Ynn, Y00, Y01, Y02, Ym1, Ym2, YIJ):
New constraints.
* config/avr/avr.h (LONG_LONG_ACCUM_TYPE_SIZE): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190644 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-24 Tobias Burnus <burnus@net-b.de>
burnus [Fri, 24 Aug 2012 07:43:23 +0000 (07:43 +0000)]
2012-08-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54350
        * trans-array.c (free_ss_info): Free data.array.subscript.
        (gfc_free_ss): No longer free data.array.subscript.
        (walk_coarray): New function, moved from trans-intrinsic.c
        (gfc_conv_expr_descriptor): Walk array descriptor instead
        of taking passed "ss".
        (get_array_ctor_all_strlen, gfc_add_loop_ss_code,
        gfc_conv_array_parameter): Update call and cleanup ss handling.
        * trans-array.h (gfc_conv_expr_descriptor,
        gfc_conv_array_parameter): Update prototype.
        * trans-expr.c (gfc_conv_derived_to_class,
        conv_isocbinding_procedure, gfc_conv_procedure_call,
        gfc_trans_alloc_subarray_assign, gfc_trans_subcomponent_assign,
        gfc_trans_pointer_assignment, gfc_trans_arrayfunc_assign): Update
        call to gfc_conv_expr_descriptor and gfc_conv_array_parameter,
        and clean up.
        * trans-intrinsic.c (walk_coarray): Moved to trans-array.c
        (trans_this_image, trans_image_index, gfc_conv_intrinsic_rank
        gfc_conv_intrinsic_bound, gfc_conv_intrinsic_cobound,
        gfc_conv_intrinsic_len, gfc_conv_intrinsic_size,
        gfc_conv_intrinsic_sizeof, gfc_conv_intrinsic_storage_size,
        gfc_conv_intrinsic_transfer, gfc_conv_allocated,
        gfc_conv_associated, gfc_conv_intrinsic_loc,
        conv_intrinsic_move_alloc): Update calls.
        * trans-io.c (gfc_convert_array_to_string, set_internal_unit,
        gfc_trans_transfer): Ditto.
        * trans-stmt.c (gfc_conv_elemental_dependencies,
        gfc_trans_sync, trans_associate_var,
        gfc_trans_pointer_assign_need_temp): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190641 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Fri, 24 Aug 2012 00:17:54 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190636 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/testsuite/
rsandifo [Thu, 23 Aug 2012 20:40:07 +0000 (20:40 +0000)]
gcc/testsuite/
* gcc.target/mips/code-readable-4.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190630 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2012-08-23 Kenneth Zadeck <zadeck@naturalbridge.com>
zadeck [Thu, 23 Aug 2012 18:46:18 +0000 (18:46 +0000)]
2012-08-23  Kenneth Zadeck <zadeck@naturalbridge.com>

* alias.c (rtx_equal_for_memref_p): Convert constant cases.
* combine.c (find_single_use_1, mark_used_regs_combine): Convert
to CASE_CONST_ANY.
  * cse.c (exp_equiv_p, canon_reg, fold_rtx, cse_process_notes_1,
count_reg_usage): Convert constant cases.
* cselib.c (cselib_expand_value_rtx_1): Convert to
CASE_CONST_ANY.
(cselib_subst_to_values): Convert constant cases.
* df-scan.c (df_uses_record): Ditto.
* dse.c (const_or_frame_p): Convert case statements to explicit
if-then-else using mode classes.
* emit-rtl.c (verify_rtx_sharing, copy_insn_1): Convert constant cases.
* explow.c (convert_memory_address_addr_space): Ditto.
* gcse.c (want_to_gcse_p, oprs_unchanged_p, compute_transp): Ditto.
* genattrtab.c (attr_copy_rtx, clear_struct_flag): Ditto.
* ira.c (equiv_init_varies_p, contains_replace_regs,
memref_referenced_p, rtx_moveable_p): Ditto.
* jump.c (mark_jump_label_1): Remove constant cases.
(rtx_renumbered_equal_p): Convert to CASE_CONST_UNIQUE.
* loop-invariant.c (check_maybe_invariant, hash_invariant_expr_1,
invariant_expr_equal_p): Convert to CASE_CONST_ANY.
* postreload-gcse.c (oprs_unchanged_p): Convert constant cases.
* reginfo.c (reg_scan_mark_refs): Ditto.
* regrename.c (scan_rtx): Ditto.
* reload1.c (eliminate_regs_1, elimination_effects,
scan_paradoxical_subregs): Ditto.
* reload.c (operands_match_p, subst_reg_equivs):  Ditto.
* resource.c (mark_referenced_resources, mark_set_resources): Ditto.
* rtlanal.c (rtx_unstable_p, rtx_varies_p, count_occurrences)
(reg_mentioned_p, modified_between_p, modified_in_p)
(volatile_insn_p, volatile_refs_p, side_effects_p, may_trap_p_1,
inequality_comparisons_p, computed_jump_p_1): Ditto.
* rtl.c (copy_rtx, rtx_equal_p_cb, rtx_equal_p): Ditto.
* sched-deps.c (sched_analyze_2): Ditto.
* valtrack.c (cleanup_auto_inc_dec): Ditto.
* rtl.h: (CASE_CONST_SCALAR_INT, CASE_CONST_UNIQUE,
CASE_CONST_ANY): New macros.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@190627 138bc75d-0d04-0410-961f-82ee72b054a4