Re: [PATCH] contrib: use sphinx-build from a venv

2022-07-26 Thread Martin Liška
CCing overseers and Frank. Can you please help me with that? Thanks, Martin On 7/25/22 16:00, Martin Liška wrote: > Hi. > > As you likely know, I'm still working on transition of the current docs to > Sphinx. > But for now, I've sent a modernizing patches

Re: [PATCH] contrib: use sphinx-build from a venv

2022-07-26 Thread Martin Liška
On 7/26/22 14:01, Jonathan Wakely via Gcc-patches wrote: > On Tue, 26 Jul 2022 at 12:56, Frank Ch. Eigler wrote: >> >> Hi - >> The gccadmin team can do this kind of thing without overseer/root privileges, or indeed so can any local shell-privileged user. >>> >>> Yeah, I said I didn't want

Re: [PATCH] libsanitizer: Cherry-pick 2bfb0fcb51510f22723c8cdfefe from upstream

2022-07-28 Thread Martin Liška
On 7/28/22 15:43, Dimitrije Milosevic wrote: > |Gentle ping, requiring someone to push the change. :)| Sure, I can do that, but please attach output of (git format-patch) as an attachment to an email. The current email has a weird format I can directly apply with git am. Cheers, Martin

Re: [PATCH] libsanitizer: Cherry-pick 2bfb0fcb51510f22723c8cdfefe from upstream

2022-07-31 Thread Martin Liška
On 7/29/22 08:38, Dimitrije Milosevic wrote: > Thanks Martin! I'm sending out the output from git format-patch as an > attachment to this email. You're welcome, pushed as r13-1909-g1efeaf99bd8bdf. Cheers, Martin

[PATCH] lto: replace $target with $host in configure.ac [PR106170]

2022-08-01 Thread Martin Liška
Pushed as obvious. Martin PR lto/106170 lto-plugin/ChangeLog: * configure.ac: Replace $target with $host. * configure: Regenerate. --- lto-plugin/configure| 2 +- lto-plugin/configure.ac | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lto-plug

[PATCH] gcov-dump: add --stable option

2022-08-02 Thread Martin Liška
The option prints TOP N counters in a stable format usage for comparison (diff). Will install the patch if there are no objections. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Martin gcc/ChangeLog: * doc/gcov-dump.texi: Document the new option. * gcov

[PATCH] IPA: reduce what we dump in normal mode

2022-08-02 Thread Martin Liška
gcc/ChangeLog: * profile.cc (compute_branch_probabilities): Dump details only if TDF_DETAILS. * symtab.cc (symtab_node::dump_base): Do not dump pointer unless TDF_ADDRESS is used, it makes comparison harder. --- gcc/profile.cc | 2 +- gcc/symtab.cc | 3 ++- 2 file

[PATCH][pushed] gcc-changelog: do not run extra deduction

2022-08-02 Thread Martin Liška
Do not deduce changelog for root ChangeLog (''). Small cleanup, pushed. @Jonathan: Please update the server hook. Martin contrib/ChangeLog: * gcc-changelog/git_commit.py: Do not deduce changelog for root ChangeLog. --- contrib/gcc-changelog/git_commit.py | 2 +- 1 file changed, 1 ins

Re: Porting the Docs to Sphinx - project status

2022-08-02 Thread Martin Liška
On 1/31/22 15:06, Martin Liška wrote: > Hello. > > It's about 5 months since the last project status update: > https://gcc.gnu.org/pipermail/gcc-patches/2021-August/577108.html > Now it's pretty clear that it won't be merged before GCC 12.1 gets released. >

Re: [PATCH] IPA: reduce what we dump in normal mode

2022-08-03 Thread Martin Liška
On 8/2/22 18:27, Jan Hubicka wrote: > If you disable dumping, you can also disable the collection of stats > which is guarded by if (dump_file) as well. Otherwise the patch is OK. Sure, good point! I'm going to push the following. Thanks, MartinFrom 7585e5ecb47761516b8f397002819f2c95b8c32e Mon

[PATCH] lto: support --jobserver-style=fifo for recent GNU make

2022-08-04 Thread Martin Liška
After a long time, GNU make has finally implemented named pipes when it comes to --jobserver-auth. The traditional approach are provided opened file descriptors that causes troubles: https://savannah.gnu.org/bugs/index.php?57242 GNU make commit: https://git.savannah.gnu.org/cgit/make.git/commit/?

Re: [PATCH] lto: support --jobserver-style=fifo for recent GNU make

2022-08-09 Thread Martin Liška
On 8/5/22 12:58, Richard Biener wrote: > On Thu, Aug 4, 2022 at 10:57 AM Martin Liška wrote: >> >> After a long time, GNU make has finally implemented named pipes when >> it comes to --jobserver-auth. The traditional approach are >> provided opened file descriptors tha

[PATCH 2/3] lto: support --jobserver-style=fifo for recent GNU make

