swar-var4x8b.c 485 Bytes
//A: --has-swar
//C: -daiteq-swar-enable

//#include <stdint.h>

typedef unsigned int su4x8b __attribute__((subword(8)));

const unsigned data[] = {
  0x87654321,
  0x11223344,
};

int main(void)
{
  volatile su4x8b sa;
  unsigned int b;
  su4x8b sc;
  volatile unsigned d;
  volatile int i = 1;

  sc = *((su4x8b *)&data[i]);

  sa = (su4x8b)0x12345678;

//  b = *((uint32_t*) &a);
  b = *((unsigned int *) &sa);

  sa = *((su4x8b *) &b);
  
  d = *((unsigned *)&sc);

  return 0;
}