Browse Source

llvmpipe: Make the code portable for MinGW.

tags/mesa_7_7_rc1
José Fonseca 16 years ago
parent
commit
459ea0095c

+ 5
- 1
scons/llvm.py View File

@@ -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


+ 1
- 1
src/gallium/drivers/llvmpipe/SConscript View File

@@ -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()


+ 1
- 1
src/gallium/drivers/llvmpipe/lp_jit.c View File

@@ -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();
}

+ 8
- 8
src/gallium/drivers/llvmpipe/lp_test_blend.c View File

@@ -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;

+ 2
- 2
src/gallium/drivers/llvmpipe/lp_test_conv.c View File

@@ -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))

+ 4
- 4
src/gallium/drivers/llvmpipe/lp_test_main.c View File

@@ -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);
}



Loading…
Cancel
Save