aboutsummaryrefslogtreecommitdiff
path: root/test/FrontendC/fp-logical.c
blob: 518db65117958c1b73289be70f3df30bb6975efe (plain)
1
2
3
4
5
6
7
8
9
// RUN: %llvmgcc %s -S -o - | grep bitcast | count 5

typedef float vFloat __attribute__ ((__vector_size__ (16)));
typedef unsigned int vUInt32 __attribute__ ((__vector_size__ (16)));
void foo(vFloat *X) {
  vFloat NoSignBit = (vFloat) ~ (vUInt32) (vFloat) { -0.f, -0.f, -0.f, -0.f };
  vFloat ExtremeValue = *X & NoSignBit;
  *X = ExtremeValue;
}