public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/35713]  New: invalid type for va_arg with _Decimal128
@ 2008-03-27  0:00 janis at gcc dot gnu dot org
  2008-03-29 20:18 ` [Bug target/35713] [4.4 Regression] " pinskia at gcc dot gnu dot org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: janis at gcc dot gnu dot org @ 2008-03-27  0:00 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1429 bytes --]

Using va_arg with _Decimal128 for powerpc-linux results in an error
message followed by an ICE, resulting in several new failing GCC
tests.

This testcase:

    void
    foo (int n, ...)
    {
      __builtin_va_list ap;
      _Decimal128 x;

      __builtin_va_start (ap, n);
      x = __builtin_va_arg (ap, _Decimal128);
      __builtin_va_end (ap);
    }

results in these messages:

    elm3b145% /opt/gcc-nightly/trunk/bin/gcc -c va.c
    va.c: In function ‘foo’:
    va.c:3: error: type mismatch in binary expression
    unsigned char

    unsigned char

    unsigned int

    D.1240 = D.1239 | 1
    va.c:3: internal compiler error: verify_gimple failed
    Please submit a full bug report,
    with preprocessed source if appropriate.
    See <http://gcc.gnu.org/bugs.html> for instructions.

The failure becomes apparent with r133479, but it also happens with earlier
GCC sources configured with --enable-checking=types.

I plan to continue investigating this problem.


-- 
           Summary: invalid type for va_arg with _Decimal128
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: janis at gcc dot gnu dot org
        ReportedBy: janis at gcc dot gnu dot org
GCC target triplet: powerpc-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35713


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

* [Bug target/35713] [4.4 Regression] invalid type for va_arg with _Decimal128
  2008-03-27  0:00 [Bug target/35713] New: invalid type for va_arg with _Decimal128 janis at gcc dot gnu dot org
@ 2008-03-29 20:18 ` pinskia at gcc dot gnu dot org
  2008-04-01 17:59 ` janis at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2008-03-29 20:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2008-03-29 20:17 -------
This is caused by the extra type checking which Richard Guenther added.
It is not just _Decimal128, but almost all types which are broken.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenther at suse dot de
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
           Keywords|                            |ice-checking
   Last reconfirmed|0000-00-00 00:00:00         |2008-03-29 20:17:18
               date|                            |
            Summary|invalid type for va_arg with|[4.4 Regression] invalid
                   |_Decimal128                 |type for va_arg with
                   |                            |_Decimal128
   Target Milestone|---                         |4.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35713


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

* [Bug target/35713] [4.4 Regression] invalid type for va_arg with _Decimal128
  2008-03-27  0:00 [Bug target/35713] New: invalid type for va_arg with _Decimal128 janis at gcc dot gnu dot org
  2008-03-29 20:18 ` [Bug target/35713] [4.4 Regression] " pinskia at gcc dot gnu dot org
@ 2008-04-01 17:59 ` janis at gcc dot gnu dot org
  2008-04-04  0:22 ` janis at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: janis at gcc dot gnu dot org @ 2008-04-01 17:59 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from janis at gcc dot gnu dot org  2008-04-01 17:58 -------
For powerpc-linux this affects _Decimal128, 128-bit long double, and _Complex
double.  I'm testing a patch.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35713


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

* [Bug target/35713] [4.4 Regression] invalid type for va_arg with _Decimal128
  2008-03-27  0:00 [Bug target/35713] New: invalid type for va_arg with _Decimal128 janis at gcc dot gnu dot org
  2008-03-29 20:18 ` [Bug target/35713] [4.4 Regression] " pinskia at gcc dot gnu dot org
  2008-04-01 17:59 ` janis at gcc dot gnu dot org
@ 2008-04-04  0:22 ` janis at gcc dot gnu dot org
  2008-04-05 21:07 ` pinskia at gcc dot gnu dot org
  2008-09-18 18:38 ` janis at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: janis at gcc dot gnu dot org @ 2008-04-04  0:22 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from janis at gcc dot gnu dot org  2008-04-04 00:21 -------
Subject: Bug 35713

Author: janis
Date: Fri Apr  4 00:20:48 2008
New Revision: 133887

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=133887
Log:
        PR target/35713
        * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use integer
          constants of the appropriate size for runtime calculations.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/rs6000/rs6000.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35713


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

* [Bug target/35713] [4.4 Regression] invalid type for va_arg with _Decimal128
  2008-03-27  0:00 [Bug target/35713] New: invalid type for va_arg with _Decimal128 janis at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2008-04-04  0:22 ` janis at gcc dot gnu dot org
@ 2008-04-05 21:07 ` pinskia at gcc dot gnu dot org
  2008-09-18 18:38 ` janis at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2008-04-05 21:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pinskia at gcc dot gnu dot org  2008-04-05 21:06 -------
Fixed.


-- 

pinskia at gcc dot gnu dot org changed:

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


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35713


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

* [Bug target/35713] [4.4 Regression] invalid type for va_arg with _Decimal128
  2008-03-27  0:00 [Bug target/35713] New: invalid type for va_arg with _Decimal128 janis at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2008-04-05 21:07 ` pinskia at gcc dot gnu dot org
@ 2008-09-18 18:38 ` janis at gcc dot gnu dot org
  4 siblings, 0 replies; 6+ messages in thread
From: janis at gcc dot gnu dot org @ 2008-09-18 18:38 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from janis at gcc dot gnu dot org  2008-09-18 18:36 -------
Subject: Bug 35713

Author: janis
Date: Thu Sep 18 18:35:24 2008
New Revision: 140467

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=140467
Log:
        Backport from mainline:
        2008-04-03  Janis Johnson  <janis187@us.ibm.com>

        PR target/35713
        * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use integer
        constants of the appropriate size for runtime calculations.

Modified:
    branches/gcc-4_3-branch/gcc/ChangeLog
    branches/gcc-4_3-branch/gcc/config/rs6000/rs6000.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35713


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

end of thread, other threads:[~2008-09-18 18:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-27  0:00 [Bug target/35713] New: invalid type for va_arg with _Decimal128 janis at gcc dot gnu dot org
2008-03-29 20:18 ` [Bug target/35713] [4.4 Regression] " pinskia at gcc dot gnu dot org
2008-04-01 17:59 ` janis at gcc dot gnu dot org
2008-04-04  0:22 ` janis at gcc dot gnu dot org
2008-04-05 21:07 ` pinskia at gcc dot gnu dot org
2008-09-18 18:38 ` janis at gcc dot gnu dot 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).