[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
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
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
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
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
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)
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
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
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
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
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
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
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
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
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
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.