summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/gallivm
AgeCommit message (Collapse)Author
2010-05-13llvmpipe: silence uninitialized var warningsBrian Paul
2010-05-13gallivm: added lp_dump_llvmtype() debug helperBrian Paul
2010-05-13llvmpipe: additional commentsBrian Paul
2010-05-13gallivm: rename a varBrian Paul
2010-05-13Conditionally revert "gallivm: Use a more compact approach for ↵José Fonseca
lp_build_broadcast_scalar()." This reverts commit a09e46c72461183c879d8472b44fe740ecc79b9f.
2010-05-12gallivm: Ensure PIPE_OS_xxx are defined.José Fonseca
2010-05-12gallivm: Use a more compact approach for lp_build_broadcast_scalar().José Fonseca
It produces exactly the same machine code, but it cuts 5% of the number of instructions generated for a typical shader. Also, preserve the scalar when length is 1.
2010-05-12gallivm: additional commentsBrian Paul
2010-05-12gallivm: s/bool/booleanBrian Paul
2010-05-12gallivm: rename vars, update comments, etcBrian Paul
2010-05-12gallivm: comment out LLVMUnionTypeKind caseBrian Paul
2010-05-12gallivm: rename texel result paramBrian Paul
Be clear that this parameter returns four texel channel results.
2010-05-12gallivm: add a few commentsBrian Paul
2010-05-12gallivm/llvmpipe: add const qualifiersBrian Paul
2010-05-12gallivm: added lp_typekind_name() util functionBrian Paul
2010-05-10gallivm/llvmpipe: move an old comment to a better locationBrian Paul
2010-05-10gallivm: Silent warning.José Fonseca
2010-05-10gallivm: Add missing lvalue.José Fonseca
2010-05-10gallivm: Temporarily disable custom LLVMDumpValue on MSVC.José Fonseca
Seeing very weird crashes during std::cout initialization. The fault probably lies in the way I build LLVM on MSVC, but disable for now to allow more time to investigate.
2010-05-10gallivm: cosf/sinf are macros on MSVC.José Fonseca
So taking the function address does not work.
2010-05-08gallivm: Add an alternative to LLVMDumpValue that works with Windows GUI apps.José Fonseca
2010-05-08gallivm: Fix mipfiltering with negative lod bias.José Fonseca
In particular, don't use the clamped lod to compute level + 1, or lod in [-1, 0] range will actually interpolate with level 1. This makes Mipfilter DCT pass 100%.
2010-05-08gallivm: Actually do floor/ceil/trunc for scalars.José Fonseca
Also start axing the code duplication for scalar case. The olution is to treat the scalar case specially in a few innermost functions, and leave outer functions untouched.
2010-05-08gallivm: Import the code to compute the minimax polynomials.José Fonseca
It's quite a pain to remember the details after a while, and it is quite likely we'll want to use this again, either for different polynomial orders or different functions, so commit it here.
2010-05-08gallivm: Use a minimax polynomial for exp2 in range [0,1] instead [-0.5,5].José Fonseca
The advantage of range[-0.5, 0.5] is that it doesn't require floor (for which intrinsics are only available in SSE4.1). But the EXP opcode pretty much forces us to use floor, and there is a good floor approximation around truncation available anyway. This fixes EXP failures in VShader DCT.
2010-05-08gallivm: Don't hardcode number of args twice.José Fonseca
2010-05-08gallivm: The the JIT engine to use our sinf()/cosf() on Windows.José Fonseca
A quick hack to get the right results, as there are many DCT tests which use these opcodes to generate data to test other opcodes.
2010-05-08gallivm: Fix BREAK/CONT translation.José Fonseca
The cont_mask must be restored and exec mask recomputed in order to decide whether to repeat the loop or not. Unlike the continue mask, the break_mask must be preserved across loop iterations. Fixes several VShader DCT cases, and no regressions with glean.
2010-05-08gallivm: Fix segfaul when inserting allocas in an empty function.José Fonseca
2010-05-08gallivm: Centralize SoA swizzling into a single place.José Fonseca
2010-05-08gallivm: Support predicates.José Fonseca
2010-05-04gallivm: Proper implementation of TXL opcode.José Fonseca
2010-05-04gallivm: Fix several glitches introduced in the prev commit.José Fonseca
2010-05-04gallivm: Implement TXD.José Fonseca
2010-05-04gallivm: Increase the TGSI translation limits and centralize them in a header.José Fonseca
2010-05-04gallicm: Newton-Raphson step to improve precision.José Fonseca
Disabled as it doesn't make VS/PSPrecision DCT happy, and it would unnecessarily slow some cases where it is not needed.
2010-05-03gallivm: Display message instead of crashing when sampler generator was not ↵José Fonseca
supplied for tgsi translation.
2010-05-03gallivm: Replace predicate assertion failure with warning message.José Fonseca
2010-05-02gallivm: fix nested break and continue statementsZack Rusin
we were resetting the mask on each new break/continue statement within the same scope. we always need to and the current execution mask with the current break/continue mask to get the correct result (the masks are always ~1 initially)
2010-04-30llvmpipe: fix out-of-bounds texture samplingBrian Paul
If we're using a wrap mode in which border color sampling is possible it means that texcoords may be outside of the texture image bounds. Fetching the texel may result in a segfault. Use the 'use_border' variable to catch such texcoords and replace the texel offset with zero (which will be in bounds). Fixes segfault in Lightsmark demo, fd.o bug 27877.
2010-04-30llvmpipe: added lp_build_sample_nop() for debuggingBrian Paul
2010-04-29gallivm: add some assertions in special-case sampler codeBrian Paul
2010-04-27gallivm: Drop BGNFOR, ENDFOR, REP, and ENDREP opcodes.José Fonseca
2010-04-27gallivm: Disable llvm.cos.v4f32 and llvm.sin.v4f32 instrinsics on Windows.José Fonseca
Runtime linking doesn't quite work. Just comment then out for now to prevent crashes. These will go away in the future because calling 4 times CRT's cosf()/sinf() is over-precise and under-performing.
2010-04-27gallivm: Ensure all allocas are in the first block.José Fonseca
Refactor the code to make this easier.
2010-04-26gallivm: BGNFOR/ENDFOR fallthrough to BGNLOOP/ENDLOOPAlan Hourihane
2010-04-26llvmpipe: Respect pipe_sampler_view::swizzle_r/g/b/aJosé Fonseca
This allows u_sampler_view_default_dx9_template to do its magic on DX9.
2010-04-25gallivm: Rename variable info to opcode_info.Vinson Lee
Avoid hiding existing variable already named info in outer scope.
2010-04-24gallivm: Remove NULL check of pointer that can't be NULL.Vinson Lee
info cannot be NULL at the call to debug_printf. emit_instruction dereferences info, so at debug_printf it is either not NULL or the program has already crashed.
2010-04-24llvmpipe: Implement shader bias.José Fonseca
Fixes glean glsl1 test: texture2D(), with bias.