Merge remote-tracking branch 'upstream/master' into nvptx

This commit is contained in:
egaburov
2013-10-29 15:24:40 +01:00
19 changed files with 808 additions and 760 deletions

View File

@@ -218,6 +218,60 @@ static inline int64 rotate(int64 v, uniform int i) {
return __rotate_i64(v, i);
}
__declspec(safe)
static inline float shift(float v, uniform int i) {
varying float result;
unmasked {
result = __shift_float(v, i);
}
return result;
}
__declspec(safe)
static inline int8 shift(int8 v, uniform int i) {
varying int8 result;
unmasked {
result = __shift_i8(v, i);
}
return result;
}
__declspec(safe)
static inline int16 shift(int16 v, uniform int i) {
varying int16 result;
unmasked {
result = __shift_i16(v, i);
}
return result;
}
__declspec(safe)
static inline int32 shift(int32 v, uniform int i) {
varying int32 result;
unmasked {
result = __shift_i32(v, i);
}
return result;
}
__declspec(safe)
static inline double shift(double v, uniform int i) {
varying double result;
unmasked {
result = __shift_double(v, i);
}
return result;
}
__declspec(safe)
static inline int64 shift(int64 v, uniform int i) {
varying int64 result;
unmasked {
result = __shift_i64(v, i);
}
return result;
}
__declspec(safe)
static inline float shuffle(float v, int i) {
return __shuffle_float(v, i);