This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

patch e500: fix opaque vector constant casts


Opaque types can't technically be used as initiliazers.  This doesn't
affect the FSF tree, since my dumb-ass-front-end patches will never go
in, but it's best to keep it clean.  Besides, it's causing errors in
my tree *with* the front end patches.

Committed as obvious.

2002-07-29  Aldy Hernandez  <aldyh@redhat.com>

	* config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
	constants to __ev64_s32__.
	(__internal_ev_mwhgsmian): Same.
	(__internal_ev_mwhgsmfan): Same.
	(__internal_ev_mwhgssfan): Same.
	(__internal_ev_mwhgumiaa): Same.
	(__internal_ev_mwhgsmiaa): Same.
	(__internal_ev_mwhgsmfaa): Same.
	(__internal_ev_mwhgssfaa): Same.

Index: config/rs6000/spe.h
===================================================================
RCS file: /cvs/uberbaum/gcc/config/rs6000/spe.h,v
retrieving revision 1.1
diff -c -p -r1.1 spe.h
*** config/rs6000/spe.h	25 Jul 2002 02:22:47 -0000	1.1
--- config/rs6000/spe.h	29 Jul 2002 19:02:39 -0000
*************** __internal_ev_mwhumianw (__ev64_opaque__
*** 463,477 ****
    return __ev_subfumiaaw (t);
  }
  
- /* ** */
- 
  static inline __ev64_opaque__
  __internal_ev_mwhgssfaa (__ev64_opaque__ a, __ev64_opaque__ b)
  {
    __ev64_opaque__ t;
  
    t = __ev_mwhssf (a, b);
!   return __ev_mwsmiaa (t, ((__ev64_opaque__){1, 1}));
  }
  
  static inline __ev64_opaque__
--- 463,475 ----
    return __ev_subfumiaaw (t);
  }
  
  static inline __ev64_opaque__
  __internal_ev_mwhgssfaa (__ev64_opaque__ a, __ev64_opaque__ b)
  {
    __ev64_opaque__ t;
  
    t = __ev_mwhssf (a, b);
!   return __ev_mwsmiaa (t, ((__ev64_s32__){1, 1}));
  }
  
  static inline __ev64_opaque__
*************** __internal_ev_mwhgsmfaa (__ev64_opaque__
*** 480,486 ****
    __ev64_opaque__ t;
  
    t = __ev_mwhsmf (a, b);
!   return __ev_mwsmiaa (t, ((__ev64_opaque__){1, 1}));
  }
  
  static inline __ev64_opaque__
--- 478,484 ----
    __ev64_opaque__ t;
  
    t = __ev_mwhsmf (a, b);
!   return __ev_mwsmiaa (t, ((__ev64_s32__){1, 1}));
  }
  
  static inline __ev64_opaque__
*************** __internal_ev_mwhgsmiaa (__ev64_opaque__
*** 489,495 ****
    __ev64_opaque__ t;
  
    t = __ev_mwhsmi (a, b);
!   return __ev_mwsmiaa (t, ((__ev64_opaque__){1, 1}));
  }
  
  static inline __ev64_opaque__
--- 487,493 ----
    __ev64_opaque__ t;
  
    t = __ev_mwhsmi (a, b);
!   return __ev_mwsmiaa (t, ((__ev64_s32__){1, 1}));
  }
  
  static inline __ev64_opaque__
*************** __internal_ev_mwhgumiaa (__ev64_opaque__
*** 498,504 ****
    __ev64_opaque__ t;
  
    t = __ev_mwhumi (a, b);
!   return __ev_mwumiaa (t, ((__ev64_opaque__){1, 1}));
  }
  
  static inline __ev64_opaque__
--- 496,502 ----
    __ev64_opaque__ t;
  
    t = __ev_mwhumi (a, b);
!   return __ev_mwumiaa (t, ((__ev64_s32__){1, 1}));
  }
  
  static inline __ev64_opaque__
*************** __internal_ev_mwhgssfan (__ev64_opaque__
*** 507,513 ****
    __ev64_opaque__ t;
  
    t = __ev_mwhssf (a, b);
!   return __ev_mwsmian (t, ((__ev64_opaque__){1, 1}));
  }
  
  static inline __ev64_opaque__
--- 505,511 ----
    __ev64_opaque__ t;
  
    t = __ev_mwhssf (a, b);
!   return __ev_mwsmian (t, ((__ev64_s32__){1, 1}));
  }
  
  static inline __ev64_opaque__
*************** __internal_ev_mwhgsmfan (__ev64_opaque__
*** 516,522 ****
    __ev64_opaque__ t;
  
    t = __ev_mwhsmf (a, b);
!   return __ev_mwsmian (t, ((__ev64_opaque__){1, 1}));
  }
  
  static inline __ev64_opaque__
--- 514,520 ----
    __ev64_opaque__ t;
  
    t = __ev_mwhsmf (a, b);
!   return __ev_mwsmian (t, ((__ev64_s32__){1, 1}));
  }
  
  static inline __ev64_opaque__
*************** __internal_ev_mwhgsmian (__ev64_opaque__
*** 525,531 ****
    __ev64_opaque__ t;
  
    t = __ev_mwhsmi (a, b);
!   return __ev_mwsmian (t, ((__ev64_opaque__){1, 1}));
  }
  
  static inline __ev64_opaque__
--- 523,529 ----
    __ev64_opaque__ t;
  
    t = __ev_mwhsmi (a, b);
!   return __ev_mwsmian (t, ((__ev64_s32__){1, 1}));
  }
  
  static inline __ev64_opaque__
*************** __internal_ev_mwhgumian (__ev64_opaque__
*** 534,540 ****
    __ev64_opaque__ t;
  
    t = __ev_mwhumi (a, b);
!   return __ev_mwumian (t, ((__ev64_opaque__){1, 1}));
  }
  
  /* END OF NOT SUPPORTED */
--- 532,538 ----
    __ev64_opaque__ t;
  
    t = __ev_mwhumi (a, b);
!   return __ev_mwumian (t, ((__ev64_s32__){1, 1}));
  }
  
  /* END OF NOT SUPPORTED */


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]