summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader
Commit message (Collapse)AuthorAgeFilesLines
* Fix SPARC assembly for 64-bitIan Romanick2005-07-281-12/+12
| | | | | | | | | | | | | | - The test for whether or not we're building for 64-bit is '#ifdef __arch64__'. This appears to be correct on both Linux and Solaris. - The test for Solaris is now '#if defined(SVR4) || defined(__SVR4) || defined(__svr4__)'. GCC 3.4.0 has all three defined on Solaris 9. - Enables assembly language clip routines. - Fixes to make GLSL code build on Solaris. - Update gl_SPARC_asm.py.
* Make the vertex program source register Index field a signed int sinceBrian Paul2005-07-222-10/+10
| | | | | | | relative addressing can be negative. Change some GLuint indexes to GLint in the t_vp_build.c file. Added PROGRAM_UNDEFINED token for initializing the register File field to avoid a gcc 4.0 warning.
* Wrap every place that accesses a dispatch table with a macro. A new script-Ian Romanick2005-07-181-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | generated file, called src/mesa/glapi/dispatch.h, is added. This file contains three macros for each API function. It contains a GET, a SET, and a CALL. Each of the macros take a pointer to the context and a pointer to the dispatch table. In several threads on mesa3d-dev we discussed replacing _glapi_add_entrypoint with a new function called _glapi_add_dispatch. For this discussion, the important difference between the two is that the caller of _glapi_add_dispatch does *not* know what the dispatch offset will be at compile time. Because of this callers need to track the dispatch offset returned by _glapi_add_dispatch. http://marc.theaimsgroup.com/?t=111947074700001&r=1&w=2 The downside is that driver code then has to access the dispatch table two different ways. It accesses it using structure tags (e.g., exec->Begin) for functions with fixed offsets and via a remap table (e.g., exec[ remap->NewExtensionFunction ]) for functions without fixed offsets. Yuck! Using the macros allows both types of functions to be accessed identically. If a driver needs to set a pointer for Begin, it does 'SET_Begin(ctx, exec, my_begin_function)'. If it needs to set a pointer for NewExtensionFunction, it does 'SET_NewExtensionFunction(ctx, exec, my_NewExtensionFunction_function)'. Furthermore, if at some point in the future a static offset is assigned for NewExtensionFunction, only the macros need to change (instead of every single place that accesses a table for that function). This code differs slightly from the originally posted patches in that the CALL, GET, and SET marcos no longer take a context pointer as a parameter. Brian Paul had suggested that the remap table could be stored as a global since it would be set at CreateScreen time and would be constant for all contexts. This change reflects that feedback. http://marc.theaimsgroup.com/?t=112087194700001&r=1&w=2
* Set fp->Opcode for OP_TEX_KILL case, fix from Ben Skeggs.Keith Whitwell2005-07-011-0/+1
|
* comment-out some unused code to silence warningsBrian Paul2005-07-012-2/+3
|
* fix typo in assertionsBrian Paul2005-07-011-2/+2
|
* added newline at end of fileBrian Paul2005-06-302-2/+2
|
* Add a set of predicate functions for testing matrices instead of directlyBrian Paul2005-06-301-3/+3
| | | | | | testing the flags field. Move definition of all the MAT_FLAGs into the m_matrix.c file since they're now private.
* Use ALIGN_MALLOC for parameter lists.Keith Whitwell2005-06-081-6/+13
|
* Add a VP_MAX_OPCODE entry to allow engines with internal opcodes toKeith Whitwell2005-06-071-1/+3
| | | | place them sensibly.
* Committing in .Jouk Jansen2005-06-011-0/+41
| | | | | | | | OpenVMS makefile added Added Files: Mesa/src/mesa/shader/grammar/descrip.mms ----------------------------------------------------------------------
* Committing in .Jouk Jansen2005-06-015-382/+382
| | | | | | | | | | | | Update OpneVMS compilesupport Modified Files: Mesa/src/mesa/shader/descrip.mms Mesa/src/mesa/shader/slang/descrip.mms Mesa/src/mesa/shader/slang/slang_compile.c Mesa/src/mesa/shader/slang/slang_storage.c Mesa/src/mesa/shader/slang/slang_storage.h ----------------------------------------------------------------------
* change local var names from "asm" to "assem" - I guess it causedMichal Krol2005-05-251-22/+22
| | | | gcc 3.3.5 to break, but not tested it
* a small utility to convert .syn files to its binary forms;Michal Krol2005-05-251-0/+79
| | | | does not require any command line params;
* silencium gcc warningsMichal Krol2005-05-251-0/+2
|
* more slang codeMichal Krol2005-05-256-255/+312
|
* ncrease stack sizeMichal Krol2005-05-252-1/+2
|
* moved from mesa/shader to mesa/shader/grammarMichal Krol2005-05-256-0/+0
|
* remove the GLSL spec wording;Michal Krol2005-05-253-3020/+2267
| | | | | | | reorder some elementary operators; disable assignment "=" and equality "==" "!=" operators - they are handled internally by the assembly generator; fix minor typos
* stand-alone vertsions of grammar_mesa - used by utilities;Michal Krol2005-05-252-0/+84
| | | | DO NOT BUILD UNDER MESA
* change the behaviour of enter and local_addr instructionsMichal Krol2005-05-251-5/+5
|
* moved to windows build dirKarl Schultz2005-05-241-493/+0
|
* silence gcc warningsKeith Whitwell2005-05-233-0/+10
|
* Committing in .Jouk Jansen2005-05-201-2/+11
| | | | | | | | | | Update openVMS compile support Modified Files: Mesa/progs/demos/descrip.mms Mesa/src/mesa/shader/slang/descrip.mms Mesa/src/mesa/tnl/descrip.mms ----------------------------------------------------------------------
* intermediate code generator (not finished);Michal Krol2005-05-1914-77/+4053
| | | | generic back-end interpreter (interprets directly intermediate code)
* add static_assert macroMichal Krol2005-05-191-0/+2
|
* fix info log grabbingMichal Krol2005-05-191-3/+3
|
* int -> size_t to fix compile on LP64.Adam Jackson2005-05-111-1/+1
|
* Fix some valgrind complaintsKeith Whitwell2005-05-101-0/+4
|
* Fix some valgrind complaintsKeith Whitwell2005-05-101-2/+0
|
* reduce the use of malloc and strdup for parameter listsKeith Whitwell2005-05-102-25/+33
|
* Port Mesa to build on a P64 platform (e.g., Win64). P64 platformsKarl Schultz2005-05-057-15/+15
| | | | | | | | use 64-bit pointers and 32-bit longs. So, operations like casting pointers to unsigned long and back to pointer won't work. glheader.h now includes files to define uintptr_t, which should instead be used for this sort of operation. It is an integer type that is the same size as a pointer.
* Sort instructions for clarity.Keith Whitwell2005-05-041-33/+33
|
* Include negate information in disassembly output.Keith Whitwell2005-05-041-6/+12
|
* Mark unused registers as undefined so dissassemblers can recognizedKeith Whitwell2005-05-041-0/+10
| | | | them easily.
* Improve the quality of the disassembly output for fragment programs.Keith Whitwell2005-05-041-129/+125
|
* Committing in .Jouk Jansen2005-05-041-2/+3
| | | | | | | | OpenVMS compile update Modified Files: Mesa/src/mesa/shader/slang/descrip.mms ----------------------------------------------------------------------
* Add more error checking.Michal Krol2005-04-222-113/+286
|
* Cosmetic changes.Michal Krol2005-04-221-5/+11
|
* Move some utility functions to slang_utility.c.Michal Krol2005-04-223-41/+121
|
* Provide precompiled binary versions of built-in library .gc sourcesMichal Krol2005-04-227-2502/+4501
| | | | to dramatically improve shader compiling performance.
* Reduce the size of mesa's internal fragment and vertex programKeith Whitwell2005-04-2112-576/+694
| | | | | representations by switching to packed structures for registers and instructions.
* use _mesa_pow() for LIT (bug 3087)Brian Paul2005-04-211-1/+1
|
* fix state.light[n].spot.direction.w value (bug 3083)Brian Paul2005-04-201-1/+2
|
* Updates for OpenVMS : New makefilesJouk Jansen2005-04-185-6/+54
| | | | | | | | | | | | | added some type-casts Modified Files: Mesa/src/mesa/shader/descrip.mms Mesa/src/mesa/shader/program.c Mesa/src/mesa/shader/slang/slang_compile.c Mesa/src/mesa/shader/slang/slang_preprocess.c Added Files: Mesa/src/mesa/shader/slang/descrip.mms ----------------------------------------------------------------------
* remove carriage returnsBrian Paul2005-04-153-3040/+3040
|
* Fix alpha value of STATE_LIGHTMODEL_SCENECOLOR. From the spec:Keith Whitwell2005-04-151-3/+7
| | | | | | | The "w" component of the program parameter variable is filled with the alpha component of the front diffuse material color. Make sure matrix inverses are uptodate also.
* implement info log; parse #version directiveMichal Krol2005-04-153-177/+402
|
* slang preprocessorMichal Krol2005-04-152-0/+120
|
* slang #version directive syntaxMichal Krol2005-04-152-0/+182
|