public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug analyzer/101082] New: new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE
@ 2021-06-15 16:55 seurer at gcc dot gnu.org
  2021-06-15 18:53 ` [Bug analyzer/101082] " dmalcolm at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: seurer at gcc dot gnu.org @ 2021-06-15 16:55 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101082

            Bug ID: 101082
           Summary: new test case gcc.dg/analyzer/bitfields-1.c from
                    r12-1303 fails on BE
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: analyzer
          Assignee: dmalcolm at gcc dot gnu.org
          Reporter: seurer at gcc dot gnu.org
  Target Milestone: ---

g:d3b1ef7a83c0c0cd5b20a1dd1714b868f3d2b442, r12-1303

These fail on BE on powerpc64.

make  -k check-gcc RUNTESTFLAGS="analyzer.exp=gcc.dg/analyzer/bitfields-1.c"
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 24)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 26)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 29)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 31)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 36)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 41)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 81)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 83)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 85)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 87)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 92)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 94)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 96)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 113)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 115)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 117)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 119)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 121)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 123)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 125)
FAIL: gcc.dg/analyzer/bitfields-1.c  (test for warnings, line 127)
FAIL: gcc.dg/analyzer/bitfields-1.c (test for excess errors)
# of expected passes            12
# of unexpected failures        22

Excess errors:
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:24:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:26:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:29:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:31:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:36:3:
warning: FALSE
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:41:3:
warning: FALSE
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:81:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:83:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:85:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:87:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:92:3:
warning: FALSE
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:94:3:
warning: FALSE
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:96:3:
warning: FALSE
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:113:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:115:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:117:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:119:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:121:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:123:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:125:3:
warning: UNKNOWN
/home/seurer/gcc/git/gcc-test/gcc/testsuite/gcc.dg/analyzer/bitfields-1.c:127:3:
warning: UNKNOWN


commit d3b1ef7a83c0c0cd5b20a1dd1714b868f3d2b442
Author: David Malcolm <dmalcolm@redhat.com>
Date:   Tue Jun 8 14:45:57 2021 -0400

    analyzer: bitfield fixes [PR99212]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug analyzer/101082] new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE
  2021-06-15 16:55 [Bug analyzer/101082] New: new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE seurer at gcc dot gnu.org
@ 2021-06-15 18:53 ` dmalcolm at gcc dot gnu.org
  2021-06-15 19:12 ` seurer at gcc dot gnu.org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: dmalcolm at gcc dot gnu.org @ 2021-06-15 18:53 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101082

David Malcolm <dmalcolm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2021-06-15
             Status|UNCONFIRMED                 |ASSIGNED

--- Comment #1 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
Sorry about this.  As noted in
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99212#c18 I'm testing a fix for
targets where BYTES_BIG_ENDIAN is set; FWIW the fix seems to work on
--target=powerpc64-darwin.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug analyzer/101082] new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE
  2021-06-15 16:55 [Bug analyzer/101082] New: new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE seurer at gcc dot gnu.org
  2021-06-15 18:53 ` [Bug analyzer/101082] " dmalcolm at gcc dot gnu.org
@ 2021-06-15 19:12 ` seurer at gcc dot gnu.org
  2021-06-15 21:54 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: seurer at gcc dot gnu.org @ 2021-06-15 19:12 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101082

--- Comment #2 from seurer at gcc dot gnu.org ---
Ah, crud.  I picked the wrong test case to look at.  If I'd searched on
gcc.dg/analyzer/data-model-1.c I would have seen that other PR.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug analyzer/101082] new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE
  2021-06-15 16:55 [Bug analyzer/101082] New: new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE seurer at gcc dot gnu.org
  2021-06-15 18:53 ` [Bug analyzer/101082] " dmalcolm at gcc dot gnu.org
  2021-06-15 19:12 ` seurer at gcc dot gnu.org
@ 2021-06-15 21:54 ` cvs-commit at gcc dot gnu.org
  2021-06-15 21:57 ` dmalcolm at gcc dot gnu.org
  2021-07-02 19:22 ` cvs-commit at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-06-15 21:54 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101082

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by David Malcolm <dmalcolm@gcc.gnu.org>:

https://gcc.gnu.org/g:ec3fafa9ec7d16b9d89076efd3bac1d1af0502b8

