summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* nv50/nvc0: Build codegen in nv50.Johannes Obermayr2013-01-126-36/+45
| | | | This is required to make libnv50 independent of libnvc0.
* winsys/sw/wayland: Fix build to properly use wayland cflagsPekka Vuorela2013-01-121-1/+1
| | | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59281 Reviewed-by: Andreas Boll <[email protected]>
* texformat: use MESA_FORMAT_ARGB2101010 with GL_UNSIGNED_INT_2_10_10_10_REVJordan Justen2013-01-121-1/+7
| | | | | | | | | Choose MESA_FORMAT_ARGB2101010 when storing GL_RGBA + GL_UNSIGNED_INT_2_10_10_10_REV or GL_RGB + GL_UNSIGNED_INT_2_10_10_10_REV. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* texstore argb2101010: merge GL_RGBA and GL_RGB casesJordan Justen2013-01-121-15/+3
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glformats: support _mesa_bytes_per_pixel for 2101010+GL_RGBJordan Justen2013-01-121-1/+2
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glformats: add _mesa_base_format_component_countJordan Justen2013-01-122-0/+29
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glformats: add functions to detect signed/unsigned integer typesJordan Justen2013-01-122-14/+46
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* unpack: support unpacking MESA_FORMAT_ARGB2101010Jordan Justen2013-01-121-0/+18
| | | | | | | Note: This is a candidate for the stable branches. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: Add extension tracking for {ARB,OES}_get_program_binaryIan Romanick2013-01-111-0/+2
| | | | | | | | | | | The ARB_get_program_binary spec says "OpenGL 3.0 is required." The nearly identical OES_get_program_binary extension is available for OpenGL ES 2.0, so I don't see how / why OpenGL 3.0 is a requirement for the ARB version. Let's just enable whenever GL_ARB_shader_objects is available. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Add GetProgramiv support for GL_PROGRAM_BINARY_LENGTHIan Romanick2013-01-111-0/+3
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Add Get support for PROGRAM_BINARY_FORMATS and NUM_PROGRAM_BINARY_FORMATSIan Romanick2013-01-111-0/+4
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Add tracking for GL_PROGRAM_BINARY_RETRIEVABLE_HINT stateIan Romanick2013-01-112-0/+62
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Emit errors for geometry shader enums when ARB_gs4 is not supportedIan Romanick2013-01-111-5/+15
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* glapi: Emit dispatch for {ARB,OES}_get_program_binaryIan Romanick2013-01-112-12/+16
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* glapi: Remove spurious space from end of extension nameIan Romanick2013-01-111-1/+1
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Add stub implementations of glGetProgramBinary and glProgramBinaryIan Romanick2013-01-112-0/+63
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix the naming of _mesa_ProgramParameteriARBIan Romanick2013-01-112-4/+4
| | | | | | | | After recent changes in the XML, the dispatch generators will expect this function to be named _mesa_ProgramParameteri. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* glapi: Reorder and clean up some of the includes and commentsIan Romanick2013-01-111-7/+3
| | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix GL_SHADER_BINARY_FORMATS queryIan Romanick2013-01-111-8/+2
| | | | | | | | | | | | | | | There were two bugs here. First, this and several other queries were not available in a desktop GL context with GL_ARB_ES2_compatibility. Second, GL_NUM_SHADER_BINARY_FORMATS returns zero, but GL_SHADER_BINARY_FORMATS writes one element of data to the buffer. If NUM is zero, no data should be written. Fixes piglit test 'arb_get_program_binary-overrun shader'. NOTE: This is a candidate for stable release branches. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* r600g: fix warnings for htile vaDave Airlie2013-01-112-2/+2
| | | | | | This fixes a warning about mismatched types. Signed-off-by: Dave Airlie <[email protected]>
* r600g: texture buffer object + glsl 1.40 enable support (v2)Dave Airlie2013-01-1110-19/+373
| | | | | | | | | | | | | | | | | | | This adds TBO support to r600g, and with GLSL 1.40 enabled, we now get 3.1 core profiles advertised for r600g. The r600/700 implementation is a bit different from the evergreen one, as r6/7 hw lacks vertex fetch swizzles. So we implement it by passing 5 constants per sampler to the shader, the shader uses the first 4 as masks for each component and the 5th as the alpha value to OR in. Now TXQ is also broken so we have to pass a constant for the buffer size, on evergreen we just pass this, on r6/7 we pass it as the 6th element in the const info buffer. v1.1: drop return as DDX doesn't use a texture type v2: add r600/700 support. Signed-off-by: Dave Airlie <[email protected]>
* r600g: uniform buffer object supportDave Airlie2013-01-112-9/+49
| | | | | | | | | | This adds 12 more constant buffers for use as UBOs, along with adding relative constant fetching for 2D indices. This with GLSL 1.40 enabled passes all the same tests as softpipe on my evergreen system. Signed-off-by: Dave Airlie <[email protected]>
* r600: always export a position from vertex shaderDave Airlie2013-01-111-0/+17
| | | | | | | This fixes piglit glsl-1.40-tf-no-position from gpu hanging on my rv635 at least. Signed-off-by: Dave Airlie <[email protected]>
* glcpp: Add tests for line continuationCarl Worth2013-01-114-0/+46
| | | | | | | | | First we test that line continuations are honored within a comment, (as recently changed in glcpp), then we test that line continuations can be disabled via an option within the context. This is tested via the new support for a test-specific command-line option passed to glcpp. Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp: Rewrite line-continuation support to act globally.Carl Worth2013-01-111-66/+49
| | | | | | | | | | | | | | | | | | | Previously, we were only supporting line-continuation backslash characters within lines of pre-processor directives, (as per the specification). With OpenGL 4.2 and GLES3, line continuations are now supported anywhere within a shader. While changing this, also fix a bug where the preprocessor was ignoring line continuation characters when a line ended in multiple backslash characters. The new code is also more efficient than the old. Previously, we would perform a ralloc copy at each newline. We now perform copies only at each occurrence of a line-continuation. This commit fixes the line-continuation.vert test in piglit. Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp: Add --disable-line-continuations argument to standalone glcppCarl Worth2013-01-111-2/+44
| | | | | | | This will allow testing of disabled line-continuation on a case-by-case basis, (with the option communicated to the preprocessor via the GL context). Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp: Allow test-specific arguments for standalone glcpp testsCarl Worth2013-01-111-2/+9
| | | | | | | | This will allow the test exercising disabled line continuations to arrange for the --disable-line-continuations argument to be passed to the standalone glcpp. Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp: Honor the GL context's DisableGLSLLineContinuations optionCarl Worth2013-01-111-1/+3
| | | | | | And simply don't call into the function that removes line continuations. Reviewed-by: Kenneth Graunke <[email protected]>
* glcpp: Accept pointer to GL context rather than just the API versionCarl Worth2013-01-117-8/+21
| | | | | | | | | As the preprocessor becomes more sophisticated and gains more optional behavior, it's easiest to just pass the GL context pointer to it so that it can examine any fields there that it needs to (such as API version, or the state of any driconf options, etc.). Reviewed-by: Kenneth Graunke <[email protected]>
* drirc: Add quirk to disable GLSL line continuations for Savage2Carl Worth2013-01-111-0/+3
| | | | | | | | | | | | | | | | | | This application is known to contain shaders that: 1. Have a stray backslash as the last line of comment lines 2. Have a declaration immediately following that line Hence, interpreting that backslash as a line continuation causes the declaration to be hidden and the shader fails to compile. Fortunately, the shaders also: 3. Do not have any other intentional line-continuation characters So disabling line continuations entirely for the application fixes this problem without causing any other breakage. Reviewed-by: Kenneth Graunke <[email protected]>
* driconf: Add a new option: disable_glsl_line_continuationsCarl Worth2013-01-114-1/+15
| | | | | | | | | This is to enable a quirk for Savage2 which includes a shader with a stray '\' at the end of a comment line. Interpreting that backslash as a line continuation will break the compilation of the shader, so we need a way to disable this. Reviewed-by: Kenneth Graunke <[email protected]>
* driconf: Add proper dependency for compiling .mo files from .po files.Carl Worth2013-01-112-21/+20
| | | | | | | | | | | Previously this was happening unconditionally, leading to some excessive rebuilding/relinking during builds. Note that the .po files are not automatically updated due to changes to the t_options.h file. Instead, translators should continue to use "make po" manually. This is because after new strings are merged into the existing .po file, manual work is still required by translators to ensure that the translations are correct.
* driconf: Add translation-generation to build system, don't track generated filesCarl Worth2013-01-118-643/+64
| | | | | | | | | | | | | | | | | | | | Previously, the xmlpool directory had a lone Makefile to assist poeple in manually invoking a deep make in order to update the translations in options.h. We can observe that this wasn't happening in fact, (new translations had been added to de.po without being generated into options.h, and new options had been manually added directly to options.h rather than to t_options.h). Prevent both of these problems from occurring in the future by automatically generating options.h as part of the standard build of mesa. For this, the generated options.h is now removed from version control, (along with Makefile in favor of Makefile.am). [chadv: Port the Autotools changes to Android.] Signed-off-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* driconf: Fix German translations by removing a couple of bogus backslashesCarl Worth2013-01-111-2/+2
| | | | | | | | | As can be seen, many other translation strings already include a single apostrophe just fine without any escaping. This strangely-escaped apostrophe was causing a build failure ("invalid escape sequence") resulting in no "de" translations in the final options.h file. Reviewed-by: Kenneth Graunke <[email protected]>
* driconf: Fix gen_xmlpool.py script to allow running from any directoryChad Versace2013-01-112-4/+18
| | | | | | | | | | | | | | The gen_xmlpool.py script would work correctly only when executed from the directory that contained the script. This shortcoming was due to some hard-coded paths in the script. In order to easily invoke the script from the Android build system, we must be able to execute the script from an arbitrary directory. To enable that, this patch replaces the two hard-coded paths with new command line arguments. Signed-off-by: Chad Versace <[email protected]> Reviewed-by: Carl Worth <[email protected]>
* driconf: Add some translations which have been available, but were not compiledCarl Worth2013-01-111-8/+8
| | | | | | | These translations have existed in the de.po file, but were not in the generated options.h file. This was fixed by simply running "make options.h". Reviewed-by: Kenneth Graunke <[email protected]>
* driconf: Add option definitions to source file, not generated targetCarl Worth2013-01-111-0/+10
| | | | | | | | | | | | | | For the last two most-recently-added driconf options, their definition was manually added to options.h, a file which is intended to be automatically generated, (as part of support for translated driconf option descriptions). This means that these options would be eliminated if the generation step were performed again. Fix this by correctly adding the definitions of these options to t_options.h, (the file used as input to the generator), and not the options.h file, which is generated. Reviewed-by: Kenneth Graunke <[email protected]>
* targets/opencl: Link against libgallium.la instead of libgallium.aTom Stellard2013-01-111-1/+1
|
* drivers/radeon: Don't link against libgallium.laTom Stellard2013-01-111-2/+1
| | | | | | | | This fixes several duplicate symbol errors. libllvmradeon is a simple helper library. If it requires symbols in other libraries, this should be taken care of by the gallium target that uses it (e.g. libr600.la)
* mesa: Use _mesa_lookup_enum_by_nr in tex*_error_checkMatt Turner2013-01-111-6/+9
| | | | | Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa/es3: Add support for GL_PRIMITIVE_RESTART_FIXED_INDEXIan Romanick2013-01-119-19/+67
| | | | | | | | | | | | | This requires some derived state. The cut vertex used is either the value specified by glPrimitiveRestartIndex or it's hard-coded to ~0. The derived state gl_array_attrib::_RestartIndex captures this value. In addition, the derived state gl_array_attrib::_PrimitiveRestart is set whenever either gl_array_attrib::PrimitiveRestart or gl_array_attrib::PrimitiveRestartFixedIndex is set. v2: Use _mesa_is_gles3. Signed-off-by: Ian Romanick <[email protected]>
* i965: Add support for GL_ANY_SAMPLES_PASSED_CONSERVATIVEIan Romanick2013-01-111-0/+3
| | | | | | | | We just treat this as an alias for GL_ANY_SAMPLES_PASSED. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa/es3: Add support for GL_ANY_SAMPLES_PASSED_CONSERVATIVE query targetIan Romanick2013-01-112-2/+11
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa/es3: Allow transpose matrix uniforms in GLES3Ian Romanick2013-01-111-1/+2
| | | | Signed-off-by: Ian Romanick <[email protected]>
* glcpp: Reject token pasting operator in GLESMatt Turner2013-01-111-0/+2
| | | | | | | | | The GLSL ES 3.0 spec (Section 12.17) says: "GLSL ES 1.00 removed token pasting and other functionality." NOTE: This is a candidate for the stable branches. Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Carl Worth <[email protected]>
* glcpp: Make undefined macros illegal in #if and #elif for GLES3Carl Worth2013-01-111-0/+2
| | | | | | | | | | | | Simply emitting a nicely-formatted error message if any undefined macro is encountered in a parser context expecting an expression. With this commit, the following piglit test now passes: spec/glsl-es-3.00/compiler/undefined-macro.vert Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glcpp: Add a flag to the parser state to indicate GLES.Carl Worth2013-01-112-11/+16
| | | | | | | | | | | | This can be triggered either by creation of a GLES context (with api == API_OPENGLES2) or else by a #version directive with version value 100 or with a string of "es" following the version value. There's no behavioral change with this commit—just preparation for ES-specific behavior in the preprocessor in the future. Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glcpp: Add back tests/*.out to .gitignoreAndreas Boll2013-01-111-0/+1
| | | | Accidentally removed in ac2793cf3e1e004942c386dfa45f3b5507223f50
* targets/egl-static: fix link failure to libwayland-drmKnut Andre Tidemann2013-01-111-1/+1
| | | | | | | | | Fixes the following build error: CXXLD egl_gallium.la g++: error: ../../../../src/egl/wayland/wayland-drm/.libs/.libs/libwayland-drm.a: No such file or directory Reviewed-by: Andreas Boll <[email protected]>
* targets/dri-swrast: Force c++ linker in all cases.Johannes Obermayr2013-01-111-8/+2
| | | | | | | | Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=59226 Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Andreas Boll <[email protected]> Tested-by: Vinson Lee <[email protected]>