2022-08-09 Thread Martin Liška
Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: * jobserver.h (jobserver_info::jobserver_info): Parse FIFO format of --jobserver-auth. --- gcc/jobserver.h | 19 +-- 1 file changed, 17 ins

[PATCH 3/3] lto: respect jobserver in parallel WPA streaming

2022-08-09 Thread Martin Liška
Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin PR lto/106328 gcc/ChangeLog: * jobserver.h (struct jobserver_info): Add pipefd. (jobserver_info::connect): New. (jobserver_info::disconnect): Likewise.

[PATCH 1/3] Factor out jobserver_active_p.

2022-08-09 Thread Martin Liška
Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: * gcc.cc (driver::detect_jobserver): Remove and move to jobserver.h. * lto-wrapper.cc (jobserver_active_p): Likewise. (run_gcc): Likewise.

Re: [PATCH 1/3] Factor out jobserver_active_p.

2022-08-10 Thread Martin Liška
On 8/10/22 08:56, Richard Biener wrote: > C++ standard library includes have to go through system.h (#define > INCLUDE_STRING). Oh, yeah. That means I need to rely on the flat header files :/ > > Does the API really have to use std::string? I would like to. My main motivation is std::string::rf

Re: [PATCH 1/3] Factor out jobserver_active_p.

2022-08-10 Thread Martin Liška
On 8/10/22 09:47, Richard Biener wrote: > On Wed, Aug 10, 2022 at 9:17 AM Martin Liška wrote: >> >> On 8/10/22 08:56, Richard Biener wrote: >>> C++ standard library includes have to go through system.h (#define >>> INCLUDE_STRING). >> >> Oh, yeah.

Re: [PATCH 3/3] lto: respect jobserver in parallel WPA streaming

2022-08-10 Thread Martin Liška
On 8/10/22 12:52, Richard Biener wrote: > If it's not a template and the methods not inline won't we get multiple > definition errors when this include file is included in multiple places > from an executable? opts-common.cc might be a good place to > stuff it, and opts.h to declare (if it were no

Re: [PATCH 1/3] Factor out jobserver_active_p.

2022-08-10 Thread Martin Liška
On 8/10/22 12:47, Richard Biener wrote: > Yeah, fair enough. I'm going to install the v3 where I renamed jobserver.h and moved the ctor implementation to opts-common.cc. Cheers, MartinFrom 6f3abcb3fa26f6ed719450f6bc70b2b37179973a Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Tue, 9 Aug 2022

Re: [PATCH 2/3] lto: support --jobserver-style=fifo for recent GNU make

2022-08-10 Thread Martin Liška
On 8/9/22 14:00, Martin Liška wrote: > |Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready > to be installed? Thanks, Martin| Sending v2 where I renamed the file. I'm going to install it as the original fifo support patch was already approved by Ric

[PATCH (pushed)] docs: document new param

2023-02-13 Thread Martin Liška
gcc/ChangeLog: * doc/invoke.texi: Document ira-simple-lra-insn-threshold. --- gcc/doc/invoke.texi | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 51447a78584..26de582e41e 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@

Re: realpath() patch to fix symlinks resolution for win32

2023-02-13 Thread Martin Liška
On 2/11/23 22:14, Gerald Pfeifer wrote: On Sat, 11 Feb 2023, NightStrike wrote: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108350 I would have expected the PR to have been automatically updated based on the commit email. Any idea why that didn't happen? Not to change the state to closed, but

[PATCH (pushed)] docs: document new --param=asan-kernel-mem-intrinsic-prefix

2023-02-15 Thread Martin Liška
gcc/ChangeLog: * doc/invoke.texi: Document --param=asan-kernel-mem-intrinsic-prefix. --- gcc/doc/invoke.texi | 4 1 file changed, 4 insertions(+) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 26de582e41e..0a43720f614 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invo

Re: [PATCH] diagnostics: fix crash with -fdiagnostics-format=json-file

2023-02-17 Thread Martin Liška
PING^3 On 2/1/23 14:13, Martin Liška wrote: > PING^2 > > On 1/24/23 14:34, Martin Liška wrote: >> PING^1 >> >> On 1/10/23 16:10, Martin Liška wrote: >>> On 1/6/23 14:21, David Malcolm wrote: >>>> On Fri, 2023-01-06 at 12:33 +0100, Martin Liška wrot

[PATCH (pushed)] libsanitizer: cherry-pick commit 8f5962b1ccb5fcd4d4544121d43efb860ac3cc6d from upstream

2023-02-24 Thread Martin Liška
ASAN: keep support for Global::location We as GCC still emit __asan_global_source_location for global variables and we would like to use it in the future. On other hand, we don't support llvm-symbolizer and the default libbacktraace symbolizer does not support location info. --- libsanitizer/asan

[PATCH] asan: adjust module name for global variables

2023-02-24 Thread Martin Liška
As mentioned in the PR, when we use LTO, we wrongly use ltrans output file name as a module name of a global variable. That leads to a non-reproducible output. After the suggested change, we emit context name of normal global variables. And for artificial variables (like .Lubsan_data3), we use aux

Re: [PATCH] asan: adjust module name for global variables

2023-02-24 Thread Martin Liška
On 2/24/23 10:07, Jakub Jelinek wrote: > On Fri, Feb 24, 2023 at 10:00:01AM +0100, Martin Liška wrote: >> As mentioned in the PR, when we use LTO, we wrongly use ltrans output >> file name as a module name of a global variable. That leads to a >> non-reproducible output. >

Re: [PATCH] diagnostics: fix crash with -fdiagnostics-format=json-file

2023-02-27 Thread Martin Liška
PING^4 On 2/17/23 15:52, Martin Liška wrote: PING^3 On 2/1/23 14:13, Martin Liška wrote: PING^2 On 1/24/23 14:34, Martin Liška wrote: PING^1 On 1/10/23 16:10, Martin Liška wrote: On 1/6/23 14:21, David Malcolm wrote: On Fri, 2023-01-06 at 12:33 +0100, Martin Liška wrote: Patch can

Re: [wwwdocs] gcc-13/porting_to.html: Document C++ -fexcess-precision=standard

2023-03-02 Thread Martin Liška
On 3/2/23 11:32, Jakub Jelinek wrote: > Hi! > > On Fri, Feb 10, 2023 at 10:06:03AM +0100, Gerald Pfeifer wrote: >> Yes, thank you! Two minor suggestions/questions below: >> >>> --- a/htdocs/gcc-13/changes.html >>> +++ b/htdocs/gcc-13/changes.html >>> + -fexcess-precision=fast. The option aff

Re: Ping: [PATCH 1/2] testsuite: Provide means to regexp in multiline patterns

2023-03-07 Thread Martin Liška
On 3/7/23 01:32, Hans-Peter Nilsson wrote: >> From: Mike Stump >> Date: Mon, 6 Mar 2023 02:05:35 -0800 > >> Ok > > Thanks! The server-side hook didn't like my ChangeLog > entry: > > * lib/multiline.exp (_build_multiline_regex): Map > "{re:" to "(", ":re}" to ")" and ":r

Re: [PATCH] -Wdangling-pointer: don't mark SSA lhs sets as stores

2023-03-08 Thread Martin Liška
On 3/3/23 12:12, Richard Biener via Gcc-patches wrote: > On Fri, Mar 3, 2023 at 9:30 AM Alexandre Oliva wrote: >> >> On Feb 17, 2023, Richard Biener wrote: >> * gimple-ssa-warn-access.cc (pass_waccess::check_dangling_stores): Skip non-stores. for gcc/testsuite/ChangeLog

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-21 Thread Martin Liška
On 1/21/21 3:01 PM, Jan Hubicka wrote: Plus I'm planning to send one more patch that will ignore time profile when -fprofile-reproduce != serial. Why you need to disable time profiling? Because you can have 2 training runs (running in parallel) when order is: runA: foo -> bar runB: bar -> f

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-21 Thread Martin Liška
On 1/21/21 2:46 PM, Jan Hubicka wrote: I think easy way to get users of this option is to make profile not reproducible by default and modify packages to use right reproducibility option when reproducible builds are intended. It is not feature that comes for free and I think most users of PGO do

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-21 Thread Martin Liška
On 1/21/21 7:45 PM, Jan Hubicka wrote: For this reason we merge by computing average, which is stable over reordering the indices Looking at the implementation, we merge by using minimum value: /* Time profiles are merged so that minimum from all valid (greater than zero) is stored. The

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-21 Thread Martin Liška
On 1/21/21 8:03 PM, Jan Hubicka wrote: What exactly is suggested? This one. Martin >From 22bbf5342f2b73fad6c0286541bba6699c617380 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 21 Jan 2021 09:02:31 +0100 Subject: [PATCH 1/2] Restore -fprofile-reproducibility flag. gcc/ChangeLog: PR

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-21 Thread Martin Liška
On 1/21/21 8:02 PM, Jan Hubicka wrote: diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c index b401f0817a3..042c03d819e 100644 --- a/gcc/cgraphunit.c +++ b/gcc/cgraphunit.c @@ -1961,8 +1961,9 @@ expand_all_functions (void) } /* First output functions with time profile in specified o

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-22 Thread Martin Liška
On 1/21/21 8:16 PM, Jan Hubicka wrote: On 1/21/21 8:03 PM, Jan Hubicka wrote: What exactly is suggested? This one. Martin From 22bbf5342f2b73fad6c0286541bba6699c617380 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 21 Jan 2021 09:02:31 +0100 Subject: [PATCH 1/2] Restore -fprofile

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-22 Thread Martin Liška
On 1/21/21 8:13 PM, Martin Liška wrote: Yes, it will be a better place! Martin There's an updated version of the patch. Thoughts? Thanks, Martin >From 0be300d1d69e98624f7be5b54931126965f1436e Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Fri, 22 Jan 2021 14:00:30 +0100 Subject

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-22 Thread Martin Liška
On 1/22/21 2:07 PM, Jan Hubicka wrote: This is OK. To save future debugging, perhaps I would keep the code printing the tp first run value to dump file and do fprintf (dump_file, "Read tp_first_run: %d; ignored because profile reproducibility is multithreaded\n", node->tp_first_r

[PATCH] gcov: use mmap pools for KVP.

2021-01-22 Thread Martin Liška
Hello. AS mentioned here, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97461#c25, I like what Richard suggested. So instead of usage of malloc, we should use mmap memory chunks that serve as a memory pool for struct gcov_kvp. Malloc is used as a fallback when mmap is not available. I also drop

Re: [stage1][PATCH] Change semantics of -frecord-gcc-switches and add -frecord-gcc-switches-format.

2021-01-22 Thread Martin Liška
PING^3 On 1/14/21 10:03 AM, Martin Liška wrote: PING^2 On 1/6/21 3:21 PM, Martin Liška wrote: PING On 12/4/20 2:30 PM, Martin Liška wrote: On 12/4/20 10:03 AM, Richard Biener wrote: Otherwise 0001- looks good to me. Pushed that to master. As said I'd like to see opinions from othe

Re: [PATCH] gcov: use mmap pools for KVP.

2021-01-22 Thread Martin Liška
On 1/22/21 2:38 PM, Jan Hubicka wrote: This looks like reasonable solution for Linux (i was thinking of it too) but I wonder what about setups w/o mmap support, like mingw32? The code still uses malloc approach then. I think we need some fallback there. I was wondering if simply disabling to

Re: [PATCH] gcov: use mmap pools for KVP.

2021-01-22 Thread Martin Liška
On 1/22/21 3:10 PM, Jan Hubicka wrote: On Fri, Jan 22, 2021 at 2:42 PM Martin Liška wrote: On 1/22/21 2:38 PM, Jan Hubicka wrote: This looks like reasonable solution for Linux (i was thinking of it too) but I wonder what about setups w/o mmap support, like mingw32? The code still uses

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-22 Thread Martin Liška
On 1/22/21 2:51 PM, Jan Hubicka wrote: diff --git a/Makefile.in b/Makefile.in index 247cb9c8711..03785200dc7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -565,7 +565,7 @@ STAGEprofile_TFLAGS = $(STAGE2_TFLAGS) STAGEtrain_CFLAGS = $(filter-out -fchecking=1,$(STAGE3_CFLAGS)) STAGEtrain_TFLAGS

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-22 Thread Martin Liška
There's a simpler patch that can restore the behavior. TOP N counter pruning is elided. Martin >From 4b4956acfda45f6102338a27a9c962171ca4094b Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Fri, 22 Jan 2021 11:27:16 +0100 Subject: [PATCH] Restore profile reproducibility. gcc/ChangeLog: PR g

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-25 Thread Martin Liška
On 1/21/21 7:40 PM, Martin Liška wrote: Most of the changes are in known contexts: I've made some progress here, but still I'm unable to get a reproducible build. Now I see difference in: 161/ 649: cp/decl.o: different 180/ 649: cp/parser.o: different 262/ 649: gener

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-25 Thread Martin Liška
On 1/22/21 3:51 PM, Jan Hubicka wrote: gcc/ChangeLog: PR gcov-profile/98739 * common.opt: Add missing sign symbol. * value-prof.c (get_nth_most_common_value): Restore handling of PROFILE_REPRODUCIBILITY_PARALLEL_RUNS and PROFILE_REPRODUCIBILITY_MULTITHREAD

Re: [PATCH] gcov: use mmap pools for KVP.

2021-01-25 Thread Martin Liška
On 1/22/21 3:33 PM, Jan Hubicka wrote: It is definitly doable (gcov machinery is quite flexible WRT having more types of counters). Yes, that would introduce back the dropped TOPN counters which I intentionally dropped. We could bring back topn counters or the easier dominating vlaue ones and

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-25 Thread Martin Liška
On 1/25/21 4:06 PM, H.J. Lu wrote: On Mon, Jan 25, 2021 at 4:54 AM Martin Liška wrote: On 1/22/21 3:51 PM, Jan Hubicka wrote: gcc/ChangeLog: PR gcov-profile/98739 * common.opt: Add missing sign symbol. * value-prof.c (get_nth_most_common_value): Restore handling of

Re: [PATCH] Drop profile reproducibility flag as it is not used.

2021-01-26 Thread Martin Liška
On 1/25/21 3:55 PM, Jan Hubicka wrote: I've just installed the patch. About the negative total value. Something similar can handle it: diff --git a/libgcc/libgcov.h b/libgcc/libgcov.h index df08e882dd7..ddc688509bd 100644 --- a/libgcc/libgcov.h +++ b/libgcc/libgcov.h @@ -443,7 +443,13 @@ gcov_to

[PATCH] liblsan: build missing lsan_posix.cpp file

2021-01-26 Thread Martin Liška
This fixes: gcc a.c -fsanitize=leak /usr/bin/ld: /home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/11.0.0/../../../../lib64/liblsan.so: undefined reference to `__lsan::GetThreadRangesLocked(unsigned long long, unsigned long*, unsigned long*, unsigned long*, unsigned long*, unsigned long*, un

Re: [PATCH] gcov: use mmap pools for KVP.

2021-01-29 Thread Martin Liška
PING^1 On 1/25/21 1:51 PM, Martin Liška wrote: On 1/22/21 3:33 PM, Jan Hubicka wrote: It is definitly doable (gcov machinery is quite flexible WRT having more types of counters). Yes, that would introduce back the dropped TOPN counters which I intentionally dropped. We could bring back

Re: [stage1][PATCH] Change semantics of -frecord-gcc-switches and add -frecord-gcc-switches-format.

2021-01-29 Thread Martin Liška
PING^4 On 1/22/21 2:33 PM, Martin Liška wrote: PING^3 On 1/14/21 10:03 AM, Martin Liška wrote: PING^2 On 1/6/21 3:21 PM, Martin Liška wrote: PING On 12/4/20 2:30 PM, Martin Liška wrote: On 12/4/20 10:03 AM, Richard Biener wrote: Otherwise 0001- looks good to me. Pushed that to master

[PATCH] Add test-case.

2021-02-02 Thread Martin Liška
Pushed to master. gcc/testsuite/ChangeLog: PR target/97510 * gcc.target/i386/pr97510.c: New test. --- gcc/testsuite/gcc.target/i386/pr97510.c | 18 ++ 1 file changed, 18 insertions(+) create mode 100644 gcc/testsuite/gcc.target/i386/pr97510.c diff --git a/gcc/t

[PATCH] Fill up padding in lto_section struct.

2021-02-03 Thread Martin Liška
The patch is about filling a padding byte that is later streamed with memcpy. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: PR lto/98912 * lto-streamer-out.c (produce_lto_section): Fill up missing

[PATCH] doc: mention -mprefer-vector-width in target attrs

2021-02-03 Thread Martin Liška
The patch documents -mprefer-vector-width which is a valid target attribute/pragma. Ready for master? Thanks, Martin gcc/ChangeLog: * doc/extend.texi: Mention -mprefer-vector-width in target attributes. gcc/testsuite/ChangeLog: * gcc.target/i386/prefer-vector-width-at

Re: [PATCH] doc: mention -mprefer-vector-width in target attrs

2021-02-04 Thread Martin Liška
On 2/3/21 4:34 PM, Marek Polacek wrote: On Wed, Feb 03, 2021 at 04:15:24PM +0100, Martin Liška wrote: The patch documents -mprefer-vector-width which is a valid target attribute/pragma. diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 8daa1c67974..a14875cec37 100644 --- a/gcc

[PATCH] Change semantics of -frecord-gcc-switches and add -frecord-gcc-switches-format.

2021-02-05 Thread Martin Liška
Hello. Based on discussion with Richi, I'm re-sending the patch. Note that the patch has been waiting for a review for almost one year and I would like to see it in GCC 11.1. Thank you, Martin >From 4cb8475a40464d5b7805ececb280bb2463d3caa4 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Fri,

[PATCH] debug: fix switch lowering debug info

2021-02-05 Thread Martin Liška
I'm sending Tom's patch that was approved by Jakub in the PR. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. I'm going to install it. Thanks, Martin gcc/ChangeLog: PR debug/98656 * tree-switch-conversion.c (jump_table_cluster::emit): Add loc argu

[PATCH] opts: fix handling of -fpatchable-function-entries option

2021-02-05 Thread Martin Liška
Hello. As seen the flag -fpatchable-function-entry is properly marked as Optimization. However, it's the argument is parsed early and stored into the following tuple: ; How many NOP insns to place at each function entry by default Variable HOST_WIDE_INT function_entry_patch_area_size ; And how

Re: [PATCH] mklog: automatically fill in generated entries

2021-02-08 Thread Martin Liška
On 2/7/21 9:20 PM, Mike Frysinger via Gcc-patches wrote: contrib/ChangeLog: * mklog.py (generated_files): New set. (generate_changelog): Add entries based on generated_files. --- contrib/mklog.py | 5 + 1 file changed, 5 insertions(+) diff --git a/contrib/mklog.py b/contr

Re: [PATCH] gcov: use mmap pools for KVP.

2021-02-09 Thread Martin Liška
PING^2 @Honza: ? On 1/29/21 2:33 PM, Martin Liška wrote: PING^1 On 1/25/21 1:51 PM, Martin Liška wrote: On 1/22/21 3:33 PM, Jan Hubicka wrote: It is definitly doable (gcov machinery is quite flexible WRT having more types of counters). Yes, that would introduce back the dropped TOPN

[PATCH] if-to-switch: fix a memory leak

2021-02-09 Thread Martin Liška
The following fixes a memory leak. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: PR tree-optimization/99002 * gimple-if-to-switch.cc (find_conditions): Fix memory leak in the function. --- gc

[PATCH] ICF: fix memory leak

2021-02-09 Thread Martin Liška
The following fixes a memory leak. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: PR ipa/99003 * ipa-icf.c (sem_item::add_reference): Fix memory leak when a reference exists. --- gcc/ipa-icf.c

[PATCH] if-to-switch: fix memory leak in case merging

2021-02-10 Thread Martin Liška
This one fixes 2 more memory leaks. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. I also tested that building postgresql with valgrind does not display anything related to the affected files. Ready to be installed? Thanks, Martin gcc/ChangeLog: PR tree-optimiza

[PATCH] nvptx: properly use flag_patchable_function_entry

2021-02-10 Thread Martin Liška
It's fix needed after my commit g:0d701e3eb89870237669ef7bf41394d90c35ae70. Tobias tested the patch for me. Ready to be installed? Thanks, Martin gcc/ChangeLog: * config/nvptx/nvptx.c (nvptx_option_override): Use flag_patchable_function_entry instead of the removed funct

[PATCH] Fix producer string memory leaks

2021-02-11 Thread Martin Liška
Hello. This fixes 2 memory leaks I noticed. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: * opts-common.c (decode_cmdline_option): Release werror_arg. * opts.c (gen_producer_string): Release output o

Re: [PATCH] Fix producer string memory leaks

2021-02-15 Thread Martin Liška
On 2/12/21 5:56 PM, Martin Sebor wrote: On 2/12/21 2:09 AM, Richard Biener via Gcc-patches wrote: On Thu, Feb 11, 2021 at 6:41 PM Martin Liška wrote: Hello. This fixes 2 memory leaks I noticed. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed

[PATCH][pushed] Add 2 missing Param keywords.

2021-02-15 Thread Martin Liška
Pushed as obvious. Martin gcc/ChangeLog: * params.opt: Add 2 missing Param keywords. --- gcc/params.opt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/params.opt b/gcc/params.opt index c633648d047..a4e1ac0e88e 100644 --- a/gcc/params.opt +++ b/gcc/params.op

[PATCH] profiling: fix streaming of TOPN counters

2021-02-16 Thread Martin Liška
Hello. As Honza noticed, when using GCC 11 during train run of Clang leads to very slow training run. Apparently, it's caused by a corrupted TOP N profile. The patch fixed that by preallocating a buffer that is latter stream out. With the patch, I can profiledbootstrap GCC and the instrumented c

Re: [PATCH] Make switchconv smarter.

2021-02-16 Thread Martin Liška
On 2/16/21 12:30 AM, Jeff Law wrote: Given this is "just" a missed optimization, are we deferring to gcc-12? Yes. Thanks, Martin

Re: [PATCH] profiling: fix streaming of TOPN counters

2021-02-17 Thread Martin Liška
On 2/16/21 9:46 PM, Richard Biener wrote: Looks like this can only shrink the race window. Yes, kind of. Don't you need atomic accesses or locking here? Can the number of counters change? So what we do: we want to stream out N TOPN counters where each looks like this: {total_count, number

Re: [PATCH] profiling: fix streaming of TOPN counters

2021-02-17 Thread Martin Liška
On 2/17/21 9:36 AM, Martin Liška wrote: I'll write it even more robust... This is more elegant approach I've just tested on the instrumented clang. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Ma

Re: [PATCH] Change semantics of -frecord-gcc-switches and add -frecord-gcc-switches-format.

2021-02-18 Thread Martin Liška
g for quite some time. Could this one be approved and committed to gcc11? @richi: ? Thanks, Martin Thanks. Qing On Feb 5, 2021, at 3:34 AM, Martin Liška wrote: Hello. Based on discussion with Richi, I'm re-sending the patch. Note that the patch has been waiting for a review for almos

Re: [PATCH] profiling: fix streaming of TOPN counters

2021-02-18 Thread Martin Liška
On 2/18/21 10:31 AM, Richard Biener wrote: On Wed, Feb 17, 2021 at 2:16 PM Martin Liška wrote: On 2/17/21 9:36 AM, Martin Liška wrote: I'll write it even more robust... This is more elegant approach I've just tested on the instrumented clang. Patch can bootstrap on x86_64-lin

Re: [PATCH] profiling: fix streaming of TOPN counters

2021-02-18 Thread Martin Liška
On 2/18/21 11:02 AM, Richard Biener wrote: On Thu, Feb 18, 2021 at 10:46 AM Martin Liška wrote: On 2/18/21 10:31 AM, Richard Biener wrote: On Wed, Feb 17, 2021 at 2:16 PM Martin Liška wrote: On 2/17/21 9:36 AM, Martin Liška wrote: I'll write it even more robust... This is more el

[PATCH] C++: target attribute - local decl

2021-02-18 Thread Martin Liška
We crash when target attribute get_function_versions_dispatcher is called for a function that is not registered in call graph. This fixes that by emitting a new error. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/cp/ChangeLog:

[PATCH][obvious] Fix typo in param description.

2021-02-19 Thread Martin Liška
Pushed to master as obvious. Martin gcc/ChangeLog: PR translation/99167 * params.opt: Fix typo. --- gcc/params.opt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/params.opt b/gcc/params.opt index a4e1ac0e88e..0dd9ac406eb 100644 --- a/gcc/params.opt +++

[PATCH] Fix ICE in tree_inlinable_function_p.

2021-02-20 Thread Martin Liška
After g:1a2a7096e5e20d736c6138179470b21aa5a74864 we forbid inlining for a VLA types. What we miss is setting inline_forbidden_reason variable. Fixes: ./xgcc -B. -O3 -c /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/pr99122-2.c -Winline during GIMPLE pass: local-fnsummary /home/marxin/Progra

Re: [PATCH] gcov: use mmap pools for KVP.

2021-02-22 Thread Martin Liška
PING^3 On 2/9/21 9:37 AM, Martin Liška wrote: PING^2 @Honza: ? On 1/29/21 2:33 PM, Martin Liška wrote: PING^1 On 1/25/21 1:51 PM, Martin Liška wrote: On 1/22/21 3:33 PM, Jan Hubicka wrote: It is definitly doable (gcov machinery is quite flexible WRT having more types of counters). Yes

[PATCH] IPA ICF + ASAN: do not merge vars with different alignment

2021-02-23 Thread Martin Liška
Hello. The patch is about confusion that brings ICF when it merged 2 variables with different alignments (when ASAN is used). Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: PR sanitizer/99168 * ipa-ic

[PATCH][pushed] Fix UBSAN in __ubsan::Value::getSIntValue

2021-02-23 Thread Martin Liška
The patch is LLVM backport. Applied to master. /home/marxin/Programming/gcc2/libsanitizer/ubsan/ubsan_value.cpp:77:25: runtime error: left shift of 0xfffb by 96 places cannot be represented in type '__int128' #0 0x7754edfe in __ubsan::Value::getSIntValue() c

Re: [PATCH] IPA ICF + ASAN: do not merge vars with different alignment

2021-02-23 Thread Martin Liška
On 2/23/21 12:56 PM, Richard Biener wrote: Can't we fix the asan runtime? Does the same issue happen when merging two comdat with different alignment and LTO? All right, there's a detail explanation what happens. Let's consider the following example: struct my_struct { unsigned long volatil

Re: [PATCH] IPA ICF + ASAN: do not merge vars with different alignment

2021-02-23 Thread Martin Liška
On 2/23/21 3:32 PM, Richard Biener wrote: On Tue, Feb 23, 2021 at 3:22 PM Martin Liška wrote: On 2/23/21 12:56 PM, Richard Biener wrote: Can't we fix the asan runtime? Does the same issue happen when merging two comdat with different alignment and LTO? All right, there'

Re: [PATCH] IPA ICF + ASAN: do not merge vars with different alignment

2021-02-23 Thread Martin Liška
On 2/23/21 3:55 PM, Richard Biener wrote: On Tue, Feb 23, 2021 at 3:41 PM Martin Liška wrote: On 2/23/21 3:32 PM, Richard Biener wrote: On Tue, Feb 23, 2021 at 3:22 PM Martin Liška wrote: On 2/23/21 12:56 PM, Richard Biener wrote: Can't we fix the asan runtime? Does the same

Re: [PATCH] Change semantics of -frecord-gcc-switches and add -frecord-gcc-switches-format.

2021-03-01 Thread Martin Liška
PING On 2/18/21 10:18 AM, Martin Liška wrote: On 2/16/21 10:17 PM, Qing Zhao wrote: Hello, What’s the status of this patch now? Is there any major technical issue with the patch? Our company has been waiting for this patch for almost one year, we need it for our important application

Re: [PATCH] C++: target attribute - local decl

2021-03-01 Thread Martin Liška
On 2/22/21 11:53 PM, Jason Merrill wrote: The problem seems to be with the handling of local decls.  If DECL_LOCAL_DECL_P, you need to look at DECL_LOCAL_DECL_ALIAS to find the namespace-scope decl.  But then if there is no preceding namespace-scope declaration, the new decl created by push_lo

[PATCH][pushed] s390: add exceptions for param modified by target pragma

2021-03-01 Thread Martin Liška
There are 4 more exceptions for params that are modified in target pragma. Martin gcc/ChangeLog: PR target/99313 * optc-save-gen.awk: Add 4 more exceptions. gcc/testsuite/ChangeLog: PR target/99313 * gcc.target/s390/target-attribute/pr99313.c: New test. --- gc

Re: [PATCH] C++: target attribute - local decl

2021-03-01 Thread Martin Liška
On 3/1/21 5:36 PM, Jason Merrill wrote: On 3/1/21 7:43 AM, Martin Liška wrote: On 2/22/21 11:53 PM, Jason Merrill wrote: The problem seems to be with the handling of local decls.  If DECL_LOCAL_DECL_P, you need to look at DECL_LOCAL_DECL_ALIAS to find the namespace-scope decl.  But then if

Re: [PATCH] C++: target attribute - local decl

2021-03-02 Thread Martin Liška
On 3/1/21 8:58 PM, Jason Merrill wrote: On 3/1/21 11:59 AM, Martin Liška wrote: On 3/1/21 5:36 PM, Jason Merrill wrote: On 3/1/21 7:43 AM, Martin Liška wrote: On 2/22/21 11:53 PM, Jason Merrill wrote: The problem seems to be with the handling of local decls.  If DECL_LOCAL_DECL_P, you need

[PATCH] analyzer: remove dead code

2021-03-02 Thread Martin Liška
The issue is reported by Clang: warning: private field 'm_engine' is not used [-Wunused-private-field] gcc/analyzer/ChangeLog: * diagnostic-manager.cc (diagnostic_manager::emit_saved_diagnostics): Do not pass engine. --- gcc/analyzer/diagnostic-manager.cc | 6 +- 1 file cha

Re: [PATCH] analyzer: remove dead code

2021-03-02 Thread Martin Liška
On 3/2/21 2:38 PM, David Malcolm wrote: On Tue, 2021-03-02 at 11:38 +0100, Martin Liška wrote: The issue is reported by Clang: warning: private field 'm_engine' is not used [-Wunused-private- field] Thanks; FWIW I think I removed the usage in a505fad4dd4d93b6d642995d7df320aa409495

Re: GCC 10 backports

2021-03-03 Thread Martin Liška
One more backport I've just tested. Martin >From 1740f6453356fec7926e360b3a379ca0fa80a1da Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Fri, 5 Feb 2021 10:36:38 +0100 Subject: [PATCH] debug: fix switch lowering debug info gcc/ChangeLog: PR debug/98656 * tree-switch-conversion.c (jump_tab

Re: [PATCH] profiling: fix streaming of TOPN counters

2021-03-03 Thread Martin Liška
On 3/3/21 12:26 PM, Jan Hubicka wrote: libgcc/ChangeLog: PR gcov-profile/99105 * libgcov-driver.c (write_top_counters): Rename to ... (write_topn_counters): ... this. (write_one_data): Pre-allocate buffer for number of items in the corresponding linked li

Re: [PATCH] C++: target attribute - local decl

2021-03-04 Thread Martin Liška
On 3/2/21 6:57 PM, Jason Merrill wrote: On 3/2/21 5:34 AM, Martin Liška wrote: On 3/1/21 8:58 PM, Jason Merrill wrote: On 3/1/21 11:59 AM, Martin Liška wrote: On 3/1/21 5:36 PM, Jason Merrill wrote: On 3/1/21 7:43 AM, Martin Liška wrote: On 2/22/21 11:53 PM, Jason Merrill wrote: The

[PATCH][pushed] gcov: call mmap MAP_ANONYMOUS with fd equal to -1

2021-03-04 Thread Martin Liška
Pushed as obvious. Martin libgcc/ChangeLog: PR gcov-profile/99385 * libgcov.h (allocate_gcov_kvp): Call mmap with fd equal to -1. --- libgcc/libgcov.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libgcc/libgcov.h b/libgcc/libgcov.h index 9c5fcfba4ad..acdb

Re: [PATCH] profiling: fix streaming of TOPN counters

2021-03-04 Thread Martin Liška
On 3/4/21 1:50 PM, Jan Hubicka wrote: .../gcc.dg/tree-prof/indir-call-prof-malloc.c | 2 +- gcc/testsuite/gcc.dg/tree-prof/pr97461.c | 2 +- libgcc/libgcov-driver.c | 56 --- 3 files changed, 50 insertions(+), 10 deletions(-) diff --git a/gcc/tes

Re: [PATCH] C++: target attribute - local decl

2021-03-04 Thread Martin Liška
On 3/4/21 4:03 PM, Jason Merrill wrote: Do you really need to register all these pairs?  I was expecting that you'd just look through DECL_LOCAL_DECL_ALIAS and then register the pair you end up  with.  Local decls shouldn't need a cgraph node. Well, doing that: commit 662c486edafa467ec41091e

Re: [PATCH] C++: target attribute - local decl

2021-03-04 Thread Martin Liška
On 3/4/21 4:45 PM, Jason Merrill wrote: Sure, I guess you do need to set that flag for the local decls, but that should  be all. Jason Doing that also fails :/ This time likely due to how we set RECORD argument of maybe_version_functions function: gcc/cp/decl.c:&& maybe_version_function

Re: [PATCH] C++: target attribute - local decl

2021-03-08 Thread Martin Liška
On 3/4/21 9:54 PM, Jason Merrill wrote: On 3/4/21 10:52 AM, Martin Liška wrote: On 3/4/21 4:45 PM, Jason Merrill wrote: Sure, I guess you do need to set that flag for the local decls, but that should  be all. Jason Doing that also fails :/ This time likely due to how we set RECORD argument

<    1   2   3   4   5   6   7   8   9   10   >