public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "yevh.kolesnikov at gmail dot com" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug ipa/96482] [10/11 Regression] Combination of -finline-small-functions and ipa-cp optimisations causes incorrect values being passed to a function since r279523 Date: Mon, 10 Aug 2020 14:24:22 +0000 [thread overview] Message-ID: <bug-96482-4-I5ZxFjlu31@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-96482-4@http.gcc.gnu.org/bugzilla/> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96482 --- Comment #5 from Yevhenii Kolesnikov <yevh.kolesnikov at gmail dot com> --- (In reply to Martin Liška from comment #3) > Thank you for the report, I can take a look. > Can you please provide steps how to build Mesa with -O3 and -flto? mesa is configured with meson. LTO can be enabled with builtin option -b_lto=true. Options can be supplied to the compiler with -Dc_args and -Dcpp_args. So, to enable O3 it's -Dc_args="-O3" -Dcpp_args="-O3". You'll also need to set -Dbuildtype=plain, or otherwise these options will be overwritten. So, the full build process will look like this: meson \ -Dbuildtype=plain \ -Dvalgrind=false \ -Ddri-drivers=i965 \ -Dgallium-drivers=iris,swrast \ -Dvulkan-drivers= \ -Dgallium-omx="disabled" \ -Dplatforms=x11,drm,surfaceless \ -Dllvm=false \ -Db_lto=true \ -Dc_args="-g \ -O3 \ " \ -Dcpp_args="-g \ -O3 \ " \ --prefix=~/builds/mesa-bug \ ./mesa-bug ninja -C ./mesa-bug install The aforementioned functions and assembly code then will be in ~/builds/mesa-bug/lib/dri/iris_dri.so > About the addr_to_index function: am I right that unreachable is defined in > your configuration as __builtin_unreachable? To be precise, unreachable is defined like this: #define unreachable(str) \ do { \ assert(!str); \ __builtin_unreachable(); \ } while (0) I'm not sure why this one-time loop is necessary, to be honest. > Can you please replace it with fprintf that prints the value? The value of addr_format? It doesn't print anything, since this branch is never hit. Moreover, it prevents addr_to_index from being inlined, so the crash goes away. The value of addr_format in my case is 3, which corresponds to the nir_address_format_32bit_index_offset enum. So, in my case, the first branch is always hit.
next prev parent reply other threads:[~2020-08-10 14:24 UTC|newest] Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-08-05 11:24 [Bug c/96482] New: Combination of -finline-small-functions and ipa-cp optimisations causes incorrect values being passed to a function yevh.kolesnikov at gmail dot com 2020-08-05 11:27 ` [Bug c/96482] " yevh.kolesnikov at gmail dot com 2020-08-05 11:37 ` [Bug ipa/96482] [10/11 Regression] " rguenth at gcc dot gnu.org 2020-08-10 7:29 ` [Bug ipa/96482] [10/11 Regression] Combination of -finline-small-functions and ipa-cp optimisations causes incorrect values being passed to a function since r279523 marxin at gcc dot gnu.org 2020-08-10 7:41 ` hubicka at gcc dot gnu.org 2020-08-10 14:24 ` yevh.kolesnikov at gmail dot com [this message] 2020-08-10 16:58 ` yevh.kolesnikov at gmail dot com 2020-08-10 20:00 ` marxin at gcc dot gnu.org 2020-08-11 7:08 ` marxin at gcc dot gnu.org 2020-08-11 7:59 ` marxin at gcc dot gnu.org 2020-08-11 7:59 ` marxin at gcc dot gnu.org 2020-08-11 8:02 ` marxin at gcc dot gnu.org 2020-08-11 9:39 ` marxin at gcc dot gnu.org 2020-08-11 15:12 ` marxin at gcc dot gnu.org 2020-08-11 15:33 ` marxin at gcc dot gnu.org 2020-08-11 15:51 ` marxin at gcc dot gnu.org 2020-08-11 16:09 ` marxin at gcc dot gnu.org 2020-08-12 7:38 ` marxin at gcc dot gnu.org 2020-08-12 17:06 ` cvs-commit at gcc dot gnu.org 2020-08-12 17:07 ` [Bug ipa/96482] [10 " marxin at gcc dot gnu.org 2020-08-12 17:40 ` cvs-commit at gcc dot gnu.org 2020-08-12 17:41 ` marxin at gcc dot gnu.org 2020-08-13 8:27 ` cvs-commit at gcc dot gnu.org 2020-08-13 14:12 ` cvs-commit at gcc dot gnu.org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-96482-4-I5ZxFjlu31@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).