public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures
@ 2020-06-26 20:24 dje at gcc dot gnu.org
  2020-06-26 20:24 ` [Bug fortran/95918] " dje at gcc dot gnu.org
                   ` (14 more replies)
  0 siblings, 15 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-26 20:24 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 95918
           Summary: gfortran.dg/char4-subscript.f90 fails for BE
                    architectures
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dje at gcc dot gnu.org
                CC: burnus at gcc dot gnu.org, krebbel at gcc dot gnu.org,
                    segher at gcc dot gnu.org
        Depends on: 95837
  Target Milestone: ---
            Target: powerpc64-linux, powerpc-ibm-aix, s390x-linux

The new gfortran.dg/char4-subscript.f90 testcase fails on all big endian
targets.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95837
[Bug 95837] derived-type components of character kind=4 – wrong code with
component access (kind=4 ignored)

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
@ 2020-06-26 20:24 ` dje at gcc dot gnu.org
  2020-06-27  8:19 ` tkoenig at gcc dot gnu.org
                   ` (13 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-26 20:24 UTC (permalink / raw)
  To: gcc-bugs

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

David Edelsohn <dje at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2020-06-26

--- Comment #1 from David Edelsohn <dje at gcc dot gnu.org> ---
Confirmed.

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
  2020-06-26 20:24 ` [Bug fortran/95918] " dje at gcc dot gnu.org
@ 2020-06-27  8:19 ` tkoenig at gcc dot gnu.org
  2020-06-27 13:35 ` dje at gcc dot gnu.org
                   ` (12 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2020-06-27  8:19 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
The problem is in the scans; the code runs fine.

Does anybody have the dejagnu-fu to run the scans only on little-endian
systems?

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
  2020-06-26 20:24 ` [Bug fortran/95918] " dje at gcc dot gnu.org
  2020-06-27  8:19 ` tkoenig at gcc dot gnu.org
@ 2020-06-27 13:35 ` dje at gcc dot gnu.org
  2020-06-27 19:26 ` segher at gcc dot gnu.org
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-27 13:35 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from David Edelsohn <dje at gcc dot gnu.org> ---
{ target { le } }

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2020-06-27 13:35 ` dje at gcc dot gnu.org
@ 2020-06-27 19:26 ` segher at gcc dot gnu.org
  2020-06-28 11:38 ` tkoenig at gcc dot gnu.org
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: segher at gcc dot gnu.org @ 2020-06-27 19:26 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Segher Boessenkool <segher at gcc dot gnu.org> ---
Or even just  { target le }  yes.  You can put that as the selector on just
the scan tests, and even do a separate BE version as well.

You can quote regexps with {} instead of "", that makes them much more
readable.  The regexps seem to use . where they mean a literal dot, too?
Won't matter too much of course.

