[PATCH 5/7] jit,docs: use list-table instead of fixed table

2022-07-25 Thread Martin Liska
Use rather list-table that is easible to maintainer and one does not have to wrap lines. Moreover, it provides great attribute :widths: that correctly works (tested for HTML and PDF). gcc/jit/ChangeLog: * docs/cp/intro/tutorial04.rst: Use list-table. * docs/intro/tutorial04.rst: L

[PATCH 3/7] jit,docs: various fixes

2022-07-25 Thread Martin Liska
gcc/jit/ChangeLog: * docs/cp/intro/tutorial02.rst: Use proper reference. * docs/cp/topics/contexts.rst: Likewise. * docs/cp/topics/functions.rst: Put `class` directive before a function as it is not allowed declaring a class in a fn. * docs/cp/topics/types.r

[PATCH 4/7] jit,docs: compact function declarations

2022-07-25 Thread Martin Liska
gcc/jit/ChangeLog: * docs/cp/topics/expressions.rst: Compact so that the generated output is also more compact. --- gcc/jit/docs/cp/topics/expressions.rst | 42 +- 1 file changed, 14 insertions(+), 28 deletions(-) diff --git a/gcc/jit/docs/cp/topics/expres

[PATCH 1/7] jit,docs: use enum directive for enumeral types

2022-07-25 Thread Martin Liska
gcc/jit/ChangeLog: * docs/conf.py: Add needs_sphinx = '3.0' where c:type was added. * docs/index.rst: Remove note about it. * docs/topics/compilation.rst: Use enum directive and reference. * docs/topics/contexts.rst: Likewise. * docs/topics/expressions.rst:

[PATCH 2/7] jit, docs: replace c:type:`int_type` with :expr:`int_type`

2022-07-25 Thread Martin Liska
Use expression that work fine for basic type. gcc/jit/ChangeLog: * docs/cp/topics/expressions.rst: Use :expr: for basic types. * docs/topics/compilation.rst: Likewise. * docs/topics/expressions.rst: Likewise. * docs/topics/function-pointers.rst: Likewise. --- gcc/

[PATCH 6/7] jit,docs: use :expr:`type *` for pointers to a type

2022-07-25 Thread Martin Liska
gcc/jit/ChangeLog: * docs/cp/intro/tutorial02.rst: Use :expr:`type *` for pointers to a type * docs/cp/topics/asm.rst: Likewise. * docs/cp/topics/contexts.rst: Likewise. * docs/cp/topics/expressions.rst: Likewise. * docs/cp/topics/functions.rst: Likewise.

[PATCH 0/7] jit,docs: remove warnings and modernize the docs

2022-07-25 Thread Martin Liska
The patch set modernizes the documentation and removes most of the reported Sphinx warnings. Ready for master? Thanks, Martin Martin Liska (7): jit,docs: use enum directive for enumeral types jit,docs: replace c:type:`int_type` with :expr:`int_type` jit,docs: various fixes jit,docs

[PATCH] rs6000: Adjust error messages.

2022-03-23 Thread Martin Liska
gcc/ChangeLog: * config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin): Use %qs in format. * config/rs6000/rs6000.cc (rs6000_option_override_internal): Reword the error message. --- gcc/config/rs6000/rs6000-c.cc | 5 +++-- gcc/config/rs6000/rs6000.cc | 4

[PATCH][V4] rs6000: Remove unnecessary option manipulation.

2021-11-12 Thread Martin Liska
Do not set flag_rename_registers, it's already enabled with EnabledBy(funroll-loops) in the common.opt file. Use EnabledBy for unroll_only_small_loops which is a canonical approach how can be make option dependencies. gcc/ChangeLog: * config/rs6000/rs6000.c (rs6000_override_options_after

[PATCH][V3] rs6000: Remove unnecessary option manipulation.

2021-11-12 Thread Martin Liska
gcc/ChangeLog: * config/rs6000/rs6000.c (rs6000_override_options_after_change): Do not set flag_rename_registers, it's already enabled with EnabledBy(funroll-loops). Use EnabledBy for unroll_only_small_loops. * config/rs6000/rs6000.opt: Use EnabledBy for unroll_onl

[PATCH] rs6000: Fix restored rs6000_long_double_type_size