commit r12-1491-gec3fafa9ec7d16b9d89076efd3bac1d1af0502b8
Author: David Malcolm <dmalcolm@redhat.com>
Date:   Tue Jun 15 17:53:34 2021 -0400

    analyzer: fix bitfield endianness issues [PR99212,PR101082]

    Looks like my patch for PR analyzer/99212 implicitly assumed
    little-endian, which the following patch fixes.

    Fixes bitfields-1.c on:
    - armeb-none-linux-gnueabihf
    - cris-elf
    - powerpc64-darwin
    - s390-linux-gnu

    gcc/analyzer/ChangeLog:
            PR analyzer/99212
            PR analyzer/101082
            * engine.cc: Include "target.h".
            (impl_run_checkers): Log BITS_BIG_ENDIAN, BYTES_BIG_ENDIAN, and
            WORDS_BIG_ENDIAN.
            * region-model-manager.cc
            (region_model_manager::maybe_fold_binop): Move support for masking
            via ARG0 & CST into...
            (region_model_manager::maybe_undo_optimize_bit_field_compare):
            ...this new function.  Flatten by converting from nested
            conditionals to a series of early return statements to reject
            failures.  Reject if type is not unsigned_char_type_node.
            Handle BYTES_BIG_ENDIAN when determining which bits are bound
            in the binding_map.
            * region-model.h
            (region_model_manager::maybe_undo_optimize_bit_field_compare):
            New decl.
            * store.cc (bit_range::dump): New function.
            * store.h (bit_range::dump): New decl.

    Signed-off-by: David Malcolm <dmalcolm@redhat.com>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug analyzer/101082] new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE
  2021-06-15 16:55 [Bug analyzer/101082] New: new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE seurer at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2021-06-15 21:54 ` cvs-commit at gcc dot gnu.org
@ 2021-06-15 21:57 ` dmalcolm at gcc dot gnu.org
  2021-07-02 19:22 ` cvs-commit at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: dmalcolm at gcc dot gnu.org @ 2021-06-15 21:57 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101082

David Malcolm <dmalcolm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #4 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
Should be fixed by the above commit.  Please reopen if it's still failing on
another target.  Sorry again for the breakage.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug analyzer/101082] new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE
  2021-06-15 16:55 [Bug analyzer/101082] New: new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE seurer at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2021-06-15 21:57 ` dmalcolm at gcc dot gnu.org
@ 2021-07-02 19:22 ` cvs-commit at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-07-02 19:22 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101082

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by David Malcolm
<dmalcolm@gcc.gnu.org>:

https://gcc.gnu.org/g:21b470a9c976f3db7cce6d58a07c58a58676f93c

commit r11-8681-g21b470a9c976f3db7cce6d58a07c58a58676f93c
Author: David Malcolm <dmalcolm@redhat.com>
Date:   Fri Jul 2 15:19:46 2021 -0400

    analyzer: fix bitfield endianness issues [PR99212,PR101082]

    Looks like my patch for PR analyzer/99212 implicitly assumed
    little-endian, which the following patch fixes.

    Fixes bitfields-1.c on:
    - armeb-none-linux-gnueabihf
    - cris-elf
    - powerpc64-darwin
    - s390-linux-gnu

    gcc/analyzer/ChangeLog:
            PR analyzer/99212
            PR analyzer/101082
            * engine.cc: Include "target.h".
            (impl_run_checkers): Log BITS_BIG_ENDIAN, BYTES_BIG_ENDIAN, and
            WORDS_BIG_ENDIAN.
            * region-model-manager.cc
            (region_model_manager::maybe_fold_binop): Move support for masking
            via ARG0 & CST into...
            (region_model_manager::maybe_undo_optimize_bit_field_compare):
            ...this new function.  Flatten by converting from nested
            conditionals to a series of early return statements to reject
            failures.  Reject if type is not unsigned_char_type_node.
            Handle BYTES_BIG_ENDIAN when determining which bits are bound
            in the binding_map.
            * region-model.h
            (region_model_manager::maybe_undo_optimize_bit_field_compare):
            New decl.
            * store.cc (bit_range::dump): New function.
            * store.h (bit_range::dump): New decl.

    Signed-off-by: David Malcolm <dmalcolm@redhat.com>

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-07-02 19:22 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-15 16:55 [Bug analyzer/101082] New: new test case gcc.dg/analyzer/bitfields-1.c from r12-1303 fails on BE seurer at gcc dot gnu.org
2021-06-15 18:53 ` [Bug analyzer/101082] " dmalcolm at gcc dot gnu.org
2021-06-15 19:12 ` seurer at gcc dot gnu.org
2021-06-15 21:54 ` cvs-commit at gcc dot gnu.org
2021-06-15 21:57 ` dmalcolm at gcc dot gnu.org
2021-07-02 19:22 ` cvs-commit at gcc dot gnu.org

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).