------- Additional Comments From sje at cup dot hp dot com  2005-09-08 16:34 
-------
This test uses vectors.  It looks like the vector code for IA64 was written and
tested on Linux (which is little-endian) and this test fails on HP-UX which is
big-endian.  The program below prints '1500 1300' on Linux but prints '1300
1500' on HP-UX.  I think endianness was not considered somewhere in the vector
code but I am not sure where.



typedef int __attribute__((vector_size (8))) vecint;
typedef int __attribute__((mode(SI))) siint;

vecint i = { 150, 100 };
vecint j = { 10, 13 };
vecint k;

union {
  vecint v;
  siint i[2];
} res;

int
main ()
{
  vecint k0, k1, k2, k3, k4, k5, k6, k7;

  k1 = i * j;
  res.v = k1;

  printf("%d %d\n", res.i[0], res.i[1]);

  exit (0);
}

-- 


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

Reply via email to