2021-07-22 Thread Martin Liska
As mentioned in the "Fallout: save/restore target options in handle_optimize_attribute" thread, we need to support target option restore of rs6000_long_double_type_size == FLOAT_PRECISION_TFmode. gcc/ChangeLog: * config/rs6000/rs6000.c (rs6000_option_override_internal): When a ta

[PATCH 3/4] Overhaul in isa_flags and handling it.

2021-04-21 Thread Martin Liska
gcc/ChangeLog: * config/i386/i386-options.c (TARGET_EXPLICIT_NO_SAHF_P): Define. (SET_TARGET_NO_SAHF): Likewise. (TARGET_EXPLICIT_PREFETCH_SSE_P): Likewise. (SET_TARGET_PREFETCH_SSE): Likewise. (TARGET_EXPLICIT_NO_TUNE_P): Likewise. (SET_TAR

[PATCH 4/4] Remove TARGET_foo (ix86_tune == PROCESSOR_foo) macros.

2021-04-21 Thread Martin Liska
gcc/ChangeLog: * config/i386/i386-expand.c (decide_alignment): Use newly named macro TARGET_CPU_P. * config/i386/i386.c (ix86_decompose_address): Likewise. (ix86_address_cost): Likewise. (ix86_lea_outperforms): Likewise. (ix86_avoid_lea_for_addr): L

[PATCH 2/4] Generate PTA features from a def file.

2021-04-21 Thread Martin Liska
gcc/ChangeLog: * config/i386/i386.h (PTA_*): Remove. (enum pta_flag): New. (DEF_PTA): Generate PTA_* values from i386.def. * wide-int-bitmask.h (WIDE_INT_BITMASK_FROM_NTH): New macro. * config/i386/i386.def: New file. --- gcc/config/i386/i386.def | 110 +++

[PATCH 1/4] Remove DEF_ENUM from stringop.def.

2021-04-21 Thread Martin Liska
gcc/ChangeLog: * config/i386/i386-options.c (DEF_ENUM): Remove it. * config/i386/i386-opts.h (DEF_ENUM): Likewise. * config/i386/stringop.def (DEF_ENUM): Likewise. --- gcc/config/i386/i386-options.c | 2 -- gcc/config/i386/i386-opts.h| 4 gcc/config/i386/stringop

[PATCH 0/4] i386: ISA flags and PTA simplification

2021-04-21 Thread Martin Liska
Hello. I've spent some time reading the i386 back-end and I noticed various boilerplate code can be simplified. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed once GCC 11.1 is released? Thanks, Martin Martin Liska (4): Remove DEF_ENUM

[PATCH 0/4] Remove BRIG FE and libhsail

2021-04-21 Thread Martin Liska
Based on the discussion with Martin Jambor, I'm suggesting removal of the HSA front-end and BRIG FE. Both were marked as obsolete in GCC 11. Ready to be installed once GCC 11.1 is released? Thanks, Martin Martin Liska (4): gcc-changelog: Remove components that will be removed. Remove

[PATCH 4/4] Remove dead components from MAINTAINERS.

2021-04-21 Thread Martin Liska
ChangeLog: * MAINTAINERS: Remove entries for removed components (HSA, BRIG, libhsail-rt). --- MAINTAINERS | 5 - 1 file changed, 5 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index db25583b37b..d3101d5c47f 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -150,8 +150,6 @

[PATCH 1/4] gcc-changelog: Remove components that will be removed.

2021-04-21 Thread Martin Liska
contrib/ChangeLog: * gcc-changelog/git_commit.py: Remove components that will be removed. --- contrib/gcc-changelog/git_commit.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/contrib/gcc-changelog/git_commit.py b/contrib/gcc-changelog/git_commit.py index b28f7deac23..8946

[PATCH 1/3] Come up with startswith function.

2021-04-21 Thread Martin Liska
gcc/ada/ChangeLog: * adadecode.c (has_prefix): Remove has_prefix and replace it with startswith. (__gnat_decode): Likewise. * gcc-interface/utils.c (def_builtin_1): Use startswith function instead of strncmp. * init.c (__gnat_install_handler): Likew

[PATCH 3/3] Use startswith in targets.

2021-04-21 Thread Martin Liska
gcc/ChangeLog: * common/config/aarch64/aarch64-common.c (aarch64_parse_extension): Use startswith function instead of strncmp. * common/config/bfin/bfin-common.c (bfin_handle_option): Likewise. * common/config/riscv/riscv-common.c (riscv_subset_list::parse): Likew

[PATCH 2/3] LTO plugin: use startswith function.

2021-04-21 Thread Martin Liska
lto-plugin/ChangeLog: * lto-plugin.c (LTO_SEGMENT_NAME): Remove. (LTO_SYMTAB_PREFIX): Likewise. (LTO_SYMTAB_PREFIX_LEN): Likewise. (LTO_SYMTAB_EXT_PREFIX): Likewise. (LTO_SYMTAB_EXT_PREFIX_LEN): Likewise. (LTO_LTO_PREFIX): Likewise. (LTO_LTO

[PATCH 0/3] Come up with startswith function

2021-04-21 Thread Martin Liska
The patchset is tested on x86_64-linux-gnu and I was able to build all cross-compilers. Ready to be installed to master once GCC 11.1 is released? Thanks, Martin Martin Liska (3): Come up with startswith function. LTO plugin: use startswith function. Use startswith in targets. gcc/ada

[PATCH 1/2] IPA symver: allow multiple symvers for a definition

2020-08-25 Thread Martin Liska
gcc/ChangeLog: * cgraphunit.c (process_symver_attribute): Allow multiple symver attributes for one symbol. * doc/extend.texi: Document the change. gcc/testsuite/ChangeLog: * lib/target-supports-dg.exp: Add dg-require-symver. * lib/target-supports.exp: Lik

[PATCH 2/2] IPA symver: support visibility and static symbols.

2020-08-25 Thread Martin Liska
gcc/ChangeLog: * cgraphunit.c (process_symver_attribute): Remove checks that are not needed now. (cgraph_node::assemble_thunks_and_aliases): Change second argument to decl. * config/elfos.h (ASM_OUTPUT_SYMVER_DIRECTIVE): Add new VISIBILITY parameter

[PATCH 0/2] symver: extend functionality

2020-08-25 Thread Martin Liska
Hey. Since the bintuils release 2.35, we can now support new .symver syntax added in: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6914be53bd662eefd979d0c82d2e20e108c4ee66 Patch survives bootstrap and regression tests. Thoughts? Martin Martin Liska (2): IPA symver: allow

[PATCH] Update merge.sh to reflect usage of git.

2020-05-25 Thread Martin Liska
After switching to GIT, we should use it in libsanitizer merge script. I'll do merge from master as soon as PR95311 gets fixed. I'm going to install the patch. libsanitizer/ChangeLog: * LOCAL_PATCHES: Use git hash instead of SVN id. * merge.sh: Use git instead of VCS. Update pat

[PATCH 3/3] Remove __gcov_flush.

2020-04-03 Thread Martin Liska
gcc/ChangeLog: 2020-04-03 Martin Liska PR gcov-profile/93623 * tree-cfg.c (stmt_can_terminate_bb_p): Update comment to reflect reality. libgcc/ChangeLog: 2020-04-03 Martin Liska PR gcov-profile/93623 * Makefile.in: Remove __gcov_flush

[PATCH 2/3] Use __gcov_dump and __gcov_reset in execv and fork context.

2020-04-03 Thread Martin Liska
libgcc/ChangeLog: 2020-04-03 Martin Liska PR gcov-profile/93623 * libgcov-interface.c (__gcov_fork): Do not flush and reset only in child process. (__gcov_execl): Dump counters only and reset them only if exec* fails. (__gcov_execlp): Likewise

[stage1][PATCH 0/3] __gcov_dump improvements

2020-04-03 Thread Martin Liska
bootstrap on x86_64-linux-gnu and survives regression tests. I'll install the patch set in next stage1 if there are no objections. Thanks, Martin Martin Liska (3): Do locking for __gcov_dump and __gcov_reset as well. Use __gcov_dump and __gcov_reset in execv and fork context. R

[PATCH 1/3] Do locking for __gcov_dump and __gcov_reset as well.

2020-04-03 Thread Martin Liska
libgcc/ChangeLog: 2020-04-03 Martin Liska PR gcov-profile/93623 * Makefile.in: Add _gcov_lock_unlock to LIBGCOV_INTERFACE. * libgcov-interface.c (ALIAS_void_fn): Remove. (__gcov_lock): New. (__gcov_unlock): New. (__gcov_flush): Use __gcov_lock

[PATCH 3/4] Put index check before use.

2020-02-06 Thread Martin Liska
liboffloadmic/ChangeLog: 2020-02-04 Martin Liska PR other/89860. * runtime/offload_target.cpp: Put index check before its use. --- liboffloadmic/runtime/offload_target.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/liboffloadmic/runtime

[PATCH 1/4] Remove 2 dead variables in bid_internal.h.

2020-02-06 Thread Martin Liska
libgcc/config/libbid/ChangeLog: 2020-02-04 Martin Liska PR libgcc/92565 * bid_internal.h (handle_UF_128_rem): Remove unused variable. (handle_UF_128): Likewise. --- libgcc/config/libbid/bid_internal.h | 4 1 file changed, 4 deletions(-) diff --git a/libgcc

[PATCH 4/4] Use const for template argument.

2020-02-06 Thread Martin Liska
libstdc++-v3/ChangeLog: 2020-02-04 Martin Liska PR c/92472. * include/parallel/multiway_merge.h: Use const for _Compare template argument. --- libstdc++-v3/include/parallel/multiway_merge.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a

[PATCH 2/4] Use const for some function arguments.

2020-02-06 Thread Martin Liska
gcc/ChangeLog: 2020-02-04 Martin Liska PR c/92472. * alloc-pool.h: Use const for some arguments. * bitmap.h: Likewise. * mem-stats.h: Likewise. * sese.h (get_entry_bb): Likewise. (get_exit_bb): Likewise. --- gcc/alloc-pool.h | 2 +- gcc

[PATCH 0/4] Fix various minor issues seen with cppcheck

2020-02-06 Thread Martin Liska
Hi. The series is about small issues that were spotted with cppcheck and where David Binderman suggested a patch. It's probably a stage1 material? Martin Martin Liska (4): Remove 2 dead variables in bid_internal.h. Use const for some function arguments. Put index check before use.

[PATCH 3/5] Use func_checker::hash_operand for hashing of GIMPLE operands.

2019-11-13 Thread Martin Liska
gcc/ChangeLog: 2019-11-11 Martin Liska * ipa-icf-gimple.h (func_checker::func_checker): Add default constructor. * ipa-icf.c (sem_function::init): Make operand_equal_p and hash_operand public. (sem_item::add_expr): Remove. (sem_item::add_type

[PATCH 5/5] Update statistics about needed symbols in IPA ICF.

2019-11-13 Thread Martin Liska
gcc/ChangeLog: 2019-11-11 Martin Liska * ipa-icf.c (sem_item_optimizer::execute): Save loaded_symbols. (sem_item_optimizer::parse_nonsingleton_classes): Return number of loaded symbols. (sem_item_optimizer::merge_classes): Print statistics

[PATCH 2/5] Update dump message in IPA ICF.

2019-11-13 Thread Martin Liska
gcc/ChangeLog: 2019-11-11 Martin Liska * ipa-icf-gimple.c (func_checker::compare_gimple_call): Update bail out reason. (func_checker::compare_gimple_assign): Likewise. --- gcc/ipa-icf-gimple.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a

[PATCH 0/5] IPA ICF: more clean up

2019-11-13 Thread Martin Liska
re. 4) hash FIELD_DECL offset information to improve hashing 5) update statistics about really needed symbols during merging Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin Martin Liska (5): Do not overuse push/pop_cfun in IPA ICF. U

[PATCH 1/5] Do not overuse push/pop_cfun in IPA ICF.

2019-11-13 Thread Martin Liska
gcc/ChangeLog: 2019-11-11 Martin Liska * ipa-icf.c (sem_function::equals_private): Do not overuse push/pop_cfun functions. --- gcc/ipa-icf.c | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c index 10aa4b76463..53e387403c8

[PATCH 4/5] Handle FIELD_DECL in IPA ICF.

2019-11-13 Thread Martin Liska
gcc/ChangeLog: 2019-11-11 Martin Liska * ipa-icf-gimple.c (func_checker::hash_operand): Improve func_checker::hash_operand by handling of FIELD_DECLs. --- gcc/ipa-icf-gimple.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gcc/ipa-icf-gimple.c b/gcc

[PATCH 1/3] Remove leftover call to finalize_options_struct.

2019-11-13 Thread Martin Liska
gcc/ChangeLog: 2019-11-12 Martin Liska * tree-streamer-in.c (lto_input_ts_function_decl_tree_pointers): Remove call to finalize_options_struct. --- gcc/tree-streamer-in.c | 1 - 1 file changed, 1 deletion(-) diff --git a/gcc/tree-streamer-in.c b/gcc/tree-streamer-in.c index

[PATCH 2/3] Fix params.exp by parsing output of --help=params -Q.

2019-11-13 Thread Martin Liska
gcc/testsuite/ChangeLog: 2019-11-12 Martin Liska * gcc.dg/params/params.exp: Restore test by parsing output of --help=params -Q. --- gcc/testsuite/gcc.dg/params/params.exp | 42 -- 1 file changed, 19 insertions(+), 23 deletions(-) diff --git a/gcc

[PATCH 0/3] Param conversion fallout

2019-11-13 Thread Martin Liska
and survives regression tests. I'm going to install the whole series if there are no objections. Thanks, Martin Martin Liska (3): Remove leftover call to finalize_options_struct. Fix params.exp by parsing output of --help=params -Q. Update comment in opts.c. gcc/o

[PATCH 3/3] Update comment in opts.c.

2019-11-13 Thread Martin Liska
gcc/ChangeLog: 2019-11-13 Martin Liska * opts.c: Update comment about OPT_LEVELS_2_PLUS_SPEED_ONLY. --- gcc/opts.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/opts.c b/gcc/opts.c index faf2eef082e..74f05f1b58d 100644 --- a/gcc/opts.c +++ b/gcc/opts.c

[PATCH 7/7] Fix test-suite fallout.

2019-11-07 Thread Martin Liska
gcc/testsuite/ChangeLog: 2019-11-06 Martin Liska * gcc.dg/completion-3.c: Append = to all expected results and sort expected output. * gcc.dg/pr83620.c: Update error message. * gcc.dg/spellcheck-params-2.c: Likewise. * gcc.dg/spellcheck-params.c

[PATCH 5/7] Remove last leftover usage of params* files.

2019-11-07 Thread Martin Liska
gcc/ChangeLog: 2019-11-06 Martin Liska * common.opt: Remove param_values. * config/i386/i386-options.c (ix86_valid_target_attribute_p): Remove finalize_options_struct. * gcc.c (driver::decode_argv): Do not call global_init_params and finish_params

[PATCH 6/7] Remove set_default_param_value from documentation.

2019-11-07 Thread Martin Liska
gcc/ChangeLog: 2019-11-06 Martin Liska * common/common-target.def: Do not mention set_default_param_value and set_param_value. * doc/tm.texi: Likewise. --- gcc/common/common-target.def | 6 ++ gcc/doc/tm.texi | 4 ++-- 2 files changed, 4

[PATCH 2/7] Include new generated gcc/params.opt file.

2019-11-07 Thread Martin Liska
gcc/ChangeLog: 2019-11-06 Martin Liska * Makefile.in: Include params.opt. * flag-types.h (enum parloops_schedule_type): Add parloops_schedule_type used in params.opt. * params.opt: New file. --- gcc/Makefile.in | 2 +- gcc/flag-types.h | 11 + gcc

[PATCH 0/7] Param conversion to option machinery

2019-11-07 Thread Martin Liska
function (Optimization keyword) and global. The patch survives bootstrap and regtests on x86_64-linux-gnu and ppc64-linux-gnu and I made cross build of all target compilers. Thoughts? Martin Martin Liska (7): Param to options conversion. Include new generated gcc/params.opt file. Apply

[PATCH 1/7] Param to options conversion.

2019-11-07 Thread Martin Liska
gcc/ChangeLog: 2019-11-06 Martin Liska * common.opt: Remove --param and --param= options. * opt-functions.awk: Mark CL_PARAMS for options that have Param keyword. * opts-common.c (decode_cmdline_options_to_array): Replace --param key=value with --param

[PATCH 3/5] Reapply all revisions mentioned in LOCAL_PATCHES.

2019-11-05 Thread Martin Liska
libsanitizer/ChangeLog: 2019-11-05 Martin Liska * asan/asan_globals.cpp (CheckODRViolationViaIndicator): Reapply from LOCAL_PATCHES. (CheckODRViolationViaPoisoning): Likewise. (RegisterGlobal): Likewise. * asan/asan_interceptors.h

[PATCH 5/5] Update scanned patterns in a test-case.

2019-11-05 Thread Martin Liska
gcc/testsuite/ChangeLog: 2019-11-05 Martin Liska * c-c++-common/ubsan/ptr-overflow-2.c: Update based on changed run-time reporting format. --- gcc/testsuite/c-c++-common/ubsan/ptr-overflow-2.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gcc

[PATCH 0/5] libsanitizer: merge from trunk

2019-11-05 Thread Martin Liska
erged libsanitizer. I'll install the patches if there are no objections. Martin Martin Liska (5): Libsanitizer: merge from trunk with merge.sh. Update Makefile.am. Reapply all revisions mentioned in LOCAL_PATCHES. Set print_summary for UBSAN. Update scanned patterns in a test-case.

[PATCH 2/5] Update Makefile.am.

2019-11-05 Thread Martin Liska
libsanitizer/ChangeLog: 2019-11-05 Martin Liska * tsan/Makefile.am: Rename tsan_interceptors.cpp to tsan_interceptors_posix. * tsan/Makefile.in: Regenerate. --- libsanitizer/tsan/Makefile.am | 2 +- libsanitizer/tsan/Makefile.in | 6 +++--- 2 files changed, 4

[PATCH 4/5] Set print_summary for UBSAN.

2019-11-05 Thread Martin Liska
libsanitizer/ChangeLog: 2019-11-05 Martin Liska * ubsan/ubsan_flags.cpp (InitializeFlags): Trunk decided to print summary for all sanitizers, but we want to have UBSAN without it. --- libsanitizer/ubsan/ubsan_flags.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a

[PATCH 0/2] cgraph_node refactoring

2019-10-29 Thread Martin Liska
Hi. The patch is about refactoring of cgraph_node where I removed 2 embedded structs with just few members. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin Martin Liska (2): Remove cgraph_global_info. Remove cgraph_local_info

[PATCH 2/2] Remove cgraph_local_info structure.

2019-10-29 Thread Martin Liska
gcc/ChangeLog: 2019-10-25 Martin Liska * cgraph.c (cgraph_node::local_info): Transform to ... (cgraph_node::local_info_node): ... this. (cgraph_node::dump): Remove cgraph_local_info and put its fields directly into cgraph_node. (cgraph_node

[PATCH 1/2] Remove cgraph_global_info.

2019-10-29 Thread Martin Liska
--- gcc/cgraph.c | 56 - gcc/cgraph.h | 41 --- gcc/cgraphbuild.c | 2 +- gcc/cgraphclones.c | 7 ++-- gcc/cgraphunit.c | 16 gcc/gimple-fold.c | 4 +- gcc/ipa-comdats.c |

[PATCH 1/3] Remove misleading sorting function in ggc memory report.

2019-10-25 Thread Martin Liska
gcc/ChangeLog: 2019-10-25 Martin Liska * cgraphunit.c (symbol_table::compile): Remove argument for dump_memory_report. * ggc-common.c (dump_ggc_loc_statistics): Likewise. (compare_final): Remove in order to make report better readable. * ggc.h

[PATCH 3/3] Print header in dump_memory_report.

2019-10-25 Thread Martin Liska
gcc/ChangeLog: 2019-10-25 Martin Liska * cgraphunit.c (symbol_table::compile): Pass title as dump_memory_report argument. * toplev.c (dump_memory_report): New argument. (finalize): Pass new argument. * toplev.h (dump_memory_report): Add argument. gcc

[PATCH 0/3] -fmem-report tweaks

2019-10-25 Thread Martin Liska
tween -fpre-ipa-mem-report and other options. Thanks, Martin Martin Liska (3): Remove misleading sorting function in ggc memory report. Move Leak in GCC memory report to the first column. Print header in dump_memory_report. gcc/cgraphunit.c | 10 ++ gcc/ggc-common.c

[PATCH 2/3] Move Leak in GCC memory report to the first column.

2019-10-25 Thread Martin Liska
gcc/ChangeLog: 2019-10-25 Martin Liska * ggc-common.c: Move Leak to the first column. --- gcc/ggc-common.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gcc/ggc-common.c b/gcc/ggc-common.c index 8bc77a0a036..37d3c5df9e1 100644 --- a/gcc/ggc-common.c

[PATCH 2/2] Clean next_nested properly.

2019-08-14 Thread Martin Liska
gcc/ChangeLog: 2019-08-14 Martin Liska PR ipa/91438 * cgraph.c (cgraph_node::remove): When setting n->origin = NULL for all nested functions, reset also next_nested. --- gcc/cgraph.c | 11 +++ 1 file changed, 7 insertions(+), 4 deletions(-) d

[PATCH 1/2] Add ::verify for cgraph_node::origin/nested/next_nested.

2019-08-14 Thread Martin Liska
gcc/ChangeLog: 2019-08-14 Martin Liska * cgraph.c (cgraph_node::verify_node): Verify origin, nested and next_nested. --- gcc/cgraph.c | 24 1 file changed, 24 insertions(+) diff --git a/gcc/cgraph.c b/gcc/cgraph.c index ed46d81a513..eb38b905879

[PATCH 0/2] Fix dangling pointer in next_nested.

2019-08-14 Thread Martin Liska
tests. Ready to be installed? Thanks, Martin Martin Liska (2): Add ::verify for cgraph_node::origin/nested/next_nested. Clean next_nested properly. gcc/cgraph.c | 35 +++ 1 file changed, 31 insertions(+), 4 deletions(-) -- 2.22.0

[PATCH 0/3] Libsanitizer: merge from trunk

2019-08-13 Thread Martin Liska
debug info Variable symbols changes summary: 0 Removed, 0 Added variable symbol not referenced by debug info Ready to be installed? Thanks, Martin Martin Liska (3): Libsanitizer merge from trunk r368656. Reapply all revisions mentioned in LOCAL_PATCHES. Fix a test-case scan pattern.

[PATCH 2/3] Reapply all revisions mentioned in LOCAL_PATCHES.

2019-08-13 Thread Martin Liska
libsanitizer/ChangeLog: 2019-08-13 Martin Liska * asan/asan_globals.cpp (CheckODRViolationViaIndicator): Reapply patch from trunk. (CheckODRViolationViaPoisoning): Likewise. (RegisterGlobal): Likewise. * asan/asan_mapping.h: Likewise

[PATCH 3/3] Fix a test-case scan pattern.

2019-08-13 Thread Martin Liska
gcc/testsuite/ChangeLog: 2019-08-13 Martin Liska * c-c++-common/asan/memcmp-1.c: There's a new function in the stack-trace on the top. So shift expected output in stack trace. --- gcc/testsuite/c-c++-common/asan/memcmp-1.c | 4 ++-- 1 file changed, 2 inser

[PATCH 1/3] Use argparse.ArgumentParser for mklog.

2019-08-13 Thread Martin Liska
contrib/ChangeLog: 2019-08-02 Martin Liska * mklog: Use argparse instead of getopt. --- contrib/mklog | 73 ++- 1 file changed, 25 insertions(+), 48 deletions(-) diff --git a/contrib/mklog b/contrib/mklog index 15558cfbfe3

[PATCH 2/3] mklog: parse PR references from new test files

2019-08-13 Thread Martin Liska
contrib/ChangeLog: 2019-08-13 Martin Liska * mklog: Parse PR references from newly added test files. --- contrib/mklog | 22 -- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/contrib/mklog b/contrib/mklog index e7a513fad5c..85242002357

[PATCH 0/3] mklog improvements

2019-08-13 Thread Martin Liska
Hi. I'm sending format independent changes to mklog that should improve the script. It addresses couple of improvement mentioned here: https://gcc.gnu.org/ml/gcc-patches/2019-08/msg00031.html Martin Martin Liska (3): Use argparse.ArgumentParser for mklog. mklog: parse PR references fro

[PATCH 3/3] mklog: Do not print changed functions in testsuite

2019-08-13 Thread Martin Liska
contrib/ChangeLog: 2019-08-13 Martin Liska * mklog: Do not print changed functions for testsuite files. --- contrib/mklog | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/contrib/mklog b/contrib/mklog index 85242002357..1a0e82d1ddd 100755 --- a/contrib

[PATCH 6/9] Integrate that for IPA ICF.

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * ipa-icf-gimple.c (func_checker::hash_operand_valueize): New function created from compare_operand. (func_checker::compare_cst_or_decl): Remove handling of FIELD_DECLs as it's handled in operand_eq

[PATCH 1/9] Replace int with boolean in predicate functions.

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * fold-const.c (twoval_comparison_p): Replace int with bool as a return type. (simple_operand_p): Likewise. (operand_equal_p): Replace int with bool as a return type. * fold-const.h (operand_equal_p): Likewise

[PATCH 5/9] Come up with an abstraction.

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * fold-const.c (operand_equal_p): Rename to ... (operand_compare::operand_equal_p): ... this. (add_expr): Rename to ... (operand_compare::hash_operand): ... this. (operand_compare::operand_equal_valueize

[PATCH 9/9] Remove alias set comparison.

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * ipa-icf-gimple.c (func_checker::compatible_types_p): Do not compare alias sets. It's handled by operand_equal_p. gcc/testsuite/ChangeLog: 2019-07-24 Martin Liska * c-c++-common/Wstringop-truncation-4.c: Disable IP

[PATCH 7/9] IPA ICF: remove dead code

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * ipa-icf-gimple.c (func_checker::compare_ssa_name): Call compare_operand. (func_checker::compare_memory_operand): Remove. (func_checker::compare_cst_or_decl): Remove. (func_checker::operand_equal_valueize): Do

[PATCH 8/9] Remove comparison for polymorphic types.

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * ipa-icf-gimple.c (func_checker::func_checker): Do not initialize m_compare_polymorphic. (func_checker::compare_decl): Do not compare polymorphic types. * ipa-icf-gimple.h (m_compare_polymorphic): Remove. * ipa

[PATCH 2/9] operand_equal_p: add support for FIELD_DECL

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * fold-const.c (operand_equal_p): Support FIELD_DECL as well. * tree.c (add_expr): Hast DECL_FIELD_OFFSET and DECL_FIELD_BIT_OFFSET for FIELD_DECL. gcc/testsuite/ChangeLog: 2019-07-24 Martin Liska * gcc.dg

[PATCH 0/9] IPA ICF overhaul

2019-08-06 Thread Martin Liska
ks, Martin Martin Liska (9): Replace int with boolean in predicate functions. operand_equal_p: add support for FIELD_DECL operand_equal_p: add support for OBJ_TYPE_REF. Strengthen alias_ptr_types_compatible_p in LTO mode. Come up with an abstraction. Integrate that for IPA ICF. IPA I

[PATCH 4/9] Strengthen alias_ptr_types_compatible_p in LTO mode.

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * alias.c (alias_ptr_types_compatible_p): Strengten type comparison in LTO mode. --- gcc/alias.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gcc/alias.c b/gcc/alias.c index 2755df72907..bae4ddaebaf 100644

[PATCH 3/9] operand_equal_p: add support for OBJ_TYPE_REF.

2019-08-06 Thread Martin Liska
gcc/ChangeLog: 2019-07-24 Martin Liska * fold-const.c (operand_equal_p): Support OBJ_TYPE_REF. * tree.c (add_expr): Hash parts of OBJ_TYPE_REF. --- gcc/fold-const.c | 21 + gcc/tree.c | 9 + 2 files changed, 30 insertions(+) diff --git a

[PATCH 0/4] Store multiple values for single value profilers

2019-06-04 Thread Martin Liska
Hi. It's becoming more common that a training run happens in parallel environment. That can lead to a not reproducible builds caused by different order of merging of .gcda files. So that I'm suggesting to store up to 4 values for HIST_TYPE_SINGLE_VALUE and HIST_TYPE_INDIR_CALL on disk. If the cap