summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/gallivm
AgeCommit message (Collapse)Author
2010-05-14gallivm: added some vector length sanity checksBrian Paul
2010-05-14gallivm: added lp_sizeof_llvm_type()Brian Paul
2010-05-14gallivm: comments, const qualifiersBrian Paul
2010-05-14tgsi: clean up in emit_fetch()Brian Paul
2010-05-13gallivm: silence uninitialized var warningBrian Paul
2010-05-13gallivm: silence casting warningBrian Paul
2010-05-13gallivm: silence uninitialized var warningBrian Paul
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