2018-05-17 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / pr69140.c
blob2c345dd75bc5f928e82c8cdb8e8a3fc237455f47
1 /* { dg-do compile { target lp64 } } */
2 /* { dg-options "-O2 -mincoming-stack-boundary=3" } */
4 typedef struct {
5 unsigned int buf[4];
6 unsigned char in[64];
7 } MD4_CTX;
9 static void
10 MD4Transform (unsigned int buf[4], const unsigned int in[16])
12 unsigned int a, b, c, d;
13 (b) += ((((c)) & ((d))) | ((~(c)) & ((a)))) + (in[7]);
14 (a) += ((((b)) & ((c))) | ((~(b)) & ((d)))) + (in[8]);
15 (d) += ((((a)) & ((b))) | ((~(a)) & ((c)))) + (in[9]);
16 buf[3] += d;
19 void __attribute__((ms_abi))
20 MD4Update (MD4_CTX *ctx, const unsigned char *buf)
22 MD4Transform( ctx->buf, (unsigned int *)ctx->in);
23 MD4Transform( ctx->buf, (unsigned int *)ctx->in);