- 26 Oct, 2016 34 commits
-
-
* config/microblaze/microblaze.c (tls_mentioned_p): Avoid fallthru. From-SVN: r241587
Jeff Law committed -
gcc/ChangeLog: * print-rtl-function.c (print_rtx_function): Rewrite in terms of class rtx_writer. * print-rtl.c (outfile): Delete global. (sawclose): Likewise. (indent): Likewise. (in_call_function_usage): Likewise. (flag_compact): Likewise. (flag_simple): Likewise. (rtx_writer::rtx_writer): New ctor. (print_rtx_operand_code_0): Convert to... (rtx_writer::print_rtx_operand_code_0): ...this. (print_rtx_operand_code_e): Convert to... (rtx_writer::print_rtx_operand_code_e): ...this. (print_rtx_operand_codes_E_and_V): Convert to... (rtx_writer::print_rtx_operand_codes_E_and_V): ...this. (print_rtx_operand_code_i): Convert to... (rtx_writer::print_rtx_operand_code_i): ...this. (print_rtx_operand_code_r): Convert to... (rtx_writer::print_rtx_operand_code_r): ...this. (print_rtx_operand_code_u): Convert to... (rtx_writer::print_rtx_operand_code_u): ...this. (print_rtx_operand): Convert to... (rtx_writer::print_rtx_operand): ...this. (print_rtx): Convert to... (rtx_writer::print_rtx): ...this. (print_inline_rtx): Rewrite in terms of class rtx_writer. (debug_rtx): Likewise. (print_rtl): Convert to... (rtx_writer::print_rtl): ...this. (print_rtl): Reimplement in terms of class rtx_writer. (print_rtl_single): Rewrite in terms of class rtx_writer. (print_rtl_single_with_indent): Convert to.. (rtx_writer::print_rtl_single_with_indent): ...this. (print_simple_rtl): Rewrite in terms of class rtx_writer. * print-rtl.h (flag_compact): Delete decl. (class rtx_writer): New class. * rtl-tests.c (selftest::assert_rtl_dump_eq): Rewrite in terms of class rtx_writer. From-SVN: r241586
David Malcolm committed -
* config/arc/arc.c (acr_print_operand): Adjust fallthru comment. (check_if_valid_sleep_operand): Add missing fallthru comment. (arc_register_move_cost): Increase buffer size. * config/arc/arc.md (cbranch4si_scratch): Add missing fallthru comment. * config/arc/predicates.md (move_str_operand): Avoid fallthru. From-SVN: r241585
Jeff Law committed -
* config/cr16/cr16.c (cr16_print_operand): Add missing fallthru comment. Add gcc_unreachable for path that should never happen. From-SVN: r241584
Jeff Law committed -
* testsuite/experimental/filesystem/iterators/pop.cc: Remove unreliable dependency on directory order. From-SVN: r241583
Jonathan Wakely committed -
* config/epiphany/epiphany.c (epiphany_print_operand): Adjust fallthru comment. From-SVN: r241582
Jeff Law committed -
PR fortran/77973 * gimplify.c (gimplify_adjust_omp_clauses_1): For all added map clauses with OMP_CLAUSE_SIZE being a decl, call omp_notice_variable on outer context if any. * gfortran.dg/gomp/pr77973.f90: New test. Co-Authored-By: Martin Liska <mliska@suse.cz> From-SVN: r241581
Jakub Jelinek committed -
gen-pass-instances.awk (adjust_linenos): INcrement pass_lines[p] by increment rather than double it. * gen-pass-instances.awk (adjust_linenos): INcrement pass_lines[p] by increment rather than double it. (insert_remove_pass): Strip leading whitespace from args[3]. Don't emit a space before args[4]. (END): Don't emit a space before with_arg. From-SVN: r241580
Jakub Jelinek committed -
From-SVN: r241579
Jeff Law committed -
2016-10-26 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/sync.md (atomic_compare_and_swap<mode>_1): Add new ARMv8-M Baseline only alternatives to (i) hold store atomic success value in a return register rather than a scratch register, (ii) use a low register for it and to (iii) ensure the cbranchsi insn generated by the split respect the constraints of Thumb-1 cbranchsi4_insn and cbranchsi4_scratch. * config/arm/thumb1.md (cbranchsi4_insn): Add comment to indicate constraints must match those in atomic_compare_and_swap. (cbranchsi4_scratch): Likewise. From-SVN: r241578
Thomas Preud'homme committed -
2016-10-26 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/arm.c (arm_expand_compare_and_swap): Add new bdst local variable. Add the new parameter to the insn generator. Set that parameter to be CC flag for 32-bit targets, bval otherwise. Set the return value from the negation of that parameter for Thumb-1, keeping the logic unchanged otherwise except for using bdst as the destination register of the compare_and_swap insn. (arm_split_compare_and_swap): Add explanation about how is the value returned to the function comment. Rename scratch variable to neg_bval. Adapt initialization of variables holding operands to the new operand numbers. Use return register to hold result of store exclusive for Thumb-1, scratch register otherwise. Construct the appropriate cbranch for Thumb-1 targets, keeping the logic unchanged for 32-bit targets. Guard Z flag setting to restrict to 32bit targets. Use gen_cbranchsi4 rather than hand-written conditional branch to loop for strongly ordered compare_and_swap. * config/arm/predicates.md (cc_register_operand): New predicate. * config/arm/sync.md (atomic_compare_and_swap<mode>_1): Use a match_operand with the new predicate to accept either the CC flag or a destination register for the boolean return value, restricting it to CC flag only via constraint. Adapt operand numbers accordingly. From-SVN: r241577
Thomas Preud'homme committed -
* config/frv/frv.c (comparison_string): Do not fall through after an error. From-SVN: r241576
Jeff Law committed -
* config/iq2000/iq2000.c (iq2000_function_arg): Adjust fallthru comment. (expand_one_builtin): Add missing break. From-SVN: r241573
Jeff Law committed -
* config/m32c/m32c.c (encode_pattern_1): Add fallthru comment. (m32c_legitimate_address_p): Likewise. From-SVN: r241572
Jeff Law committed -
From-SVN: r241571
Jeff Law committed -
From-SVN: r241569
Jeff Law committed -
* config/microblaze/microblaze.c (microblaze_function_arg): Adjust fallthru comment. From-SVN: r241568
Jeff Law committed -
* config/msp430/msp430.c (msp430_legitimate_address_p): Adjust fallthru comment. From-SVN: r241567
Jeff Law committed -
From-SVN: r241566
Jeff Law committed -
* config/rl78/rl78.c (rl78_calculate_death_notes): Add fallthru comment. (rl78_asm_ctor_dtor): Increase buffer size. From-SVN: r241565
Jeff Law committed -
* config/stormy16/stormy16.c (xstormy16_asm_output_destrutor): Increase buffer size. (xstormy16_asm_output_constructor): Likewise. From-SVN: r241564
Jeff Law committed -
2016-10-26 Edward Smith-Rowland <3dw4rd@verizon.net> Implement uniform_inside_sphere_distribution extension. * include/ext/random: Implement uniform_inside_sphere_distribution. * include/ext/random.tcc: Ditto. * testsuite/ext/random/uniform_inside_sphere_distribution/ cons/default.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ cons/parms.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/equal.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/generate.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/inequal.cc: New. * testsuite/ext/random/uniform_inside_sphere_distribution/ operators/serialize.cc: New. From-SVN: r241562
Edward Smith-Rowland committed -
* config/pa/pa.c (pa_asm_output_mi_thunk): Increase buffer size. From-SVN: r241561
Jeff Law committed -
* config/h8300/h8300.c (h8300_print_operand): Adjust FALLTHRU comment to silence warning. From-SVN: r241560
Jeff Law committed -
* include/experimental/bits/fs_dir.h (recursive_directory_iterator): Overload pop (LWG 2706). * src/filesystem/dir.cc (recursive_directory_iterator::pop): Define new overload. * testsuite/experimental/filesystem/iterators/pop.cc: New test. From-SVN: r241559
Jonathan Wakely committed -
* config/spu/spu.c (spu_sched_reorder): Add missing fallthru comment. (spu_legitimate_address_p): Fix logic error and add missing fallthru comment. From-SVN: r241557
Jeff Law committed -
2016-10-26 Paul Thomas <pault@gcc.gnu.org> PR fortran/78108 * resolve.c (resolve_typebound_intrinsic_op): For submodules suppress the error and return if the same procedure symbol is added more than once to the interface. 2016-10-26 Paul Thomas <pault@gcc.gnu.org> PR fortran/78108 * gfortran.dg/submodule_18.f08: New test. * gfortran.dg/submodule_19.f08: New test. From-SVN: r241555
Paul Thomas committed -
* src/filesystem/dir.cc (recursive_directory_iterator::increment): Reset state on error. * testsuite/experimental/filesystem/iterators/ recursive_directory_iterator.cc: Check state after increment error. From-SVN: r241552
Jonathan Wakely committed -
PR tree-optimization/78060 PR tree-optimization/78061 PR tree-optimization/78088 * tree-ssa-loop-split.c (easy_exit_values): New function. (tree_ssa_split_loops): Use it. (compute_new_first_bound): Change order of operations, fix invalid use of types. testsuite/ * g++.dg/pr78060.C: New test. * gfortran.dg/pr78061.f: New test. * g++.dg/pr78088.C: New test. From-SVN: r241551
Michael Matz committed -
gcc/fortran/ * gfortran.texi: Document. * frontend-passes.c (gfc_code_walker): Add SHARE and CARRIAGECONTROL. * io.c (gfc_free_open, gfc_resolve_open, gfc_match_open): Ditto. * gfortran.h (gfc_open): Add SHARE, CARRIAGECONTROL, and READONLY. * io.c (io_tag, match_open_element): Ditto. * ioparm.def: Ditto. * trans-io.c (gfc_trans_open): Ditto. * io.c (match_dec_etag, match_dec_ftag): New functions. libgfortran/io/ * libgfortran.h (IOPARM_OPEN_HAS_READONLY, IOPARM_OPEN_HAS_SHARE, IOPARM_OPEN_HAS_CC): New for READONLY, SHARE, and CARRIAGECONTROL. * close.c (st_close): Support READONLY. * io.h (st_parameter_open, unit_flags): Support SHARE, CARRIAGECONTROL, and READONLY. * open.c (st_open): Ditto. * transfer.c (data_transfer_init): Ditto. * io.h (st_parameter_dt): New member 'cc' for CARRIAGECONTROL. * write.c (write_check_cc, write_cc): New functions for CARRIAGECONTROL. * transfer.c (next_record_cc): Ditto. * file_pos.c (st_endfile): Support SHARE and CARRIAGECONTROL. * io.h (st_parameter_inquire): Ditto. * open.c (edit_modes, new_unit): Ditto. * inquire.c (inquire_via_unit, inquire_via_filename): Ditto. * io.h (unit_share, unit_cc, cc_fortran, IOPARM_INQUIRE_HAS_SHARE, IOPARM_INQUIRE_HAS_CC): New for SHARE and CARRIAGECONTROL. * open.c (share_opt, cc_opt): Ditto. * read.c (read_x): Support CARRIAGECONTROL. * transfer.c (read_sf, next_record_r, next_record_w): Ditto. * write.c (list_formatted_write_scalar, write_a): Ditto. * unix.h (close_share): New prototype. * unix.c (open_share, close_share): New functions to handle SHARE. * unix.c (open_external): Handle READONLY. Call open_share. * close.c (st_close): Call close_share. gcc/testsuite/ * dec_io_1.f90: New test. * dec_io_2.f90: New test. * dec_io_3.f90: New test. * dec_io_4.f90: New test. * dec_io_5.f90: New test. * dec_io_6.f90: New test. From-SVN: r241550
Fritz Reese committed -
PR libstdc++/78111 * src/filesystem/ops.cc (canonical): Set error for non-existent path. From-SVN: r241549
Jonathan Wakely committed -
2016-10-26 Uros Bizjak <ubizjak@gmail.com> * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Include <limits.h> for PATH_MAX in realpath test. * configure: Regenerate. From-SVN: r241548
Uros Bizjak committed -
gen-pass-instances.awk is sensitive to the order in which passes are added; passes that appear later have to be added first. PR target/71676 PR target/71678 * config/avr/avr-passes.def: Swap order of directives for gen-pass-instances.awk. From-SVN: r241547
Georg-Johann Lay committed -
From-SVN: r241545
GCC Administrator committed
-
- 25 Oct, 2016 6 commits
-
-
* config/vax/vax.c (vad_address_cost_1): Add missing FALLTHRU comment. (vax_notice_update_cc): Likewise. From-SVN: r241542
Jeff Law committed -
2016-10-25 Will Schmidt <will_schmidt@vnet.ibm.com> * MAINTAINERS (Write After Approval): Add myself. From-SVN: r241541
Will Schmidt committed -
2016-10-25 Paul Thomas <pault@gcc.gnu.org> PR fortran/45516 * class.c (gfc_find_derived_vtab): Detect recursive allocatable derived type components. If present, add '_deallocate' field to the vtable and build the '__deallocate' function. * decl.c (build_struct): Allow recursive allocatable derived type components for -std=f2008 or more. (gfc_match_data_decl): Accept these derived types. * expr.c (gfc_has_default_initializer): Ditto. * resolve.c (resolve_component): Make sure that the vtable is built for these derived types. * trans-array.c(structure_alloc_comps) : Use the '__deallocate' function for the automatic deallocation of these types. * trans-expr.c : Generate the deallocate accessor. * trans.h : Add its prototype. * trans-types.c (gfc_get_derived_type): Treat the recursive allocatable components in the same way as the corresponding pointer components. 2016-10-25 Paul Thomas <pault@gcc.gnu.org> PR fortran/45516 * gfortran.dg/class_2.f03: Set -std=f2003. * gfortran.dg/finalize_21.f90: Modify tree-dump. * gfortran.dg/recursive_alloc_comp_1.f08: New test. * gfortran.dg/recursive_alloc_comp_2.f08: New test. * gfortran.dg/recursive_alloc_comp_3.f08: New test. * gfortran.dg/recursive_alloc_comp_4.f08: New test. From-SVN: r241539
Paul Thomas committed -
* config.gcc (sparc*-*-solaris2*): Adjust. (sparc64-*-linux*): Likewise. * config/sparc/default-64.h: Rename to... * config/sparc/default64.h: ...this. * config/sparc/sparc.c (sparc_option_override): Replace TARGET_64BIT with TARGET_ARCH64. (sparc_mangle_type): Replace !TARGET_64BIT with TARGET_ARCH32. * config/sparc/sparc.h: Minor tweaks. * config/sparc/sparc.md: Replace !TARGET_64BIT and !TARGET_ARCH64 with TARGET_ARCH32 throughout. Minor various tweaks throughout. From-SVN: r241538
Eric Botcazou committed -
PR sanitizer/78106 * gcc.dg/asan/pr78106.c: Add -ffat-lto-objects to dg-options. From-SVN: r241537
Jakub Jelinek committed -
Running "make selftest-valgrind" showed various leaks of the form: 408 bytes in 24 blocks are definitely lost in loss record 572 of 679 at 0x4A0645D: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) by 0x1B0D057: xmalloc (xmalloc.c:148) by 0x1ACCAA1: append_file_to_dir(char const*, cpp_dir*) [clone .isra.3] (files.c:1567) by 0x1ACD56F: _cpp_find_file (files.c:390) by 0x1ACF8FB: cpp_read_main_file(cpp_reader*, char const*) (init.c:632) by 0x1AB3D97: selftest::lexer_test::lexer_test(selftest::line_table_case const&, char const*, selftest::lexer_test_options*) (input.c:2014) by 0x1AB792B: selftest::test_lexer_string_locations_u8(selftest::line_table_case const&) (input.c:2713) by 0x1ABA22A: selftest::for_each_line_table_case(void (*)(selftest::line_table_case const&)) (input.c:3227) by 0x1ABA381: selftest::input_c_tests() (input.c:3260) by 0x1A295F1: selftest::run_tests() (selftest-run-tests.c:62) by 0xF20DC4: toplev::run_self_tests() (toplev.c:2076) by 0xF20FCD: toplev::main(int, char**) (toplev.c:2153) Fix the leak by freeing the file->path in destroy_cpp_file. However, doing so would lead to a use-after-free in input.c's file cache since the filenames in this cache are the libcpp file->path buffers. Hence we need to ensure that any references to the file in the input.c cache are purged before cleaning up file->path. This is normally done by the temp_source_file dtor. Hence we need to reorder things to that the temp_source_file dtor runs before cleaning up the cpp_parser. The patch does this by introducing a wrapper class around cpp_parser *, so that the dtor can run after the dtor for temp_source_file. gcc/ChangeLog: * input.c (fcache::file_patch): Add comment about lifetime. (selftest::cpp_reader_ptr): New class. (selftest::lexer_test): Convert m_parser from cpp_reader * to a cpp_reader_ptr, and move m_tempfile to after it. (selftest::lexer_test::lexer_test): Update for above reordering. (lexer_test::~lexer_test): Move cleanup of m_parser to cpp_reader_ptr's dtor. libcpp/ChangeLog: * files.c (destroy_cpp_file): Free file->path. From-SVN: r241536
David Malcolm committed
-