! { dg-final { scan-tree-dump "  \\(\\*var\\.str2\\)\\\[1\\\]{lb: 1 sz: 4} =
.d\\\\x00\\\\x00.\\\[1\\\]{lb: 1 sz: 4};" "original" } }

can become

! { dg-final { scan-tree-dump {  \(\*var\.str2\)\[1\]{lb: 1 sz: 4} =
.d\\x00\\x00.\[1\]{lb: 1 sz: 4};} "original" { target le } } }

and whatever BE needs.

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2020-06-27 19:26 ` segher at gcc dot gnu.org
@ 2020-06-28 11:38 ` tkoenig at gcc dot gnu.org
  2020-06-28 11:39 ` tkoenig at gcc dot gnu.org
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2020-06-28 11:38 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
Created attachment 48794
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48794&action=edit
patch for the test case, skipping the test on big-endian targets

This implements Segher's suggestion to skip the test on big-endian.

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2020-06-28 11:38 ` tkoenig at gcc dot gnu.org
@ 2020-06-28 11:39 ` tkoenig at gcc dot gnu.org
  2020-06-28 15:15 ` tkoenig at gcc dot gnu.org
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2020-06-28 11:39 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
Created attachment 48795
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48795&action=edit
Dump file on big-endian system

If anybody wants to do the magic for the patterns on big-endian systems,
here is the dump file to do it with.

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2020-06-28 11:39 ` tkoenig at gcc dot gnu.org
@ 2020-06-28 15:15 ` tkoenig at gcc dot gnu.org
  2020-06-29 17:43 ` dje at gcc dot gnu.org
                   ` (7 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2020-06-28 15:15 UTC (permalink / raw)
  To: gcc-bugs

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

Thomas Koenig <tkoenig at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |seurer at linux dot vnet.ibm.com

--- Comment #7 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
*** Bug 95919 has been marked as a duplicate of this bug. ***

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2020-06-28 15:15 ` tkoenig at gcc dot gnu.org
@ 2020-06-29 17:43 ` dje at gcc dot gnu.org
  2020-06-29 18:39 ` dje at gcc dot gnu.org
                   ` (6 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-29 17:43 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from David Edelsohn <dje at gcc dot gnu.org> ---
It uses . where it wants to consume a quotation mark (").

Because the BE/LE difference is flipping characters, would it negate the
purpose of the test to check for one or zero characters?

! { dg-final { scan-tree-dump {  \(\*var\.str2\)\[1\]{lb: 1 sz: 4} =
.d?\\x00\\x00d?.\[1\]{lb: 1 sz: 4};} "original" } }

In other words, test for the "d" or not at one end, and "d" or not at the other
end.

And the next test would become

! { dg-final { scan-tree-dump "  __builtin_memmove \(\(void \*\) &\(\*var.
str2\)\[2\]{lb: 1 sz: 4}, \(void \*\\) &.e?\\x00\\x00\\x00[ef]\\x00
\\x00f?.\[1\]{lb: 1 sz: 4}, 8\);" "original" } }

Or is a possible failure that the endian was flipped?

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2020-06-29 17:43 ` dje at gcc dot gnu.org
@ 2020-06-29 18:39 ` dje at gcc dot gnu.org
  2020-06-29 19:08 ` dje at gcc dot gnu.org
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-29 18:39 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from David Edelsohn <dje at gcc dot gnu.org> ---
This set of regexps works for me:

! { dg-final { scan-tree-dump {  \(\*var\.str2\)\[1\]{lb: 1 sz: 4} =
"(d\\x00\\x
00|\\x00\\x00\\x00d)"\[1\]{lb: 1 sz: 4};} "original" } }
! { dg-final { scan-tree-dump {  __builtin_memmove \(\(void \*\)
&\(\*var.str2\)
\[2\]{lb: 1 sz: 4}, \(void \*\)
&"(e\\x00\\x00\\x00f\\x00\\x00|\\x00\\x00\\x00e\
\x00\\x00\\x00f)"\[1\]{lb: 1 sz: 4}, 8\);} "original" } }
! { dg-final { scan-tree-dump {  \(\*var.str2\)\[4\]{lb: 1 sz: 4} =
"(\\x00\\xf6
\\x01|\\x00\\x01\\xf6)"\[1\]{lb: 1 sz: 4};} "original" } }
! { dg-final { scan-tree-dump {  \(\*var.str2\)\[5\]{lb: 1 sz: 4} =
"(\\b\\xf6\\
x01|\\x00\\x01\\xf6\\b)"\[1\]{lb: 1 sz: 4};} "original" } }

Okay?

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2020-06-29 18:39 ` dje at gcc dot gnu.org
@ 2020-06-29 19:08 ` dje at gcc dot gnu.org
  2020-06-29 19:10 ` dje at gcc dot gnu.org
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-29 19:08 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from David Edelsohn <dje at gcc dot gnu.org> ---
Created attachment 48809
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48809&action=edit
Updated regex for either endianness

The new patch updates the regexps to accept the result for either endianness. 
And removes the extra quoting from the regexps.

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2020-06-29 19:08 ` dje at gcc dot gnu.org
@ 2020-06-29 19:10 ` dje at gcc dot gnu.org
  2020-06-29 20:00 ` tkoenig at gcc dot gnu.org
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-29 19:10 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 from David Edelsohn <dje at gcc dot gnu.org> ---
With the patch the testcase succeeds on both powerpc-ibm-aix7.2.0.0 (big
endian) and powerpc64-linux (little endian)

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2020-06-29 19:10 ` dje at gcc dot gnu.org
@ 2020-06-29 20:00 ` tkoenig at gcc dot gnu.org
  2020-06-29 20:18 ` dje at gcc dot gnu.org
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2020-06-29 20:00 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #12 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
(In reply to David Edelsohn from comment #11)
> With the patch the testcase succeeds on both powerpc-ibm-aix7.2.0.0 (big
> endian) and powerpc64-linux (little endian)

OK for master and gcc-10 then (unless you prefer to commit this
as simple and obvious :-)

Thanks!

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (11 preceding siblings ...)
  2020-06-29 20:00 ` tkoenig at gcc dot gnu.org
@ 2020-06-29 20:18 ` dje at gcc dot gnu.org
  2020-06-29 20:48 ` tkoenig at gcc dot gnu.org
  2020-06-30 13:24 ` dje at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-29 20:18 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #13 from David Edelsohn <dje at gcc dot gnu.org> ---
Committed, but why gcc-10? I don't see the testcase on that branch.

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (12 preceding siblings ...)
  2020-06-29 20:18 ` dje at gcc dot gnu.org
@ 2020-06-29 20:48 ` tkoenig at gcc dot gnu.org
  2020-06-30 13:24 ` dje at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2020-06-29 20:48 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #14 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
Because the version in bugzilla is set to 10.0, so I assumed it occurred there,
too.

Even better if it is not there.

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

* [Bug fortran/95918] gfortran.dg/char4-subscript.f90 fails for BE architectures
  2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
                   ` (13 preceding siblings ...)
  2020-06-29 20:48 ` tkoenig at gcc dot gnu.org
@ 2020-06-30 13:24 ` dje at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: dje at gcc dot gnu.org @ 2020-06-30 13:24 UTC (permalink / raw)
  To: gcc-bugs

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

David Edelsohn <dje at gcc dot gnu.org> changed:

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

--- Comment #15 from David Edelsohn <dje at gcc dot gnu.org> ---
Fixed

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

end of thread, other threads:[~2020-06-30 13:24 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-26 20:24 [Bug fortran/95918] New: gfortran.dg/char4-subscript.f90 fails for BE architectures dje at gcc dot gnu.org
2020-06-26 20:24 ` [Bug fortran/95918] " dje at gcc dot gnu.org
2020-06-27  8:19 ` tkoenig at gcc dot gnu.org
2020-06-27 13:35 ` dje at gcc dot gnu.org
2020-06-27 19:26 ` segher at gcc dot gnu.org
2020-06-28 11:38 ` tkoenig at gcc dot gnu.org
2020-06-28 11:39 ` tkoenig at gcc dot gnu.org
2020-06-28 15:15 ` tkoenig at gcc dot gnu.org
2020-06-29 17:43 ` dje at gcc dot gnu.org
2020-06-29 18:39 ` dje at gcc dot gnu.org
2020-06-29 19:08 ` dje at gcc dot gnu.org
2020-06-29 19:10 ` dje at gcc dot gnu.org
2020-06-29 20:00 ` tkoenig at gcc dot gnu.org
2020-06-29 20:18 ` dje at gcc dot gnu.org
2020-06-29 20:48 ` tkoenig at gcc dot gnu.org
2020-06-30 13:24 ` dje 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).