public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "chefmax at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug sanitizer/66908] Uninitialized variable when compiled with UBsan Date: Wed, 22 Jul 2015 17:47:00 -0000 [thread overview] Message-ID: <bug-66908-4-brxwBQFEhs@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-66908-4@http.gcc.gnu.org/bugzilla/> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66908 --- Comment #12 from Maxim Ostapenko <chefmax at gcc dot gnu.org> --- (In reply to Marek Polacek from comment #11) > Hmm, still can't reproduce even with vanilla trunk: > > A = A.0; > D.2679 = get.__pfn; > D.2680 = (long int) D.2679; > D.2681 = D.2680 & 1; > if (D.2681 == 0) goto <D.2682>; else goto <D.2683>; > <D.2682>: > iftmp.1 = get.__pfn; > goto <D.2684>; > <D.2683>: > D.2685 = get.__delta; > D.2686 = (sizetype) D.2685; > D.2687 = A + D.2686; > D.2688 = MEM[(int (*__vtbl_ptr_type) () * *)D.2687]; > D.2689 = get.__pfn; > D.2690 = (long int) D.2689; > D.2691 = D.2690 + -1; > D.2692 = (sizetype) D.2691; > D.2693 = D.2688 + D.2692; > iftmp.1 = *D.2693; > <D.2684>: > D.2694 = get.__delta; > D.2695 = (sizetype) D.2694; > D.2696 = A + D.2695; > result = iftmp.1 (D.2696); > operator delete (A); > D.2697 = result; > return D.2697; > > I don't see the shifts at all. And you should not, this is ARM - specific. From C++ ABI for the ARM Architecture: "3.2.1 Representation of pointer to member function The generic C++ ABI [GC++ABI] specifies that a pointer to member function is a pair of words <ptr, adj>. The least significant bit of ptr discriminates between (0) the address of a non-virtual member function and (1) the offset in the class’s virtual table of the address of a virtual function. This encoding cannot work for the ARM-Thumb instruction set where code addresses use all 32 bits of ptr. This ABI specifies that adj contains twice the this adjustment, plus 1 if the member function is virtual. The least significant bit of adj then makes exactly the same discrimination as the least significant bit of ptr does for Itanium. A pointer to member function is NULL when ptr = 0 and the least significant bit of adj is zero." Perhaps I should cook x86 reproducer. >From gcc-bugs-return-493044-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Jul 22 18:02:10 2015 Return-Path: <gcc-bugs-return-493044-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org> Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 72956 invoked by alias); 22 Jul 2015 18:02:09 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: <gcc-bugs.gcc.gnu.org> List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/> List-Post: <mailto:gcc-bugs@gcc.gnu.org> List-Help: <mailto:gcc-bugs-help@gcc.gnu.org> Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 72913 invoked by uid 55); 22 Jul 2015 18:02:05 -0000 From: "uros at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug target/66954] function multiversioning fails for target "aes" Date: Wed, 22 Jul 2015 18:02:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 5.2.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: enhancement X-Bugzilla-Who: uros at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: <bug-66954-4-PRkKHd2zVI@http.gcc.gnu.org/bugzilla/> In-Reply-To: <bug-66954-4@http.gcc.gnu.org/bugzilla/> References: <bug-66954-4@http.gcc.gnu.org/bugzilla/> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-07/txt/msg01934.txt.bz2 Content-length: 972 https://gcc.gnu.org/bugzilla/show_bug.cgi?idf954 --- Comment #2 from uros at gcc dot gnu.org --- Author: uros Date: Wed Jul 22 18:01:33 2015 New Revision: 226081 URL: https://gcc.gnu.org/viewcvs?rev"6081&root=gcc&view=rev Log: libgcc/ChangeLog: PR target/66954 * config/i386/cpuinfo.c (enum processor_features): Add FEATURE_AES. (get_available_features): Handle FEATURE_AES. gcc/ChangeLog: PR target/66954 * config/i386/i386.c (get_builtin_code_for_version): Add P_AES to enum feature_priority and feature_list. (fold_builtin_cpu): Add F_AES to enum processor_features and isa_names_table. gcc/testsuite/ChangeLog: PR target/66954 * g++.dg/ext/mv24.C: New test. Added: trunk/gcc/testsuite/g++.dg/ext/mv24.C Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.c trunk/gcc/testsuite/ChangeLog trunk/libgcc/ChangeLog trunk/libgcc/config/i386/cpuinfo.c
next prev parent reply other threads:[~2015-07-22 17:47 UTC|newest] Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-07-17 10:48 [Bug sanitizer/66908] New: " m.guseva at samsung dot com 2015-07-20 18:20 ` [Bug sanitizer/66908] " y.gribov at samsung dot com 2015-07-21 12:34 ` mpolacek at gcc dot gnu.org 2015-07-21 13:48 ` mpolacek at gcc dot gnu.org 2015-07-21 14:40 ` mpolacek at gcc dot gnu.org 2015-07-22 7:38 ` chefmax at gcc dot gnu.org 2015-07-22 8:21 ` mpolacek at gcc dot gnu.org 2015-07-22 12:07 ` mpolacek at gcc dot gnu.org 2015-07-22 12:40 ` mpolacek at gcc dot gnu.org 2015-07-22 14:36 ` mpolacek at gcc dot gnu.org 2015-07-22 15:03 ` chefmax at gcc dot gnu.org 2015-07-22 15:26 ` mpolacek at gcc dot gnu.org 2015-07-22 17:47 ` chefmax at gcc dot gnu.org [this message] 2015-07-23 13:56 ` mpolacek at gcc dot gnu.org 2015-07-23 13:58 ` chefmax at gcc dot gnu.org 2015-08-11 15:47 ` mpolacek 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-66908-4-brxwBQFEhs@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).