158 short result=(*p)|=v;
194 short result=(*p)^=v;
230 short result=(*p)&=v;
350 # ifndef __CPROVER_INTRIN_H_INCLUDED
352 # define __CPROVER_INTRIN_H_INCLUDED
355 __m128i _mm_set_epi32(
int e3,
int e2,
int e1,
int e0)
357 return (__m128i){.m128i_i32 = {e0, e1, e2, e3}};
364 # ifndef __CPROVER_INTRIN_H_INCLUDED
366 # define __CPROVER_INTRIN_H_INCLUDED
369 __m128i _mm_setr_epi32(
int e3,
int e2,
int e1,
int e0)
371 return (__m128i){.m128i_i32 = {e3, e2, e1, e0}};
378 # ifndef __CPROVER_INTRIN_H_INCLUDED
380 # define __CPROVER_INTRIN_H_INCLUDED
383 __m128i _mm_set_epi16(
393 return (__m128i){.m128i_i16 = {e0, e1, e2, e3, e4, e5, e6, e7}};
400 # ifndef __CPROVER_INTRIN_H_INCLUDED
402 # define __CPROVER_INTRIN_H_INCLUDED
405 __m128i _mm_setr_epi16(
415 return (__m128i){.m128i_i16 = {e7, e6, e5, e4, e3, e2, e1, e0}};
422 # ifndef __CPROVER_INTRIN_H_INCLUDED
424 # define __CPROVER_INTRIN_H_INCLUDED
427 __m64 _mm_set_pi16(
short e3,
short e2,
short e1,
short e0)
429 return (__m64){.m64_i16 = {e0, e1, e2, e3}};
436 # ifndef __CPROVER_INTRIN_H_INCLUDED
438 # define __CPROVER_INTRIN_H_INCLUDED
441 __m64 _mm_setr_pi16(
short e3,
short e2,
short e1,
short e0)
443 return (__m64){.m64_i16 = {e3, e2, e1, e0}};
450 # ifndef __CPROVER_INTRIN_H_INCLUDED
452 # define __CPROVER_INTRIN_H_INCLUDED
455 int _mm_extract_epi32(__m128i a,
const int imm8)
457 return a.m128i_i32[imm8];
464 # ifndef __CPROVER_INTRIN_H_INCLUDED
466 # define __CPROVER_INTRIN_H_INCLUDED
469 int _mm_extract_epi16(__m128i a,
const int imm8)
471 return a.m128i_i16[imm8];
478 # ifndef __CPROVER_INTRIN_H_INCLUDED
480 # define __CPROVER_INTRIN_H_INCLUDED
483 int _mm_extract_pi16(__m64 a,
const int imm8)
485 return a.m64_i16[imm8];
492 # ifndef __CPROVER_INTRIN_H_INCLUDED
494 # define __CPROVER_INTRIN_H_INCLUDED
497 __m128i _mm_adds_epi16(__m128i a, __m128i b)
501 __CPROVER_saturating_plus(a.m128i_i16[0], b.m128i_i16[0]),
502 __CPROVER_saturating_plus(a.m128i_i16[1], b.m128i_i16[1]),
503 __CPROVER_saturating_plus(a.m128i_i16[2], b.m128i_i16[2]),
504 __CPROVER_saturating_plus(a.m128i_i16[3], b.m128i_i16[3]),
505 __CPROVER_saturating_plus(a.m128i_i16[4], b.m128i_i16[4]),
506 __CPROVER_saturating_plus(a.m128i_i16[5], b.m128i_i16[5]),
507 __CPROVER_saturating_plus(a.m128i_i16[6], b.m128i_i16[6]),
508 __CPROVER_saturating_plus(a.m128i_i16[7], b.m128i_i16[7]),
516 # ifndef __CPROVER_INTRIN_H_INCLUDED
518 # define __CPROVER_INTRIN_H_INCLUDED
521 __m128i _mm_subs_epi16(__m128i a, __m128i b)
525 __CPROVER_saturating_minus(a.m128i_i16[0], b.m128i_i16[0]),
526 __CPROVER_saturating_minus(a.m128i_i16[1], b.m128i_i16[1]),
527 __CPROVER_saturating_minus(a.m128i_i16[2], b.m128i_i16[2]),
528 __CPROVER_saturating_minus(a.m128i_i16[3], b.m128i_i16[3]),
529 __CPROVER_saturating_minus(a.m128i_i16[4], b.m128i_i16[4]),
530 __CPROVER_saturating_minus(a.m128i_i16[5], b.m128i_i16[5]),
531 __CPROVER_saturating_minus(a.m128i_i16[6], b.m128i_i16[6]),
532 __CPROVER_saturating_minus(a.m128i_i16[7], b.m128i_i16[7]),
540 # ifndef __CPROVER_INTRIN_H_INCLUDED
542 # define __CPROVER_INTRIN_H_INCLUDED
545 __m128i _mm_adds_epu16(__m128i a, __m128i b)
549 __CPROVER_saturating_plus(a.m128i_u16[0], b.m128i_u16[0]),
550 __CPROVER_saturating_plus(a.m128i_u16[1], b.m128i_u16[1]),
551 __CPROVER_saturating_plus(a.m128i_u16[2], b.m128i_u16[2]),
552 __CPROVER_saturating_plus(a.m128i_u16[3], b.m128i_u16[3]),
553 __CPROVER_saturating_plus(a.m128i_u16[4], b.m128i_u16[4]),
554 __CPROVER_saturating_plus(a.m128i_u16[5], b.m128i_u16[5]),
555 __CPROVER_saturating_plus(a.m128i_u16[6], b.m128i_u16[6]),
556 __CPROVER_saturating_plus(a.m128i_u16[7], b.m128i_u16[7]),
564 # ifndef __CPROVER_INTRIN_H_INCLUDED
566 # define __CPROVER_INTRIN_H_INCLUDED
569 __m128i _mm_subs_epu16(__m128i a, __m128i b)
573 __CPROVER_saturating_minus(a.m128i_u16[0], b.m128i_u16[0]),
574 __CPROVER_saturating_minus(a.m128i_u16[1], b.m128i_u16[1]),
575 __CPROVER_saturating_minus(a.m128i_u16[2], b.m128i_u16[2]),
576 __CPROVER_saturating_minus(a.m128i_u16[3], b.m128i_u16[3]),
577 __CPROVER_saturating_minus(a.m128i_u16[4], b.m128i_u16[4]),
578 __CPROVER_saturating_minus(a.m128i_u16[5], b.m128i_u16[5]),
579 __CPROVER_saturating_minus(a.m128i_u16[6], b.m128i_u16[6]),
580 __CPROVER_saturating_minus(a.m128i_u16[7], b.m128i_u16[7]),
long _InterlockedDecrement(long volatile *p)
short _InterlockedXor16(short volatile *p, short v)
long _InterlockedExchangeAdd(long volatile *p, long v)
long _InterlockedOr(long volatile *p, long v)
char _InterlockedOr8(char volatile *p, char v)
void _ReadWriteBarrier(void)
char _InterlockedAnd8(char volatile *p, char v)
short _InterlockedExchangeAdd16(short volatile *p, short v)
long _InterlockedCompareExchange(long volatile *p, long v1, long v2)
short _InterlockedOr16(short volatile *p, short v)
short _InterlockedExchange16(short volatile *p, short v)
long _InterlockedXor(long volatile *p, long v)
long _InterlockedExchange(long volatile *p, long v)
long _InterlockedAdd(long volatile *p, long v)
long _InterlockedAddLargeStatistic(long long volatile *p, long v)
long long _InterlockedCompareExchange64(long long volatile *p, long long v1, long long v2)
char _InterlockedExchangeAdd8(char volatile *p, char v)
short _InterlockedCompareExchange16(short volatile *p, short v1, short v2)
short _InterlockedAnd16(short volatile *p, short v)
long _InterlockedIncrement(long volatile *p)
char _InterlockedExchange8(char volatile *p, char v)
long _InterlockedAnd(long volatile *p, long v)
short _InterlockedDecrement16(short volatile *p)
char _InterlockedCompareExchange8(char volatile *p, char v1, char v2)
char _InterlockedXor8(char volatile *p, char v)
short _InterlockedIncrement16(short volatile *p)