llvmpipe: Make the code portable for MinGW.
This commit is contained in:
+5
-1
@@ -51,7 +51,9 @@ def generate(env):
|
||||
|
||||
llvm_bin_dir = os.path.join(llvm_dir, llvm_subdir, 'bin')
|
||||
if not os.path.isdir(llvm_bin_dir):
|
||||
raise SCons.Errors.InternalError, "LLVM build directory not found"
|
||||
llvm_bin_dir = os.path.join(llvm_dir, 'bin')
|
||||
if not os.path.isdir(llvm_bin_dir):
|
||||
raise SCons.Errors.InternalError, "LLVM binary directory not found"
|
||||
|
||||
env.PrependENVPath('PATH', llvm_bin_dir)
|
||||
|
||||
@@ -65,6 +67,8 @@ def generate(env):
|
||||
except OSError:
|
||||
print 'llvm-config version %s failed' % version
|
||||
else:
|
||||
if env['platform'] == 'windows':
|
||||
env.Append(LIBS = ['imagehlp', 'psapi'])
|
||||
env['LINK'] = env['CXX']
|
||||
env['LLVM_VERSION'] = version
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ Import('*')
|
||||
env = env.Clone()
|
||||
|
||||
env.Tool('llvm')
|
||||
if env.has_key('LLVM_VERSION') is False:
|
||||
if not env.has_key('LLVM_VERSION'):
|
||||
print 'warning: LLVM not found: not building llvmpipe'
|
||||
Return()
|
||||
|
||||
|
||||
@@ -152,7 +152,7 @@ lp_jit_screen_init(struct llvmpipe_screen *screen)
|
||||
screen->provider = LLVMCreateModuleProviderForExistingModule(screen->module);
|
||||
|
||||
if (LLVMCreateJITCompiler(&screen->engine, screen->provider, 1, &error)) {
|
||||
fprintf(stderr, "%s\n", error);
|
||||
_debug_printf("%s\n", error);
|
||||
LLVMDisposeMessage(error);
|
||||
abort();
|
||||
}
|
||||
|
||||
@@ -846,22 +846,22 @@ test_some(unsigned verbose, FILE *fp, unsigned long n)
|
||||
bool success = TRUE;
|
||||
|
||||
for(i = 0; i < n; ++i) {
|
||||
rgb_func = &blend_funcs[random() % num_funcs];
|
||||
alpha_func = &blend_funcs[random() % num_funcs];
|
||||
rgb_src_factor = &blend_factors[random() % num_factors];
|
||||
alpha_src_factor = &blend_factors[random() % num_factors];
|
||||
rgb_func = &blend_funcs[rand() % num_funcs];
|
||||
alpha_func = &blend_funcs[rand() % num_funcs];
|
||||
rgb_src_factor = &blend_factors[rand() % num_factors];
|
||||
alpha_src_factor = &blend_factors[rand() % num_factors];
|
||||
|
||||
do {
|
||||
rgb_dst_factor = &blend_factors[random() % num_factors];
|
||||
rgb_dst_factor = &blend_factors[rand() % num_factors];
|
||||
} while(*rgb_dst_factor == PIPE_BLENDFACTOR_SRC_ALPHA_SATURATE);
|
||||
|
||||
do {
|
||||
alpha_dst_factor = &blend_factors[random() % num_factors];
|
||||
alpha_dst_factor = &blend_factors[rand() % num_factors];
|
||||
} while(*alpha_dst_factor == PIPE_BLENDFACTOR_SRC_ALPHA_SATURATE);
|
||||
|
||||
mode = random() & 1;
|
||||
mode = rand() & 1;
|
||||
|
||||
type = &blend_types[random() % num_types];
|
||||
type = &blend_types[rand() % num_types];
|
||||
|
||||
memset(&blend, 0, sizeof blend);
|
||||
blend.blend_enable = 1;
|
||||
|
||||
@@ -413,10 +413,10 @@ test_some(unsigned verbose, FILE *fp, unsigned long n)
|
||||
bool success = TRUE;
|
||||
|
||||
for(i = 0; i < n; ++i) {
|
||||
src_type = &conv_types[random() % num_types];
|
||||
src_type = &conv_types[rand() % num_types];
|
||||
|
||||
do {
|
||||
dst_type = &conv_types[random() % num_types];
|
||||
dst_type = &conv_types[rand() % num_types];
|
||||
} while (src_type == dst_type || src_type->norm != dst_type->norm);
|
||||
|
||||
if(!test_one(verbose, fp, *src_type, *dst_type))
|
||||
|
||||
@@ -188,7 +188,7 @@ random_elem(struct lp_type type, void *dst, unsigned index)
|
||||
{
|
||||
double value;
|
||||
assert(index < type.length);
|
||||
value = (double)random()/(double)RAND_MAX;
|
||||
value = (double)rand()/(double)RAND_MAX;
|
||||
if(!type.norm) {
|
||||
unsigned long long mask;
|
||||
if (type.floating)
|
||||
@@ -199,10 +199,10 @@ random_elem(struct lp_type type, void *dst, unsigned index)
|
||||
mask = ((unsigned long long)1 << (type.width - 1)) - 1;
|
||||
else
|
||||
mask = ((unsigned long long)1 << type.width) - 1;
|
||||
value += (double)(mask & random());
|
||||
value += (double)(mask & rand());
|
||||
}
|
||||
if(!type.sign)
|
||||
if(random() & 1)
|
||||
if(rand() & 1)
|
||||
value = -value;
|
||||
write_elem(type, dst, index, value);
|
||||
}
|
||||
@@ -229,7 +229,7 @@ write_vec(struct lp_type type, void *dst, const double *src)
|
||||
float
|
||||
random_float(void)
|
||||
{
|
||||
return (float)((double)random()/(double)RAND_MAX);
|
||||
return (float)((double)rand()/(double)RAND_MAX);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user