summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/gallivm
Commit message (Collapse)AuthorAgeFilesLines
* gallivm: Allow target specific intrinsics in lp_declare_intrinsic()Tom Stellard2012-01-131-7/+0
| | | | | Target specific intrinsics are also prefixed with llvm, so this assert was preventing us from using them.
* tgsi: consolidate TGSI string arrays in new tgsi_strings.hBrian Paul2012-01-051-0/+1
| | | | | | | | | | There was some duplication between the tgsi_dump.c and tgsi_text.c files. Also use some static assertions to help catch errors when adding new TGSI values. v2: put strings in tgsi_strings.c file instead of the .h file. Reviewed-by: Dave Airlie <[email protected]>
* gallivm: Close a memory leakLauri Kasanen2011-12-221-0/+1
| | | | | | | | | | | | | | | | Hi all This fixes a memory leak of 32 bytes on exit. From 924f8fdccb41b011f372bc57252005bcdb096105 Mon Sep 17 00:00:00 2001 From: Lauri Kasanen <[email protected]> Date: Thu, 22 Dec 2011 21:28:33 +0200 Subject: [PATCH] gallivm: Close a memory leak As reported by "valgrind --leak-check=full glxgears". Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* gallivm: Fix build with llvm-3.1svn.Vinson Lee2011-12-162-1/+15
| | | | | | | | | llvm-3.1svn r145714 moved global variables into a new TargetOptions class. TargetMachine constructor now needs a TargetOptions object as well. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* llvmpipe: Trim the fragment shader cached based on LLVM IR instruction count.José Fonseca2011-12-082-0/+29
| | | | | | | | | | | | Number of fragment shader variants is not very representative of the memory used by LLVM, neither is number of shader instructions, as often texture sampling constitutes most of the generated code. This change adds an additional trim criteria: least recently used fragment shader variants will be freed until the total number of LLVM IR instruction falls below a specified threshold. Reviewed-by: Brian Paul <[email protected]>
* gallivm: Remove duplicate statement.José Fonseca2011-11-141-2/+0
| | | | | | ary_ge_arx_arz is already set earlier. Reviewed-by: Brian Paul <[email protected]>
* gallivm: Include stddef.h before the LLVM C++ headers.José Fonseca2011-11-142-0/+4
| | | | | Necessary with build against LLVM 2.6, with recent gcc, as LLVM headers depend on ptrdiff_t but don't properly include stddef.h
* llvmpipe: fix typo in the depth sampling aos code.Dave Airlie2011-11-061-1/+1
| | | | | | Just found by reading llvmpipe code for no great reason. Signed-off-by: Dave Airlie <[email protected]>
* gallivm: change sys::getHostTriple to sys::getDefaultTargetTriple for LLVM ↵Christian Inci2011-11-061-0/+4
| | | | | | | | >= 0x0301 LLVM change r143502 Signed-off-by: José Fonseca <[email protected]>
* llvmpipe: Remove unsed variables.José Fonseca2011-10-312-6/+1
|
* gallivm: added lp_build_print_ivec4() functionBrian Paul2011-10-232-0/+24
|
* gallivm: Eliminate tgsi_util_get_full_src_register_sign_mode call.José Fonseca2011-10-161-11/+3
| | | | | It complicates more than it simplifies, now that there's only one negate bit on TGSI registers.
* llvmpipe: Use lp_build_ifloor_fract for exp2 calculation.José Fonseca2011-10-161-5/+1
| | | | | | | Instead of separate ifloor / fract calls. No change for SSE4.1 code, but less FP<->SI conversions on non SSE4.1 systems.
* gallivm: fix build with llvm 3.0svnBrian Paul2011-09-211-2/+8
| | | | https://bugs.freedesktop.org/show_bug.cgi?id=41065
* gallivm: fix build with LLVM 3.0svnTobias Droste2011-09-151-1/+10
| | | | | | | | | LLVM 3.0svn added SubtargetInfo as additional parameter to createMCDisassembler() and createMCInstPrinter(). See revision 139237 of LLVM. Signed-off-by: Tobias Droste <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* gallivm: remove unused varsBrian Paul2011-09-131-5/+0
|
* gallium: add shadow 1D and 2D array samplers to TGSIMarek Olšák2011-09-102-0/+12
| | | | And filling in all the switch statements in auxiliary. Mostly untested.
* gallivm: fix build with LLVM 3.0svnTobias Droste2011-09-051-4/+10
| | | | | | | LLVM 3.0svn moved TargetRegistry.h and TargetSelect.h. See revision 138450 of LLVM. Signed-off-by: Tobias Droste <[email protected]>
* gallivm: Add a note about log2 computation and denormalized numbers.José Fonseca2011-07-221-0/+6
|
* gallivm: Fix lp_build_exp2 order 4-5 polynomial coefficients and bump order.José Fonseca2011-07-221-12/+12
| | | | | | | Not sure how I computed these, but they were wrong (which explains why bumping the polynomial order before never improved precision). This allows to pass the EXP test cases of PSPrecision/VSPrecision DCTs.
* gallivm: Increase lp_build_rsqrt() precision.José Fonseca2011-07-221-1/+1
| | | | | | | Add an iteration step, which makes rqsqrt precision go from 12bits to 24, and fixes RSQ/NRM test case of PSPrecision/VSPrevision DCTs. There are no uses of this function outside shader translation.
* gallivm: Update minimax comments.José Fonseca2011-07-221-6/+17
|
* gallivm: Fix lp_build_exp/lp_build_log.José Fonseca2011-07-221-2/+2
| | | | | Never used so far -- we only used the base 2 variants -- which is why it went unnoticed so far.
* gallivm: Rename createAsmInfo to createMCAsmInfo with llvm-3.0.Vinson Lee2011-07-161-0/+4
| | | | | llvm-3.0svn r135219 renamed createAsmInfo to createMCAsmInfo in include/llvm/Target/TargetRegistry.h.
* gallivm: Re-enable LLVMUnionTypeKind case for llvm-2.7 only.Vinson Lee2011-07-111-2/+2
| | | | LLVMUnionTypeKind is not in llvm-2.6, llvm-2.8, llvm-2.9, or llvm-3.0svn.
* gallivm: Remove LLVMOpaqueKindType case with llvm-3.0.Vinson Lee2011-07-111-0/+2
| | | | | llvm-3.0svn r134829 removed LLVMOpaqueKindType from enum LLVMTypeKind in include/llvm-c/Core.h.
* gallivm: Fix build with llvm-3.0Gustaw Smolarczyk2011-07-081-9/+7
| | | | | | | | | | LLVM 3.0svn changes pretty rapidly. The change in Target->createMCInstPrinter() signature which inspired commits 40ae214067673edbda79371969d1730b6194d83e and 92e29dc5b0474c073b0f05d60629fc6c3decfca4 has been reverted. Signed-off-by: Gustaw Smolarczyk <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* gallivm: Pass in CPU name to createTargetMachine when on llvm-3.0.Vinson Lee2011-06-301-0/+4
| | | | | llvm-3.0svn revision 134127 changed createTargetMachine to take in an additional argument of the CPU name.
* gallivm: Rename TargetInstrDesc to MCInstrDesc when using llvm-3.0.Vinson Lee2011-06-301-0/+4
| | | | llvm-3.0svn revision 134021 renamed TargetInstrDesc to MCInstrDesc.
* gallivm: Fix x86 build with llvm-3.0svn.Vinson Lee2011-06-231-0/+4
| | | | LLVM revision 133739 renamed StackAlignment to StackAlignmentOverride.
* gallium: s/bool/boolean/Brian Paul2011-06-081-1/+1
|
* gallivm: Fix for dynamically linked LLVM 2.8 library.José Fonseca2011-05-201-2/+12
| | | | | | | | | This prevents the error prog: for the -disable-mmx option: may only occur zero or one times! when creating a new context after XCloseDisplay with DRI drivers linked with a shared LLVM 2.8 library.
* gallivm: Tell LLVM to not assume a 16-byte aligned stack on x86.José Fonseca2011-05-181-0/+13
| | | | Fixes fdo 36738.
* Remove redundant util_unsigned_logbase2Matt Turner2011-05-121-1/+1
| | | | | | | util_logbase2 is exactly the same function. Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* gallivm: fix warning: ‘value’ may be used uninitialized in this functionMarek Olšák2011-04-271-1/+1
| | | | The path where it's uninitialized is guarded by an assert.
* llvmpipe: Take the sampler view's first_level into account when sampling.Fabian Bieler2011-04-084-24/+50
|
* gallivm: Fix build with llvm-2.9.Vinson Lee2011-03-281-2/+2
| | | | | The build fix of commit 40ae214067673edbda79371969d1730b6194d83e does not apply to llvm-2.9 but rather to llvm-3.0svn.
* gallivm: Fix build with llvm-2.9Tobias Droste2011-03-281-3/+9
| | | | | | In llvm-2.9 Target->createMCInstPrinter() takes different arguments Signed-off-by: Tobias Droste <[email protected]>
* gallivm: Fix build with llvm-2.9.Vinson Lee2011-03-251-0/+5
| | | | | In llvm-2.9, the header file llvm/System/Host.h has been moved to llvm/Support/Host.h.
* gallivm: Fix build with llvm 2.6 on 32bit platformsJosé Fonseca2011-03-131-2/+4
|
* gallivm: Use LLVM MC disassembler, instead of udis86.José Fonseca2011-03-134-201/+365
| | | | | Included in LLVM 2.7+. Unlink udis86, should support all instructions that LLVM can emit.
* llvmpipe: clamp texcoords in lp_build_sample_compare()Brian Paul2011-03-071-0/+5
| | | | | | See previous commit for more info. NOTE: This is a candidate for the 7.10 branch.
* gallivm: Initialize stack valuesJakob Bornecrantz2011-02-261-8/+8
| | | | | valgrind gives me a warning with llvmpipe with profile builds but not debug builds, this seems to fix the issue at least.
* gallivm: Use simple scaling plus casting in more unorm->float cases.José Fonseca2011-02-191-25/+34
|
* draw: Init llvm if not providedJakob Bornecrantz2011-01-241-1/+5
|
* Merge branch 'draw-instanced'Brian Paul2011-01-152-0/+81
|\ | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/draw/draw_llvm.c src/gallium/drivers/llvmpipe/lp_state_fs.c src/glsl/ir_set_program_inouts.cpp src/mesa/tnl/t_vb_program.c
| * gallivm/llvmpipe: implement system values and instanceIDBrian Paul2010-12-082-0/+79
| |
* | gallivm: Disable MMX-disabling code on llvm-2.9.Vinson Lee2010-12-221-0/+2
| | | | | | | | | | | | | | The disable-mmx option was removed in llvm-2.9svn by revisions 122188 and 122189. Fixes FDO bug 32564.
* | gallivm: Fix 'cast from pointer to integer of different size' warning.Vinson Lee2010-12-221-1/+1
| | | | | | | | | | | | Fixes this GCC warning. lp_bld_const.h: In function 'lp_build_const_int_pointer': lp_bld_const.h:137: warning: cast from pointer to integer of different size
* | gallivm: Cleanup util_format_xxx_fetch_xxx call generation.José Fonseca2010-12-171-47/+24
| | | | | | | | | | | | | | No need to register function prototypes in the module now that we call the C function pointer directly -- less LLVM objects lying around. Limited testing with lp_test_format.