Keith Whitwell
fe2b31e4a8
tgsi: rename fields of tgsi_full_declaration to reduce verbosity
...
DeclarationRange -> Range
2009-11-24 15:04:18 +00:00
Keith Whitwell
7d6c8f980d
tgsi: rename fields of tgsi_full_instruction to avoid excessive verbosity
...
InstructionPredicate -> Predicate
InstructionLabel -> Label
InstructionTexture -> Texture
FullSrcRegisters -> Src
FullDstRegisters -> Dst
2009-11-24 15:02:23 +00:00
Michal Krol
cb90c43676
Rename TGSI LOOP instruction to better match theri usage.
...
The LOOP/ENDLOOP pair is renamed to BGNFOR/ENDFOR as its behaviour
is similar to a C language for-loop.
The BGNLOOP2/ENDLOOP2 pair is renamed to BGNLOOP/ENDLOOP as now
there is no name collision.
2009-07-31 18:14:40 +02:00
Keith Whitwell
adc6f8cdfc
gallivm: updates for TGSI changes
...
make linux-llvm succeeds, but doesn't seem to be working, at least with
llvm 2.5
2009-07-23 17:59:08 +01:00
Keith Whitwell
78379abcbf
gallium: remove deprecated TGSI opcodes
...
Various opcodes which can be implemented trivially with other TGSI opcodes,
such as matrix multiplication and negation. These were not used by any
state tracker or implemented by any of the drivers.
2009-07-23 14:38:26 +01:00
Keith Whitwell
fd31f92cea
gallium: simplify tgsi_full_immediate struct
...
Remove the need to have a pointer in this struct by just including
the immediate data inline. Having a pointer in the struct introduces
complications like needing to alloc/free the data pointed to, uncertainty
about who owns the data, etc. There doesn't seem to be a need for it,
and it is unlikely to make much difference plus or minus to performance.
Added some asserts as we now will trip up on immediates with more
than four elements. There were actually already quite a few such asserts,
but the >4 case could be used in the future to specify indexable immediate
ranges, such as lookup tables.
2009-07-22 12:42:09 +01:00
Dave Airlie
8064a517b2
llvm: fix compile on gcc 4.4
2009-06-08 18:26:27 +10:00
José Fonseca
ea4bf267e4
util: Move p_debug.h into util module.
...
The debug functions depend on several util function for os abstractions, and
these depend on debug functions, so a seperate module is not possible.
2009-02-18 12:05:26 +00:00
Michal Krol
a872b518c9
gallivm: Fix build -- rename Size to NrTokens.
2009-02-10 15:16:35 +01:00
Michel Dänzer
45604ffac7
gallivm: Make sure the bitcode buffer is followed by a 0 byte.
...
May fail to parse otherwise.
2009-01-12 15:05:05 +01:00
Michel Dänzer
f43e621e22
gallivm: Print error message from ParseBitcodeFile() in case it fails.
2009-01-12 12:39:31 +01:00
Michel Dänzer
f586c31fa6
gallivm: Adapt to header file move in LLVM 2.4.
2009-01-12 12:34:27 +01:00
Stephane Marchesin
7b0e0e1a0d
gallivm: fix some small stuff.
2008-11-16 20:32:05 +01:00
Stephane Marchesin
b81a7dc2d8
gallivm: replace the temp parameters of the JIT function with alloca'ed temps. This avoids useless writes of temporary results.
2008-10-30 23:52:59 +01:00
Keith Whitwell
d7f1cb5b5a
Merge commit 'origin/gallium-0.1' into gallium-0.2
...
Conflicts:
src/gallium/auxiliary/gallivm/instructionssoa.cpp
src/gallium/auxiliary/gallivm/soabuiltins.c
src/gallium/auxiliary/rtasm/rtasm_x86sse.c
src/gallium/auxiliary/rtasm/rtasm_x86sse.h
src/mesa/main/texenvprogram.c
src/mesa/shader/arbprogparse.c
src/mesa/shader/prog_statevars.c
src/mesa/state_tracker/st_draw.c
src/mesa/vbo/vbo_exec_draw.c
2008-10-10 15:23:36 +01:00
Stephane Marchesin
db9de99925
Gallivm: cleanup soa storage.
2008-10-09 23:32:01 +02:00
Stephane Marchesin
a0809c5271
Gallivm: reorder the functions alphabetically so I can work on it.
2008-10-07 23:43:21 +02:00
Stephane Marchesin
85e578bbc7
Gallivm: don't say hello, it's rude.
2008-10-07 21:13:49 +02:00
Stephane Marchesin
94ba48bd85
Gallivm: fix the constant layout, this gets a bunch of progs/ working. Notably, gears doesn't.
2008-10-07 21:11:01 +02:00
Stephane Marchesin
8bdb4d2b2f
Gallivm: add slt. glxgears should be running, except it isn't.
2008-10-02 10:19:47 -04:00
Stephane Marchesin
3f4b67f5d7
Gallivm: port to llvm 2.4.
2008-10-02 10:19:47 -04:00
Stephane Marchesin
fdcaf569d4
Gallivm: fix off-by-one.
2008-10-02 10:19:47 -04:00
Stephane Marchesin
0116ea34e1
Gallivm: more instructions.
2008-10-02 10:19:47 -04:00
Stephane Marchesin
3f477e111a
Gallivm: make it compile again, add some opcodes.
2008-10-02 10:19:47 -04:00
Stephane Marchesin
a6ff215777
Gallivm: add slt. glxgears should be running, except it isn't.
2008-10-01 00:00:58 +02:00
Stephane Marchesin
4ae161e940
Gallivm: port to llvm 2.4.
2008-09-30 20:50:49 +02:00
Stephane Marchesin
7379d0ef8f
Gallivm: fix off-by-one.
2008-09-28 23:18:55 +02:00
Stephane Marchesin
a0a06cbc5b
Gallivm: more instructions.
2008-09-28 19:48:26 +02:00
Stephane Marchesin
ab74b8e354
Gallivm: make it compile again, add some opcodes.
2008-09-28 18:33:23 +02:00
Brian Paul
4f25420bdd
gallium: refactor/replace p_util.h with util/u_memory.h and util/u_math.h
...
Also, rename p_tile.[ch] to u_tile.[ch]
2008-08-24 17:48:55 -06:00
Michal Krol
f633b14b92
gallivm: Translate KIL instead of KILP.
2008-08-13 10:58:54 +02:00
José Fonseca
c208a2c791
Merge tgsi/exec and tgsi/util directories.
2008-07-28 12:42:13 +09:00
Stephane Marchesin
92d711e9e6
llvm: build fixes.
2008-07-13 11:33:41 +02:00
Michal Krol
3de18c2ac3
gallivm: Fix build after TGSI declaration interface changes.
2008-05-31 19:41:29 +02:00
Zack Rusin
0bf82c0111
cosmetic changes
2008-05-17 13:58:45 -04:00
Zack Rusin
a7449d4d84
fix rsq
2008-05-17 13:58:44 -04:00
Zack Rusin
02e45b2dad
fix abs and start on rsq
2008-05-17 13:58:44 -04:00
Zack Rusin
1d1cf8edf6
do the lit (some artifacts present)
2008-05-17 13:58:44 -04:00
Zack Rusin
ea1a607292
implement min/max and abstract ops on vectors
2008-05-17 13:58:44 -04:00
Zack Rusin
59766ac273
llvm: implement sub and abs
2008-05-17 13:58:44 -04:00
Zack Rusin
735752e8dc
fix injections of functions from builtins into shaders
2008-05-17 13:58:44 -04:00
Zack Rusin
aeae57693b
move the swizzling code to gallivm in preperation for code-generating it
...
also some minor cleanups
2008-05-17 13:58:44 -04:00
Zack Rusin
19f15277d1
adjust llvm code to the changes in 2.3
2008-05-12 17:17:18 -04:00
Zack Rusin
fb1c09305e
Use llvm 2.3 (2.2 won't work because of a lot of problems, e.g.
...
lack of constant vectors handling in execution engine)
2008-04-21 15:18:13 -04:00
Zack Rusin
201ac414d4
make llvm draw paths compile with the latest changes
...
switch the method of distribution of builtins (to get rid of the
llvm2cpp dependency)
2008-04-21 00:26:18 -04:00
Michal Krol
bcb454e7a6
tgsi: Drop pre-ps_2_0 opcodes.
2008-03-13 18:12:36 +01:00
Zack Rusin
cac037d36d
add code handling dependencies between generated code
2008-03-12 22:57:52 -04:00
Zack Rusin
2366bb1baf
Add some basic documentation for gallivm code
2008-03-12 22:06:51 -04:00
Zack Rusin
a9c40f833e
refactor code calling builtins and implement dp4
2008-03-01 15:28:00 -05:00
Zack Rusin
17f543fc45
make the first builtin work (dp3)
2008-03-01 15:28:00 -05:00
Zack Rusin
e884c7ed9a
start implementing start of bultins
2008-03-01 15:28:00 -05:00
José Fonseca
9a8a5d7c2f
gallium: Replace // comments.
2008-02-27 16:42:15 +09:00
José Fonseca
e773a813cf
Initial scons support to build gallivm.
...
Not yet complete.
2008-02-19 14:01:49 +09:00
José Fonseca
3f3b09d6d8
Rename llvm -> gallivm.
...
Following the directory == library name policy simplifies the build system.
2008-02-18 20:05:06 +09:00