- 13 Jan, 2015 40 commits
-
-
* libffi/configure.host: Remove extra brackets for sh. From-SVN: r219565
Kaz Kojima committed -
gcc/jit/ChangeLog: * docs/cp/topics/contexts.rst (Debugging): Add gccjit::context::dump_reproducer_to_file. * docs/internals/index.rst (Design notes): New section, discussing input validation and gcc_jit_context_dump_reproducer_to_file. * docs/topics/contexts.rst (Debugging): Add gcc_jit_context_dump_reproducer_to_file. * docs/_build/texinfo/libgccjit.texi: Regenerate. * jit-common.h (gcc::jit::dump::get_context): New accessor. * jit-recording.c: Include "hash-map.h". Within namespace ::gcc::jit... (dump::write): Flush each line. (dump::make_location): Pass false for new param "created_by_user". (class allocator): New class. (allocator::~allocator): New function. (allocator::xstrdup_printf): New function. (allocator::xstrdup_printf_va): New function. (class reproducer): New subclass of dump. (reproducer::reproducer): New function. (reproducer::write_params): New function. (reproducer::write_args): New function. (reproducer::make_identifier): New function. (reproducer::make_tmp_identifier): New function. (reproducer::get_identifier): New pair of functions. (reproducer::get_identifier_as_rvalue): New function. (reproducer::get_identifier_as_lvalue): New function. (reproducer::get_identifier_as_type): New function. (reproducer::xstrdup_printf): New function. (recording::context::context): Initialize m_toplevel_ctxt. (recording::context::new_location): Add param created_by_user. (str_option_reproducer_strings): New table of strings. (int_option_reproducer_strings): Likewise. (bool_option_reproducer_strings): Likewise. (get_type_enum_strings): Likewise. (names_of_function_kinds): Likewise. (global_kind_reproducer_strings): Likewise. (unary_op_reproducer_strings): Likewise. (binary_op_reproducer_strings): Likewise. (comparison_reproducer_strings): Likewise. Within namespace ::gcc::jit::recording::... (context::dump_reproducer_to_file): New function. (string::write_reproducer): Likewise. (location::write_reproducer): Likewise. (type::access_as_type): Likewise. (memento_of_get_type::write_reproducer): Likewise. (memento_of_get_pointer::write_reproducer): Likewise. (memento_of_get_const::write_reproducer): Likewise. (memento_of_get_volatile::write_reproducer): Likewise. (array_type::write_reproducer): Likewise. (function_type::write_reproducer): Likewise. (function_type::write_deferred_reproducer): Likewise. (field::write_reproducer): Likewise. (struct_::access_as_type): Likewise. (struct_::write_reproducer): Likewise. (union_::write_reproducer): Likewise. (fields::write_reproducer): Likewise. (rvalue::access_as_rvalue): Likewise. (lvalue::access_as_rvalue): Likewise. (lvalue::access_as_lvalue): Likewise. (param::access_as_rvalue): Likewise. (param::access_as_lvalue): Likewise. (param::write_reproducer): Likewise. (function::write_reproducer): Likewise. (block::write_reproducer): Likewise. (global::write_reproducer): Likewise. (memento_of_new_rvalue_from_const <int>::write_reproducer): Likewise. (memento_of_new_rvalue_from_const <long>::write_reproducer): Likewise. (memento_of_new_rvalue_from_const <double>::write_reproducer): Likewise. (memento_of_new_rvalue_from_const <void *>::write_reproducer): Likewise. (memento_of_new_string_literal::write_reproducer): Likewise. (unary_op::write_reproducer): Likewise. (binary_op::write_reproducer): Likewise. (comparison::write_reproducer): Likewise. (cast::write_reproducer): Likewise. (call::write_reproducer): Likewise. (call_through_ptr::write_reproducer): Likewise. (array_access::write_reproducer): Likewise. (access_field_of_lvalue::write_reproducer): Likewise. (access_field_rvalue::write_reproducer): Likewise. (dereference_field_rvalue::write_reproducer): Likewise. (dereference_rvalue::write_reproducer): Likewise. (get_address_of_lvalue::write_reproducer): Likewise. (local::write_reproducer): Likewise. (eval::write_reproducer): Likewise. (assignment::write_reproducer): Likewise. (assignment_op::write_reproducer): Likewise. (comment::write_reproducer): Likewise. (conditional::write_reproducer): Likewise. (jump::write_reproducer): Likewise. (return_::write_reproducer): Likewise. * jit-recording.h (gcc::jit::reproducer): New forward declararion. Within namespace ::gcc::jit::recording::... (context::new_location): Add "created_by_user" param. (context::dump_reproducer_to_file): New method. (context::m_toplevel_ctxt): New field. (memento::write_reproducer): New pure virtual function. (memento::dyn_cast_location): New virtual function. (string::write_reproducer): (location::location): Add "created_by_user" param. (location::dyn_cast_location): New function. (location::created_by_user): New accessor. (location::write_reproducer): New function. (location::m_created_by_user): New field. (type::access_as_type): New virtual function. (location::write_reproducer): Likewise. (type::access_as_type): Likewise. (memento_of_get_type::write_reproducer): Likewise. (memento_of_get_pointer::write_reproducer): Likewise. (memento_of_get_const::write_reproducer): Likewise. (memento_of_get_volatile::write_reproducer): Likewise. (array_type::write_reproducer): Likewise. (function_type::write_reproducer): Likewise. (function_type::write_deferred_reproducer): Likewise. (field::write_reproducer): Likewise. (struct_::access_as_type): Likewise. (struct_::write_reproducer): Likewise. (union_::write_reproducer): Likewise. (union_::m_fields): Remove stray unused field. (fields::length): New accessor. (fields::get_field): New accessor. (fields::write_reproducer): New function. (rvalue::access_as_rvalue): Likewise. (lvalue::access_as_rvalue): Likewise. (lvalue::access_as_lvalue): Likewise. (param::access_as_rvalue): Likewise. (param::access_as_lvalue): Likewise. (param::write_reproducer): Likewise. (function::write_reproducer): Likewise. (block::write_reproducer): Likewise. (global::write_reproducer): Likewise. (memento_of_new_rvalue_from_const <HOST_TYPE>::write_reproducer): Likewise. (memento_of_new_string_literal::write_reproducer): Likewise. (unary_op::write_reproducer): Likewise. (binary_op::write_reproducer): Likewise. (comparison::write_reproducer): Likewise. (cast::write_reproducer): Likewise. (call::write_reproducer): Likewise. (call_through_ptr::write_reproducer): Likewise. (array_access::write_reproducer): Likewise. (access_field_of_lvalue::write_reproducer): Likewise. (access_field_rvalue::write_reproducer): Likewise. (dereference_field_rvalue::write_reproducer): Likewise. (dereference_rvalue::write_reproducer): Likewise. (get_address_of_lvalue::write_reproducer): Likewise. (local::write_reproducer): Likewise. (eval::write_reproducer): Likewise. (assignment::write_reproducer): Likewise. (assignment_op::write_reproducer): Likewise. (comment::write_reproducer): Likewise. (conditional::write_reproducer): Likewise. (jump::write_reproducer): Likewise. (return_::write_reproducer): Likewise. * libgccjit++.h (gccjit::context::dump_reproducer_to_file): New. * libgccjit.c (gcc_jit_context_new_location): Pass "true" as param "created_by_user". (gcc_jit_context_dump_reproducer_to_file): New API entrypoint. * libgccjit.h (gcc_jit_context_dump_reproducer_to_file): New API entrypoint. * libgccjit.map (gcc_jit_context_dump_reproducer_to_file): New API entrypoint. gcc/testsuite/ChangeLog: * jit.dg/harness.h (set_up_logging): Move string concatenation into... (concat_strings): New function. (dump_reproducer): New function. (test_jit): Call dump_reproducer. * jit.dg/jit.exp (is_testcase_meant_to_generate_a_reproducer): New function. (jit-dg-test): Delete any generated reproducer from previous runs. Verify that a generated reproducer was created, and verify that it compiles. * jit.dg/test-nested-contexts.c (main): Call gcc_jit_context_dump_reproducer_to_file. From-SVN: r219564
David Malcolm committed -
* gcc.dg/aru-2.c: Add dg-require-profiling. From-SVN: r219561
H.J. Lu committed -
* lib/target-supports.exp (check_profiling_available): Check if -pg links. From-SVN: r219560
H.J. Lu committed -
PR c++/64356 PR libstdc++/58777 * constexpr.c (cxx_eval_binary_expression): Don't VERIFY_CONSTANT pointer expressions. (cxx_eval_increment_expression): Likewise. From-SVN: r219559
Jason Merrill committed -
PR c++/64514 * pt.c (coerce_template_parameter_pack): Return NULL for a zero-length fixed parameter pack with a pack expansion arg. From-SVN: r219558
Jason Merrill committed -
PR c++/64520 * pt.c (unify): Don't try to deduce to std::initializer_list<T...>. From-SVN: r219557
Jason Merrill committed -
PR ipa/64565 * g++.dg/torture/pr64565.C: New testcase. * ipa-inline.c (inline_small_functions): Update callee keys after resolving speculation (inline_small_functions): Always check monotonicity of the queue. From-SVN: r219556
Jan Hubicka committed -
re PR middle-end/64391 (ICE: SIGSEGV in get_attrs_for (trans-mem.c:179) with -fgnu-tm and #pragma GCC ivdep) PR middle-end/64391 * trans-mem.c (get_attrs_for): Return NULL_TREE if X is NULL_TREE. * gcc.dg/tm/pr64391.c: New test. From-SVN: r219555
Marek Polacek committed -
target nonpic is always false for -fPIE since it defines both __PIC__ and __PIE__. This patch changes gcc.dg/tree-ssa/ssa-store-ccp-3.c to make it to pass with -fPIE by excluding PIE when nonpic is true. * gcc.dg/tree-ssa/ssa-store-ccp-3.c: Exclude pie when nonpic is true. From-SVN: r219554
H.J. Lu committed -
* gcc.target/i386/pie.c: New test. * lib/target-supports.exp (check_effective_target_pie): New. From-SVN: r219553
H.J. Lu committed -
PR rtl-optimization/64286 * ree.c (combine_reaching_defs): Move part of comment earlier, remove !SCALAR_INT_MODE_P check. (add_removable_extension): Don't add vector mode extensions if all uses of the source register aren't the same vector extensions. * gcc.target/i386/avx2-pr64286.c: New test. From-SVN: r219550
Jakub Jelinek committed -
2015-01-13 Paolo Carlini <paolo.carlini@oracle.com> PR c++/57626 * g++.dg/cpp0x/vt-57626.C: New. From-SVN: r219546
Paolo Carlini committed -
* sanitizer_common/sanitizer_deadlock_detector.h: Cherry pick upstream r224518 and r224519. * tsan/tsan_rtl_thread.cc: Cherry pick upstream r224702 and r224834. From-SVN: r219545
Jakub Jelinek committed -
gcc/ * config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2. (CTZ_DEFINED_VALUE_AT_ZERO): Ditto. From-SVN: r219544
Renlin Li committed -
re PR fortran/64528 (ICE: in process_constraint, at tree-ssa-structalias.c:3002 with -O -fno-tree-ccp -fno-tree-dce) PR fortran/64528 * trans-decl.c (create_function_arglist): Don't set TREE_READONLY on dummy args with VALUE attribute. * gfortran.dg/pr64528.f90: New test. From-SVN: r219543
Jakub Jelinek committed -
* ipa-icf.c (sem_function::equals_private): Call new functions cl_target_option_print_diff and cl_optimization_print_diff. * optc-save-gen.awk (cl_target_option_print_diff): New function. (cl_optimization_print_diff): Likewise. * opth-gen.awk: Likewise. M gcc/ChangeLog M gcc/ipa-icf.c M gcc/optc-save-gen.awk M gcc/opth-gen.awk From-SVN: r219542
Martin Liska committed -
PR bootstrap/64575 * configure.host (TARGET): Set to X86_64 if __x86_64__ is defined. From-SVN: r219539
H.J. Lu committed -
PR libffi/64572 * src/x86/ffitarget.h (FFI_GO_CLOSURES): Do not define for darwin. (FFI_TARGET_HAS_COMPLEX_TYPE): Likewise. From-SVN: r219538
Richard Henderson committed -
PR libstdc++/64571 * config/abi/pre/gnu.ver: Export fstream functions using new string. From-SVN: r219537
Jonathan Wakely committed -
* config/aarch64/aarch64.md (subsi3, *subsi3_uxtw, subdi3) (*sub_<optab><ALLX:mode>_<GPI:mode>, *sub_<optab><SHORT:mode>_si_uxtw) (*sub_<optab><ALLX:mode>_shft_<GPI:mode>) (*sub_<optab><SHORT:mode>_shft_si_uxtw, *sub_<optab><mode>_multp2) (*sub_<optab>si_multp2_uxtw, *sub_uxt<mode>_multp2) (*sub_uxtsi_multp2_uxtw): Add stack pointer sources. gcc/testsuite/ * gcc.target/aarch64/subsp.c: New test. From-SVN: r219533
Richard Sandiford committed -
* config/aarch64/aarch64.c (fusion_load_store): Check dest mode instead of src mode. 2015-01-13 Andrew Pinski <apinski@cavium.com> * gcc.target/aarch64/store-pair-1.c: New testcase. From-SVN: r219532
Andrew Pinski committed -
2015-01-13 Richard Biener <rguenther@suse.de> PR lto/64373 * lto-streamer-out.c (tree_is_indexable): Guard for NULL DECL_CONTEXT. * gcc.dg/lto/pr64373_0.c: New testcase. From-SVN: r219531
Richard Biener committed -
2015-01-13 Andrew Pinski <apinski@cavium.com> * config/aarch64/aarch64.c (aarch64_operands_ok_for_ldpstp): Reject volatile mems. (aarch64_operands_adjust_ok_for_ldpstp): Likewise. 2015-01-13 Andrew Pinski <apinski@cavium.com> * gcc.target/aarch64/volatileloadpair-1.c: New testcase. * gcc.target/aarch64/volatileloadpair-2.c: New testcase. From-SVN: r219530
Andrew Pinski committed -
PR middle-end/63974 * cfgexpand.c (expand_computed_goto): Don't call convert_memory_address here. From-SVN: r219529
Jakub Jelinek committed -
re PR tree-optimization/64406 (ICE: SIGSEGV in estimate_numbers_of_iterations_loop (tree-ssa-loop-niter.c:3453) with custom flags) 2015-01-13 Richard Biener <rguenther@suse.de> PR tree-optimization/64406 * tree-loop-distibution.c (pass_loop_distribution::execute): Reset the SCEV hashtable if we distributed anything. * gcc.dg/pr64406.c: New testcase. From-SVN: r219528
Richard Biener committed -
re PR tree-optimization/64404 (ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1) 2015-01-13 Richard Biener <rguenther@suse.de> PR tree-optimization/64404 * tree-vect-stmts.c (vectorizable_load): Reject conflicting SLP types for CSEd loads. * gcc.dg/vect/pr64404.c: New testcase. From-SVN: r219527
Richard Biener committed -
From-SVN: r219526
Iain Sandoe committed -
2015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ PR tree-optimization/64436 * tree-ssa-math-opts.c (find_bswap_or_nop_1): Move code performing the merge of two symbolic numbers for a bitwise OR to ... (perform_symbolic_merge): This. Also fix computation of the range and end of the symbolic number corresponding to the result of a bitwise OR. From-SVN: r219525
Thomas Preud'homme committed -
From-SVN: r219523
Marek Polacek committed -
2014-01-13 Richard Biener <rguenther@suse.de> PR tree-optimization/64568 * tree-ssa-forwprop.c (pass_forwprop::execute): Properly release defs of removed stmts, avoid splitting TARGET_MEM_REFs. * g++.dg/torture/pr64568.C: New testcase. From-SVN: r219520
Richard Biener committed -
PR libgcj/64219 * Makefile.am (install-data-local): Use just the major version from GCJVERSION instead of major.minor. * Makefile.in: Regenerated. From-SVN: r219519
Jakub Jelinek committed -
gcc/ * config/nds32/nds32.c (nds32_legitimate_address_p): Consider TARGET_CMODEL_LARGE and TARGET_CMODEL_MEDIUM cases. From-SVN: r219515
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.h (NDS32_SYMBOL_FLAG_RODATA): Define our own target-specific symbol_ref flag. (NDS32_SYMBOL_REF_RODATA_P): Define it to check if the symbol_ref resides in rodata section. * config/nds32/nds32.c (TARGET_ENCODE_SECTION_INFO): Define. (nds32_encode_section_info): New function. From-SVN: r219514
Chung-Ju Wu committed -
* MAINTAINERS: Remove Stan Shebs as he has been inactive for a very long time. From-SVN: r219513
Jeff Law committed -
gcc/ * config/nds32/nds32.md (call): Use pseudo instruction bal which clobbers TA_REGNUM if large code model is specified. (call_register): Likewise. (call_immediate): Likewise. (call_value): Likewise. (call_value_register): Likewise. (call_value_immediate): Likewise. From-SVN: r219512
Chung-Ju Wu committed -
gcc/ * config/nds32/nds32.h (TARGET_CMODEL_SMALL): New macro. (TARGET_CMODEL_MEDIUM): New macro. (TARGET_CMODEL_LARGE): New macro. * config/nds32/nds32.c (nds32_asm_file_start): Display corresponding code model setting in assembly code. From-SVN: r219511
Chung-Ju Wu committed -
gcc/ * common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS): Remove MASK_GP_DIRECT flag. * config/nds32/nds32.h (MULTILIB_DEFAULTS): Have -mcmodel=medium as one of the multilib default options. * config/nds32/nds32.opt (mgp-direct): Remove. * config/nds32/t-mlibs (MULTILIB_OPTIONS): Use -mcmodel instead of -mgp-direct. We also remove unnecessary -mlittle-endian/-mbig-endian. From-SVN: r219510
Chung-Ju Wu committed -
* config/nds32/nds32.opt (mcmodel): Add new option. * config/nds32/nds32-opts.h (nds32_cmodel_type): Add new enum type to describe code model. From-SVN: r219509
Chung-Ju Wu committed -
gcc/ PR target/64479 * rtlanal.c (set_reg_p): Handle SEQUENCE constructs. From-SVN: r219506
Oleg Endo committed
-