[Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1

2014-12-25 Thread zsojka at seznam dot cz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404

Bug ID: 64404
   Summary: [5 Regression] ICE: in vect_get_vec_def_for_operand,
at tree-vect-stmts.c:1464 with
--param=sccvn-max-alias-queries-per-access=1
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: zsojka at seznam dot cz

Created attachment 34330
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34330action=edit
reduced testcase

Compiler output:
$ gcc -O3 --param=sccvn-max-alias-queries-per-access=1 testcase.c
testcase.c: In function 'Compute':
testcase.c:11:1: internal compiler error: in vect_get_vec_def_for_operand, at
tree-vect-stmts.c:1464
 Compute (void)
 ^
0xe62369 vect_get_vec_def_for_operand(tree_node*, gimple_statement_base*,
tree_node**)
/mnt/svn/gcc-trunk/gcc/tree-vect-stmts.c:1464
0xe700c6 vectorizable_store
/mnt/svn/gcc-trunk/gcc/tree-vect-stmts.c:5316
0xe75e51 vect_transform_stmt(gimple_statement_base*, gimple_stmt_iterator*,
bool*, _slp_tree*, _slp_instance*)
/mnt/svn/gcc-trunk/gcc/tree-vect-stmts.c:7257
0xe7b88d vect_transform_loop(_loop_vec_info*)
/mnt/svn/gcc-trunk/gcc/tree-vect-loop.c:6134
0xe968b6 vectorize_loops()
/mnt/svn/gcc-trunk/gcc/tree-vectorizer.c:491
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See http://gcc.gnu.org/bugs.html for instructions.

Tested revisions:
r219053 - ICE
4_9 r219040 - OK


[Bug tree-optimization/21046] move memory allocation out of a loop

2014-12-25 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=21046

Thomas Koenig tkoenig at gcc dot gnu.org changed:

   What|Removed |Added

   Last reconfirmed|2010-04-29 09:33:08 |2014-12-25
 CC||tkoenig at gcc dot gnu.org

--- Comment #5 from Thomas Koenig tkoenig at gcc dot gnu.org ---
Any work being done on this?


[Bug tree-optimization/64404] [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1

2014-12-25 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404

Dominique d'Humieres dominiq at lps dot ens.fr changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2014-12-25
 CC||rguenth at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Caused by revision r217827.


[Bug target/64405] New: [arm] Invalid codegenaration for ARMv3 and ARMv2

2014-12-25 Thread Sergey.Belyashov at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64405

Bug ID: 64405
   Summary: [arm] Invalid codegenaration for ARMv3 and ARMv2
   Product: gcc
   Version: 4.8.5
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: Sergey.Belyashov at gmail dot com

I try to compile program for ARMv3 or ARMv2 CPU target using GCC (4.8.x). It
produces assembler code with BX LR instructions (return from function) which
GAS (2.23.2) cannot compile:
   Error: selected processor does not support ARM mode `bx lr'
It is work for ARMv4 mode and greater (ARMv4 has no BX reg instruction
support, but GAS compiles it as MOV PC,reg).

As I know BX reg is strongly recommended to be used instead of MOV PC,reg
by the ARM architecture manual (section A.4.1.1) but GAS developers says, that
it is GCC bug.

GAS mail archive:
https://lists.gnu.org/archive/html/bug-binutils/2014-10/msg00017.html


[Bug target/64405] [arm] Invalid codegenaration for ARMv3 and ARMv2

2014-12-25 Thread Sergey.Belyashov at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64405

Sergey Belyashov Sergey.Belyashov at gmail dot com changed:

   What|Removed |Added

 Target||ARMv4
  Known to fail||4.8.4

--- Comment #1 from Sergey Belyashov Sergey.Belyashov at gmail dot com ---
answer about GAS:
https://lists.gnu.org/archive/html/bug-binutils/2014-12/msg00145.html


[Bug fortran/63205] [OOP] Wrongly rejects type = class (for identical declared type)

2014-12-25 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63205

--- Comment #9 from Paul Thomas pault at gcc dot gnu.org ---
Created attachment 34331
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34331action=edit
A yet more nearly final patch

This patch still has some memory leakage issues... I think.

There are also some peculiarities that need sorting out; most notably the chunk
added to build_class_array_ref does not work more generally as I thought that
it should. I would prefer to understand why and to implement it because it is
so much cleaner than messing with the gfc_expr's.

Anyway, it is getting there and I expect to complete it when I get home in the
New Year. Back to presents and turkey!

Happy holidays

Paul


[Bug tree-optimization/64406] New: [5 Regression] ICE: SIGSEGV in estimate_numbers_of_iterations_loop (tree-ssa-loop-niter.c:3453) with custom flags

2014-12-25 Thread zsojka at seznam dot cz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64406

Bug ID: 64406
   Summary: [5 Regression] ICE: SIGSEGV in
estimate_numbers_of_iterations_loop
(tree-ssa-loop-niter.c:3453) with custom flags
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: zsojka at seznam dot cz

Created attachment 34332
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34332action=edit
reduced testcase

Compiler output:
$ gcc -O -ftree-loop-distribute-patterns -fno-tree-loop-ivcanon
-fno-tree-loop-vectorize -ftree-vectorize testcase.c
==19414== Invalid read of size 4
==19414==at 0xDB5244: estimate_numbers_of_iterations_loop
(tree-ssa-loop-niter.c:3453)
==19414==by 0xDB5244: scev_probably_wraps_p(tree_node*, tree_node*,
gimple_statement_base*, loop*, bool) (tree-ssa-loop-niter.c:3869)
==19414==by 0x17262FF: convert_affine_scev(loop*, tree_node*, tree_node**,
tree_node**, gimple_statement_base*, bool) (tree-chrec.c:1244)
==19414==by 0x17269EA: chrec_convert_1(tree_node*, tree_node*,
gimple_statement_base*, bool) (tree-chrec.c:1357)
==19414==by 0xD2FAB1: interpret_rhs_expr(loop*, gimple_statement_base*,
tree_node*, tree_node*, tree_code, tree_node*) (tree-scalar-evolution.c:1794)
==19414==by 0xD2BB86: interpret_gimple_assign
(tree-scalar-evolution.c:1916)
==19414==by 0xD2BB86: analyze_scalar_evolution_1(loop*, tree_node*,
tree_node*) (tree-scalar-evolution.c:1998)
==19414==by 0xD2C477: analyze_scalar_evolution(loop*, tree_node*)
(tree-scalar-evolution.c:2053)
==19414==by 0xD3065A: analyze_scalar_evolution_in_loop(loop*, loop*,
tree_node*, bool*) (tree-scalar-evolution.c:2149)
==19414==by 0xD307BF: simple_iv(loop*, loop*, tree_node*, affine_iv*, bool)
(tree-scalar-evolution.c:3244)
==19414==by 0xDA0AB8: find_givs_in_stmt_scev (tree-ssa-loop-ivopts.c:1175)
==19414==by 0xDA0AB8: find_givs_in_stmt (tree-ssa-loop-ivopts.c:1199)
==19414==by 0xDA0AB8: find_givs_in_bb (tree-ssa-loop-ivopts.c:1213)
==19414==by 0xDA0AB8: find_givs (tree-ssa-loop-ivopts.c:1226)
==19414==by 0xDA0AB8: find_induction_variables(ivopts_data*)
(tree-ssa-loop-ivopts.c:1242)
==19414==by 0xDA4139: tree_ssa_iv_optimize_loop(ivopts_data*, loop*)
(tree-ssa-loop-ivopts.c:6953)
==19414==by 0xDA62AF: tree_ssa_iv_optimize() (tree-ssa-loop-ivopts.c:7012)
==19414==by 0xDBA750: (anonymous
namespace)::pass_iv_optimize::execute(function*) (tree-ssa-loop.c:471)
==19414==by 0xB5E82E: execute_one_pass(opt_pass*) (passes.c:2311)
==19414==by 0xB5ECA5: execute_pass_list_1(opt_pass*) [clone .constprop.73]
(passes.c:2363)
==19414==by 0xB5ECB7: execute_pass_list_1(opt_pass*) [clone .constprop.73]
(passes.c:2364)
==19414==by 0xB5ECB7: execute_pass_list_1(opt_pass*) [clone .constprop.73]
(passes.c:2364)
==19414==by 0xB5ECF8: execute_pass_list(function*, opt_pass*)
(passes.c:2374)
==19414==by 0x83381B: cgraph_node::expand() (cgraphunit.c:1798)
==19414==by 0x834FD8: expand_all_functions (cgraphunit.c:1934)
==19414==by 0x834FD8: symbol_table::compile() (cgraphunit.c:2284)
==19414==by 0x836A47: symbol_table::finalize_compilation_unit()
(cgraphunit.c:2361)
==19414==by 0x6D7AEA: c_write_global_declarations() (c-decl.c:10778)
==19414==by 0xC581F3: compile_file() (toplev.c:584)
==19414==by 0x6BA345: do_compile (toplev.c:2018)
==19414==by 0x6BA345: toplev::main(int, char**) (toplev.c:2115)
==19414==by 0x6BB148: main (main.c:38)
==19414==  Address 0xa4 is not stack'd, malloc'd or (recently) free'd
==19414== 
testcase.c: In function 'foo':
testcase.c:6:1: internal compiler error: Segmentation fault
 foo ()
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

Tested revisions:
r219067 - ICE
4_9 r219040 - OK


[Bug target/64407] New: ICE in simplify_const_unary_operation, at simplify-rtx.c:1730

2014-12-25 Thread yselkowi at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64407

Bug ID: 64407
   Summary: ICE in simplify_const_unary_operation, at
simplify-rtx.c:1730
   Product: gcc
   Version: 4.9.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: yselkowi at redhat dot com
  Host: x86_64-cygwin
Target: xstormy16-elf
 Build: x86_64-cygwin

While compiling newlib-2.2.0 with gcc-4.9.2 --target=xstormy16-elf:

xstormy16-elf-gcc
-B/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/xstormy16-elf/xstormy16-elf/newlib/
-isystem
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/xstormy16-elf/xstormy16-elf/newlib/targ-include
-isystem
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/include
-B/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/xstormy16-elf/xstormy16-elf/libgloss/xstormy16
-L/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/xstormy16-elf/xstormy16-elf/libgloss/libnosys
-L/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/libgloss/xstormy16
   -DPACKAGE_NAME=\newlib\ -DPACKAGE_TARNAME=\newlib\
-DPACKAGE_VERSION=\2.2.0\ -DPACKAGE_STRING=\newlib\ 2.2.0\
-DPACKAGE_BUGREPORT=\\ -DPACKAGE_URL=\\ -I.
-I/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libm/math
-I/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libm/math/../common
-DMALLOC_PROVIDED -DPREFER_SIZE_OVER_SPEED -fno-builtin  -g -ggdb -O2 -pipe
-Wimplicit-function-declaration -c -o lib_a-e_log.o `test -f 'e_log.c' || echo
'/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libm/math/'`e_log.c
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libm/math/e_log.c:
In function ‘__ieee754_log’:
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libm/math/e_log.c:144:1:
internal compiler error: in simplify_const_unary_operation, at
simplify-rtx.c:1730
 }
 ^

[Bug target/64407] ICE in simplify_const_unary_operation, at simplify-rtx.c:1730

2014-12-25 Thread yselkowi at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64407

--- Comment #1 from Yaakov Selkowitz yselkowi at redhat dot com ---
Created attachment 34333
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34333action=edit
preprocessed source


[Bug target/64408] New: fr30-elf ICE in extract_insn, at recog.c:2202

2014-12-25 Thread yselkowi at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64408

Bug ID: 64408
   Summary: fr30-elf ICE in extract_insn, at recog.c:2202
   Product: gcc
   Version: 4.9.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: yselkowi at redhat dot com
  Host: x86_64-cygwin
Target: fr30-elf
 Build: x86_64-cygwin

Created attachment 34334
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34334action=edit
preprocessed source

While compiling newlib-2.2.0 with gcc-4.9.2 --target=fr30-elf:

fr30-elf-gcc
-B/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/fr30-elf/fr30-elf/newlib/
-isystem
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/fr30-elf/fr30-elf/newlib/targ-include
-isystem
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/include
-B/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/fr30-elf/fr30-elf/libgloss/fr30
-L/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/build/fr30-elf/fr30-elf/libgloss/libnosys
-L/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/libgloss/fr30
   -DPACKAGE_NAME=\newlib\ -DPACKAGE_TARNAME=\newlib\
-DPACKAGE_VERSION=\2.2.0\ -DPACKAGE_STRING=\newlib\ 2.2.0\
-DPACKAGE_BUGREPORT=\\ -DPACKAGE_URL=\\ -I.
-I/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/stdlib
-fno-builtin  -g -Os -c -o lib_a-dtoa.o `test -f 'dtoa.c' || echo
'/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/stdlib/'`dtoa.c
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/stdlib/dtoa.c:
In function ‘_dtoa_r’:
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/stdlib/dtoa.c:862:1:
error: unrecognizable insn:
 }
 ^
(insn 211 210 212 2 (set (reg/v:DI 326 [ d ])
(subreg:DI (reg/v:DF 331 [ _d ]) 0))
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/stdlib/dtoa.c:236
-1
 (nil))
/usr/src/ports/cross-newlib/cross-newlib-2.2.0-1.x86_64/src/newlib-2.2.0/newlib/libc/stdlib/dtoa.c:862:1:
internal compiler error: in extract_insn, at recog.c:2202

[Bug target/64172] [4.9/5 Regression] Wrong code with GCC vector extensions on ARM when compiled without NEON

2014-12-25 Thread mikpelinux at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64172

Mikael Pettersson mikpelinux at gmail dot com changed:

   What|Removed |Added

 CC||mikpelinux at gmail dot com

--- Comment #11 from Mikael Pettersson mikpelinux at gmail dot com ---
Started with r204752 (+ r204771 follow-up fix).  That patch caused some
regressions, but most of them seem to have been latent target bugs.


[Bug fortran/61830] Memory leak with assignment to array of derived types with allocatable components

2014-12-25 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61830

--- Comment #3 from Dominique d'Humieres dominiq at lps dot ens.fr ---
Note that the tests give an ICE with 4.9.2 and trunk (5.0):

 end module foo_vector_field_mod
 1
internal compiler error: in gfc_conv_descriptor_data_get, at
fortran/trans-array.c:146


[Bug middle-end/64409] New: ICE building Mesa 10.4.0 for x32 ABI

2014-12-25 Thread steven at uplinklabs dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64409

Bug ID: 64409
   Summary: ICE building Mesa 10.4.0 for x32 ABI
   Product: gcc
   Version: 4.9.2
Status: UNCONFIRMED
  Severity: major
  Priority: P3
 Component: middle-end
  Assignee: unassigned at gcc dot gnu.org
  Reporter: steven at uplinklabs dot net

Created attachment 34335
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34335action=edit
Preprocessed source

Trying to build Mesa 10.4.0 for the X32 ABI on an x86_64 host, encountered an
ICE in the process. Preprocessed source attached.

Invocation was:

$ gcc -mx32 -DPACKAGE_NAME=\Mesa\ -DPACKAGE_TARNAME=\mesa\
-DPACKAGE_VERSION=\10.4.0\ -DPACKAGE_STRING=\Mesa 10.4.0\
-DPACKAGE_BUGREPORT=\https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\;
-DPACKAGE_URL=\\ -DPACKAGE=\mesa\ -DVERSION=\10.4.0\ -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
-DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1
-DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\.libs/\
-DHAVE___BUILTIN_BSWAP32=1 -DHAVE___BUILTIN_BSWAP64=1 -DHAVE___BUILTIN_CLZ=1
-DHAVE___BUILTIN_CLZLL=1 -DHAVE___BUILTIN_CTZ=1 -DHAVE___BUILTIN_EXPECT=1
-DHAVE___BUILTIN_FFS=1 -DHAVE___BUILTIN_FFSLL=1 -DHAVE___BUILTIN_POPCOUNT=1
-DHAVE___BUILTIN_POPCOUNTLL=1 -DHAVE___BUILTIN_UNREACHABLE=1
-DHAVE_FUNC_ATTRIBUTE_FLATTEN=1 -DHAVE_FUNC_ATTRIBUTE_FORMAT=1
-DHAVE_FUNC_ATTRIBUTE_MALLOC=1 -DHAVE_FUNC_ATTRIBUTE_PACKED=1 -DHAVE_DLADDR=1
-DHAVE_CLOCK_GETTIME=1 -DHAVE_PTHREAD=1 -I. -DNINE_TARGET
-DGALLIUM_STATIC_TARGETS=1 -DGALLIUM_NOUVEAU -DGALLIUM_R300 -DGALLIUM_R600
-DGALLIUM_RADEONSI -DGALLIUM_SOFTPIPE -DGALLIUM_LLVMPIPE
-I../../../../include/D3D9 -I../../../../src/loader -I../../../../src/mapi/
-I../../../../src/mesa/ -I../../../../src/mesa/drivers/dri/common/
-I../../../../src/mesa/drivers/dri/common/ -I../../../../src/gallium/winsys
-I../../../../src/gallium/state_trackers/nine -I../../../../include
-I../../../../src/loader -I../../../../src/gallium/include
-I../../../../src/gallium/auxiliary -I../../../../src/gallium/drivers
-I../../../../src/gallium/winsys -DUSE_EXTERNAL_DXTN_LIB=1 -D_GNU_SOURCE
-DUSE_SSE41 -DTEXTURE_FLOAT_ENABLED -DHAVE_XLOCALE_H -DHAVE_STRTOF
-DHAVE_DLOPEN -DHAVE_POSIX_MEMALIGN -DHAVE_LIBDRM -DGLX_USE_DRM -DHAVE_LIBUDEV
-DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DHAVE_ALIAS
-DHAVE_DRI3 -DHAVE_MINCORE -DHAVE_LLVM=0x0305 -DLLVM_VERSION_PATCH=0 -pthread
-I/usr/include/libdrm -fvisibility=hidden -fvisibility=hidden -g -O2 -Wall
-std=c99 -Werror=implicit-function-declaration -Werror=missing-prototypes
-fno-strict-aliasing -fno-builtin-memcmp -MT d3dadapter9_la-getproc.lo -MD -MP
-MF .deps/d3dadapter9_la-getproc.Tpo -c getproc.c  -fPIC -DPIC -o
.libs/d3dadapter9_la-getproc.o
getproc.c: In function ‘D3DAdapter9GetProc’:
getproc.c:38:1: internal compiler error: in emit_move_insn, at expr.c:3609
 D3DAdapter9GetProc( const char *name )
 ^
0x7014c2 emit_move_insn(rtx_def*, rtx_def*)
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/expr.c:3608
0x647d64 expand_value_return
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/cfgexpand.c:3055
0x64e3b6 expand_return
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/cfgexpand.c:3127
0x64e3b6 expand_gimple_stmt_1
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/cfgexpand.c:3200
0x64e3b6 expand_gimple_stmt
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/cfgexpand.c:3322
0x64eefb expand_gimple_basic_block
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/cfgexpand.c:5162
0x6511b6 gimple_expand_cfg
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/cfgexpand.c:5741
0x6511b6 execute
/build/gcc-multilib/src/gcc-4.9-20141210/gcc/cfgexpand.c:5961
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See https://bugs.archlinux.org/ for instructions.


Using 20141210 snapshot version of GCC:

gcc version 4.9.2 20141210 (prerelease) (GCC)

[Bug c++/64410] New: gcc 25% slower than clang 3.5 for adding complex numbers

2014-12-25 Thread conradsand.arma at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64410

Bug ID: 64410
   Summary: gcc 25% slower than clang 3.5 for adding complex
numbers
   Product: gcc
   Version: 4.9.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: conradsand.arma at gmail dot com

Created attachment 34336
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34336action=edit
cxaddspeed.cpp

gcc 4.9.2 has worse performance than clang 3.5 when dealing with complex
numbers.

Attached is a simple program which adds two vectors with complex numbers. 
Compiled with -O3 on x86-64 (i7), Fedora 21, gcc 4.9.2 and clang 3.5.0.

$ time ./cxaddspeed_gcc 5000 100
5.364u 0.002s 0:05.36 100.0%

$ time ./cxaddspeed_clang 5000 100
4.417u 0.001s 0:04.41 100.0%

ie. gcc is about 25% slower.


inner loop produced by gcc:
.L52:
movsd(%r15,%rax), %xmm1
movsd8(%r15,%rax), %xmm0
addsd0(%rbp,%rax), %xmm1
addsd8(%rbp,%rax), %xmm0
movsd%xmm1, (%rbx,%rax)
movsd%xmm0, 8(%rbx,%rax)
addq$16, %rax
cmpq%rsi, %rax
jne.L52

inner loop produced by clang:
.LBB0_145:
movupd-16(%rbx), %xmm0
movupd-16(%rax), %xmm1
addpd%xmm0, %xmm1
movupd%xmm1, -16(%rdi)
movupd(%rbx), %xmm0
movupd(%rax), %xmm1
addpd%xmm0, %xmm1
movupd%xmm1, (%rdi)
addq$2, %rbp
addq$32, %rbx
addq$32, %rax
addq$32, %rdi
addl$-2, %ecx
jne.LBB0_145


[Bug middle-end/64409] ICE building Mesa 10.4.0 for x32 ABI

2014-12-25 Thread steven at uplinklabs dot net
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64409

--- Comment #1 from Steven Noonan steven at uplinklabs dot net ---
Just built and tried using the 20141224 snapshot. Same issue:

getproc.c: In function ‘D3DAdapter9GetProc’:
getproc.c:38:1: internal compiler error: in emit_move_insn, at expr.c:3609
 D3DAdapter9GetProc( const char *name )
 ^
0x7014e2 emit_move_insn(rtx_def*, rtx_def*)
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/expr.c:3608
0x647d84 expand_value_return
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/cfgexpand.c:3055
0x64e3d6 expand_return
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/cfgexpand.c:3127
0x64e3d6 expand_gimple_stmt_1
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/cfgexpand.c:3200
0x64e3d6 expand_gimple_stmt
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/cfgexpand.c:3322
0x64ef1b expand_gimple_basic_block
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/cfgexpand.c:5162
0x6511d6 gimple_expand_cfg
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/cfgexpand.c:5741
0x6511d6 execute
/build/gcc-multilib/src/gcc-4.9-20141224/gcc/cfgexpand.c:5961
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See https://bugs.archlinux.org/ for instructions.