draw,gallivm,llvmpipe: Avoid implicit casts of 32-bit shifts to 64-bits.
Addresses MSVC warnings "result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)", which can often be symptom of bugs, but in these cases were all benign. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Roland Scheidegger <sroland@vmware.com>
This commit is contained in:
@@ -1269,7 +1269,7 @@ generate_clipmask(struct draw_llvm *llvm,
|
||||
test = lp_build_compare(gallivm, f32_type, PIPE_FUNC_GREATER, zero, clipdist);
|
||||
is_nan_or_inf = lp_build_is_inf_or_nan(gallivm, vs_type, clipdist);
|
||||
test = LLVMBuildOr(builder, test, is_nan_or_inf, "");
|
||||
temp = lp_build_const_int_vec(gallivm, i32_type, 1 << plane_idx);
|
||||
temp = lp_build_const_int_vec(gallivm, i32_type, 1LL << plane_idx);
|
||||
test = LLVMBuildAnd(builder, test, temp, "");
|
||||
mask = LLVMBuildOr(builder, mask, test, "");
|
||||
} else {
|
||||
@@ -1305,7 +1305,7 @@ generate_clipmask(struct draw_llvm *llvm,
|
||||
sum = LLVMBuildFAdd(builder, sum, test, "");
|
||||
|
||||
test = lp_build_compare(gallivm, f32_type, PIPE_FUNC_GREATER, zero, sum);
|
||||
temp = lp_build_const_int_vec(gallivm, i32_type, 1 << plane_idx);
|
||||
temp = lp_build_const_int_vec(gallivm, i32_type, 1LL << plane_idx);
|
||||
test = LLVMBuildAnd(builder, test, temp, "");
|
||||
mask = LLVMBuildOr(builder, mask, test, "");
|
||||
}
|
||||
|
||||
@@ -932,7 +932,7 @@ lp_build_mul_norm(struct gallivm_state *gallivm,
|
||||
* half = sgn(ab) * 0.5 * (2 ** n) = sgn(ab) * (1 << (n - 1))
|
||||
*/
|
||||
|
||||
half = lp_build_const_int_vec(gallivm, wide_type, 1 << (n - 1));
|
||||
half = lp_build_const_int_vec(gallivm, wide_type, 1LL << (n - 1));
|
||||
if (wide_type.sign) {
|
||||
LLVMValueRef minus_half = LLVMBuildNeg(builder, half, "");
|
||||
LLVMValueRef sign = lp_build_shr_imm(&bld, ab, wide_type.width - 1);
|
||||
|
||||
@@ -1641,7 +1641,7 @@ lp_build_cube_lookup(struct lp_build_sample_context *bld,
|
||||
LLVMValueRef ma, mai, signma, signmabit, imahalfpos;
|
||||
LLVMValueRef posHalf = lp_build_const_vec(gallivm, coord_bld->type, 0.5);
|
||||
LLVMValueRef signmask = lp_build_const_int_vec(gallivm, intctype,
|
||||
1 << (intctype.width - 1));
|
||||
1LL << (intctype.width - 1));
|
||||
LLVMValueRef signshift = lp_build_const_int_vec(gallivm, intctype,
|
||||
intctype.width -1);
|
||||
LLVMValueRef facex = lp_build_const_int_vec(gallivm, intctype, PIPE_TEX_FACE_POS_X);
|
||||
|
||||
@@ -760,8 +760,8 @@ lp_setup_bin_triangle( struct lp_setup_context *setup,
|
||||
for (i = 0; i < nr_planes; i++) {
|
||||
int64_t planeout = cx[i] + eo[i];
|
||||
int64_t planepartial = cx[i] + ei[i] - 1;
|
||||
out |= (planeout >> 63);
|
||||
partial |= (planepartial >> 63) & (1<<i);
|
||||
out |= (int) (planeout >> 63);
|
||||
partial |= ((int) (planepartial >> 63)) & (1<<i);
|
||||
}
|
||||
|
||||
if (out) {
|
||||
|
||||
@@ -174,10 +174,10 @@ generate_quad_mask(struct gallivm_state *gallivm,
|
||||
|
||||
for (i = 0; i < fs_type.length / 4; i++) {
|
||||
unsigned j = 2 * (i % 2) + (i / 2) * 8;
|
||||
bits[4*i + 0] = LLVMConstInt(i32t, 1 << (j + 0), 0);
|
||||
bits[4*i + 1] = LLVMConstInt(i32t, 1 << (j + 1), 0);
|
||||
bits[4*i + 2] = LLVMConstInt(i32t, 1 << (j + 4), 0);
|
||||
bits[4*i + 3] = LLVMConstInt(i32t, 1 << (j + 5), 0);
|
||||
bits[4*i + 0] = LLVMConstInt(i32t, 1ULL << (j + 0), 0);
|
||||
bits[4*i + 1] = LLVMConstInt(i32t, 1ULL << (j + 1), 0);
|
||||
bits[4*i + 2] = LLVMConstInt(i32t, 1ULL << (j + 4), 0);
|
||||
bits[4*i + 3] = LLVMConstInt(i32t, 1ULL << (j + 5), 0);
|
||||
}
|
||||
mask = LLVMBuildAnd(builder, mask, LLVMConstVector(bits, fs_type.length), "");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user