#!/usr/bin/env python # -*- coding: utf-8 -*- # All tests that come with piglit, using default settings import os import re import subprocess from framework.core import * from framework.exectest import * from framework.gleantest import * ###### # Collecting all tests profile = TestProfile() glean = Group() glean['basic'] = GleanTest('basic') glean['api2'] = GleanTest('api2') glean['makeCurrent'] = GleanTest('makeCurrent') glean['blendFunc'] = GleanTest('blendFunc') glean['bufferObject'] = GleanTest('bufferObject') glean['clipFlat'] = GleanTest('clipFlat') glean['depthStencil'] = GleanTest('depthStencil') glean['fbo'] = GleanTest('fbo') glean['fpexceptions'] = GleanTest('fpexceptions') glean['getString'] = GleanTest('getString') glean['logicOp'] = GleanTest('logicOp') glean['maskedClear'] = GleanTest('maskedClear') glean['occluquery'] = GleanTest('occluQry') glean['orthoPosRandTris'] = GleanTest('orthoPosRandTris') glean['orthoPosRandRects'] = GleanTest('orthoPosRandRects') glean['orthoPosTinyQuads'] = GleanTest('orthoPosTinyQuads') glean['orthoPosHLines'] = GleanTest('orthoPosHLines') glean['orthoPosVLines'] = GleanTest('orthoPosVLines') glean['orthoPosPoints'] = GleanTest('orthoPosPoints') glean['paths'] = GleanTest('paths') glean['pbo'] = GleanTest('pbo') glean['polygonOffset'] = GleanTest('polygonOffset') glean['pixelFormats'] = GleanTest('pixelFormats') glean['pointAtten'] = GleanTest('pointAtten') glean['pointSprite'] = GleanTest('pointSprite') glean['exactRGBA'] = GleanTest('exactRGBA') glean['readPixSanity'] = GleanTest('readPixSanity') glean['rgbTriStrip'] = GleanTest('rgbTriStrip') glean['scissor'] = GleanTest('scissor') glean['shaderAPI'] = GleanTest('shaderAPI') glean['stencil2'] = GleanTest('stencil2') glean['teapot'] = GleanTest('teapot') glean['texCombine'] = GleanTest('texCombine') glean['texCube'] = GleanTest('texCube') glean['texEnv'] = GleanTest('texEnv') glean['texgen'] = GleanTest('texgen') glean['texRect'] = GleanTest('texRect') glean['texCombine4'] = GleanTest('texCombine4') glean['texSwizzle'] = GleanTest('texSwizzle') glean['texture_srgb'] = GleanTest('texture_srgb') glean['texUnits'] = GleanTest('texUnits') glean['vertArrayBGRA'] = GleanTest('vertArrayBGRA') glean['vertattrib'] = GleanTest('vertattrib') def add_glsl1(name): testname = 'glsl1-' + name glean[testname] = GleanTest('glsl1') glean[testname].env['PIGLIT_TEST'] = name execfile(os.path.dirname(__file__) + '/glean-glsl1.tests') def add_fp1(name): testname = 'fp1-' + name glean[testname] = GleanTest('fragProg1') glean[testname].env['PIGLIT_TEST'] = name execfile(os.path.dirname(__file__) + '/glean-fragProg1.tests') def add_vp1(name): testname = 'vp1-' + name glean[testname] = GleanTest('vertProg1') glean[testname].env['PIGLIT_TEST'] = name execfile(os.path.dirname(__file__) + '/glean-vertProg1.tests') def add_fbo_generatemipmap_extension(group, extension, name): path = testBinDir + '../tests/shaders/' group[name] = PlainExecTest(['fbo-generatemipmap-formats', '-auto', extension]) mesa = Group() add_plain_test(mesa, 'crossbar') def add_fbo_rg(group, format): name = "fbo-rg-" + format group[name] = PlainExecTest(['fbo-rg', '-auto', format]) fbo = Group() add_plain_test(fbo, 'fbo-1d') add_plain_test(fbo, 'fbo-3d') add_plain_test(fbo, 'fbo-alpha') add_plain_test(fbo, 'fbo-luminance-alpha') add_plain_test(fbo, 'fbo-blit') add_plain_test(fbo, 'fbo-blit-d24s8') add_plain_test(fbo, 'fbo-cubemap') add_plain_test(fbo, 'fbo-clearmipmap') add_plain_test(fbo, 'fbo-copypix') add_plain_test(fbo, 'fbo-copyteximage') add_plain_test(fbo, 'fbo-copyteximage-simple') add_plain_test(fbo, 'fbo-drawbuffers') add_plain_test(fbo, 'fbo-drawbuffers-fragcolor') add_plain_test(fbo, 'fbo-drawbuffers-maxtargets') add_plain_test(fbo, 'fbo-drawbuffers2-blend') add_plain_test(fbo, 'fbo-drawbuffers2-colormask') add_plain_test(fbo, 'fbo-d24s8') add_plain_test(fbo, 'fbo-flushing') add_plain_test(fbo, 'fbo-generatemipmap') add_plain_test(fbo, 'fbo-generatemipmap-formats') add_plain_test(fbo, 'fbo-generatemipmap-scissor') add_plain_test(fbo, 'fbo-generatemipmap-nonsquare') add_plain_test(fbo, 'fbo-generatemipmap-npot') add_plain_test(fbo, 'fbo-generatemipmap-viewport') add_plain_test(fbo, 'fbo-getframebufferattachmentparameter-01') add_plain_test(fbo, 'fbo-incomplete-texture-01') add_plain_test(fbo, 'fbo-incomplete-texture-02') add_plain_test(fbo, 'fbo-incomplete-texture-03') add_plain_test(fbo, 'fbo-integer') add_plain_test(fbo, 'fbo-nodepth-test') add_plain_test(fbo, 'fbo-nostencil-test') add_plain_test(fbo, 'fbo-readdrawpix') add_plain_test(fbo, 'fbo-readpixels') add_plain_test(fbo, 'fbo-scissor-bitmap') add_plain_test(fbo, 'fbo-pbo-readpixels-small') add_fbo_rg(fbo, 'GL_RED') add_fbo_rg(fbo, 'GL_R8') add_fbo_rg(fbo, 'GL_R16') add_fbo_rg(fbo, 'GL_RG') add_fbo_rg(fbo, 'GL_RG8') add_fbo_rg(fbo, 'GL_RG16') general = Group() add_plain_test(general, 'bgra-sec-color-pointer') add_plain_test(general, 'bgra-vert-attrib-pointer') add_plain_test(general, 'blendminmax') add_plain_test(general, 'blendsquare') add_plain_test(general, 'clear-varray-2.0') add_plain_test(general, 'depthrange-clear') add_plain_test(general, 'depth_clamp') add_plain_test(general, 'depth-clamp-range') add_plain_test(general, 'depthfunc') add_plain_test(general, 'dlist-clear') add_plain_test(general, 'dlist-fdo3129-01') add_plain_test(general, 'dlist-fdo3129-02') add_plain_test(general, 'draw-elements') add_plain_test(general, 'draw-elements-base-vertex') add_plain_test(general, 'draw-elements-vs-inputs') add_plain_test(general, 'draw-vertices') add_plain_test(general, 'draw-vertices-half-float') add_plain_test(general, 'geterror-inside-begin') add_plain_test(general, 'isbufferobj') add_plain_test(general, 'line-aa-width') add_plain_test(general, 'linestipple') add_plain_test(general, 'object_purgeable-api-pbo') add_plain_test(general, 'object_purgeable-api-texture') add_plain_test(general, 'object_purgeable-api-vbo') add_plain_test(general, 'occlusion_query') add_plain_test(general, 'occlusion-query-discard') add_plain_test(general, 'pbo-drawpixels') add_plain_test(general, 'pbo-read-argb8888') add_plain_test(general, 'pbo-readpixels-small') add_plain_test(general, 'pbo-teximage') add_plain_test(general, 'pbo-teximage-tiling') add_plain_test(general, 'pbo-teximage-tiling-2') add_plain_test(general, 'point-line-no-cull') add_plain_test(general, 'primitive-restart') add_plain_test(general, 'provoking-vertex') add_plain_test(general, 'oes-read-format') add_plain_test(general, 'quad-invariance') add_plain_test(general, 'read-front') add_plain_test(general, 'scissor-bitmap') add_plain_test(general, 'scissor-clear') add_plain_test(general, 'scissor-copypixels') add_plain_test(general, 'scissor-depth-clear') add_plain_test(general, 'scissor-many') add_plain_test(general, 'scissor-offscreen') add_plain_test(general, 'scissor-stencil-clear') add_plain_test(general, 'stencil-drawpixels') add_plain_test(general, 'stencil-twoside') add_plain_test(general, 'stencil-wrap') add_plain_test(general, 'texgen') add_plain_test(general, 'texunits') add_plain_test(general, 'timer_query') add_plain_test(general, 'user-clip') add_plain_test(general, 'vao-01') add_plain_test(general, 'vao-02') add_plain_test(general, 'varray-disabled') add_plain_test(general, 'vbo-map-remap') add_plain_test(general, 'vbo-subdata-sync') add_plain_test(general, 'windowoverlap') add_plain_test(general, 'sync_api') shaders = Group() def add_shader_generic(group, name): path = testBinDir + '../tests/shaders/' group[name] = PlainExecTest(['shader_runner', '-auto', path + name + '.shader_test', path]) add_plain_test(shaders, 'activeprogram-bad-program') add_plain_test(shaders, 'activeprogram-get') add_plain_test(shaders, 'ati-fs-bad-delete') add_plain_test(shaders, 'createshaderprogram-bad-type') add_plain_test(shaders, 'createshaderprogram-attached-shaders') add_plain_test(shaders, 'trinity-fp1') add_plain_test(shaders, 'fp-abs-01') add_plain_test(shaders, 'fp-abs-02') add_plain_test(shaders, 'fp-condition_codes-01') add_plain_test(shaders, 'fp-fog') add_plain_test(shaders, 'fp-lit-mask') add_plain_test(shaders, 'fp-fragment-position') add_plain_test(shaders, 'fp-kil') add_plain_test(shaders, 'fp-incomplete-tex') add_plain_test(shaders, 'fp-indirections') add_plain_test(shaders, 'fp-indirections2') add_plain_test(shaders, 'fp-long-alu') add_plain_test(shaders, 'fp-rfl') add_plain_test(shaders, 'fp-set-01') add_plain_test(shaders, 'fp-set-02') add_plain_test(shaders, 'fp-unpack-01') add_shader_generic(shaders, 'glsl-algebraic-add-add-1') add_shader_generic(shaders, 'glsl-algebraic-add-add-2') add_shader_generic(shaders, 'glsl-algebraic-add-add-3') add_shader_generic(shaders, 'glsl-algebraic-add-add-4') add_shader_generic(shaders, 'glsl-algebraic-add-sub-1') add_shader_generic(shaders, 'glsl-algebraic-add-sub-2') add_shader_generic(shaders, 'glsl-algebraic-add-zero') add_shader_generic(shaders, 'glsl-algebraic-add-zero-2') add_shader_generic(shaders, 'glsl-algebraic-div-one') add_shader_generic(shaders, 'glsl-algebraic-div-one-2') add_shader_generic(shaders, 'glsl-algebraic-logicand-false-2') add_shader_generic(shaders, 'glsl-algebraic-logicand-false') add_shader_generic(shaders, 'glsl-algebraic-logicand-true-2') add_shader_generic(shaders, 'glsl-algebraic-logicand-true') add_shader_generic(shaders, 'glsl-algebraic-logicor-false-2') add_shader_generic(shaders, 'glsl-algebraic-logicor-false') add_shader_generic(shaders, 'glsl-algebraic-logicor-true-2') add_shader_generic(shaders, 'glsl-algebraic-logicor-true') add_shader_generic(shaders, 'glsl-algebraic-logicxor-false') add_shader_generic(shaders, 'glsl-algebraic-logicxor-true') add_shader_generic(shaders, 'glsl-algebraic-mul-mul-1') add_shader_generic(shaders, 'glsl-algebraic-mul-one') add_shader_generic(shaders, 'glsl-algebraic-mul-one-2') add_shader_generic(shaders, 'glsl-algebraic-mul-zero') add_shader_generic(shaders, 'glsl-algebraic-not-equals') add_shader_generic(shaders, 'glsl-algebraic-not-notequals') add_shader_generic(shaders, 'glsl-algebraic-pow-two') add_shader_generic(shaders, 'glsl-algebraic-rcp-rcp') add_shader_generic(shaders, 'glsl-algebraic-rcp-rsq') add_shader_generic(shaders, 'glsl-algebraic-rcp-sqrt') add_shader_generic(shaders, 'glsl-algebraic-rcp-sqrt-2') add_shader_generic(shaders, 'glsl-algebraic-sub-sub-1') add_shader_generic(shaders, 'glsl-algebraic-sub-zero-2') add_shader_generic(shaders, 'glsl-algebraic-sub-zero-3') add_shader_generic(shaders, 'glsl-algebraic-sub-zero-4') add_shader_generic(shaders, 'glsl-algebraic-sub-zero') add_shader_generic(shaders, 'glsl-array-length') add_shader_generic(shaders, 'glsl-array-bounds-01') add_shader_generic(shaders, 'glsl-array-bounds-02') add_shader_generic(shaders, 'glsl-array-bounds-03') add_shader_generic(shaders, 'glsl-array-bounds-04') add_shader_generic(shaders, 'glsl-array-bounds-05') add_shader_generic(shaders, 'glsl-array-bounds-06') add_shader_generic(shaders, 'glsl-array-bounds-07') add_shader_generic(shaders, 'glsl-array-bounds-08') add_shader_generic(shaders, 'glsl-array-varying-01') add_plain_test(shaders, 'glsl-arb-fragment-coord-conventions') add_plain_test(shaders, 'glsl-arb-fragment-coord-conventions-define') add_plain_test(shaders, 'glsl-bug-22603') add_shader_generic(shaders, 'glsl-constant-folding-call-1') add_shader_generic(shaders, 'glsl-copy-propagation-if-1') add_shader_generic(shaders, 'glsl-copy-propagation-if-2') add_shader_generic(shaders, 'glsl-copy-propagation-if-3') add_shader_generic(shaders, 'glsl-deadcode-call') add_shader_generic(shaders, 'glsl-deadcode-self-assign') add_shader_generic(shaders, 'glsl-deadcode-varying') add_plain_test(shaders, 'glsl-bindattriblocation') add_plain_test(shaders, 'glsl-dlist-getattriblocation') add_plain_test(shaders, 'glsl-getactiveuniform-array-size') add_plain_test(shaders, 'glsl-getactiveuniform-count') add_plain_test(shaders, 'glsl-getactiveuniform-length') add_plain_test(shaders, 'glsl-getattriblocation') add_plain_test(shaders, 'glsl-invalid-asm-01') add_plain_test(shaders, 'glsl-invalid-asm-02') add_plain_test(shaders, 'glsl-novertexdata') add_plain_test(shaders, 'glsl-preprocessor-comments') add_plain_test(shaders, 'glsl-reload-source') add_plain_test(shaders, 'glsl-uniform-out-of-bounds') add_plain_test(shaders, 'glsl-uniform-update') add_plain_test(shaders, 'glsl-unused-varying') add_shader_generic(shaders, 'glsl-floating-constant-120') add_shader_generic(shaders, 'glsl-fs-abs-01') add_shader_generic(shaders, 'glsl-fs-abs-02') add_shader_generic(shaders, 'glsl-fs-abs-03') add_shader_generic(shaders, 'glsl-fs-abs-04') add_shader_generic(shaders, 'glsl-fs-add-masked') add_shader_generic(shaders, 'glsl-fs-all-01') add_shader_generic(shaders, 'glsl-fs-all-02') add_shader_generic(shaders, 'glsl-fs-any') add_shader_generic(shaders, 'glsl-fs-asin') add_shader_generic(shaders, 'glsl-fs-atan-1') add_shader_generic(shaders, 'glsl-fs-atan-2') add_shader_generic(shaders, 'glsl-fs-atan-3') add_shader_generic(shaders, 'glsl-fs-main-return') add_shader_generic(shaders, 'glsl-fs-mov-masked') add_shader_generic(shaders, 'glsl-fs-bit-01') add_shader_generic(shaders, 'glsl-fs-bit-02') add_plain_test(shaders, 'glsl-fs-bug25902') add_shader_generic(shaders, 'glsl-fs-ceil') add_shader_generic(shaders, 'glsl-fs-conditional-output-write') add_shader_generic(shaders, 'glsl-fs-convolution-1') add_shader_generic(shaders, 'glsl-fs-convolution-2') add_shader_generic(shaders, 'glsl-fs-cross') add_shader_generic(shaders, 'glsl-fs-cross-2') add_shader_generic(shaders, 'glsl-fs-cross-3') add_shader_generic(shaders, 'glsl-fs-discard-01') add_plain_test(shaders, 'glsl-fs-discard-02') add_shader_generic(shaders, 'glsl-fs-discard-03') add_shader_generic(shaders, 'glsl-fs-dot-vec2') add_shader_generic(shaders, 'glsl-fs-dot-vec2-2') add_shader_generic(shaders, 'glsl-fs-exp') add_plain_test(shaders, 'glsl-fs-exp2') add_shader_generic(shaders, 'glsl-fs-floor') add_plain_test(shaders, 'glsl-fs-fragcoord') add_shader_generic(shaders, 'glsl-fs-functions-2') add_shader_generic(shaders, 'glsl-fs-functions-3') add_shader_generic(shaders, 'glsl-fs-functions-4') add_shader_generic(shaders, 'glsl-fs-functions-samplers') add_shader_generic(shaders, 'glsl-fs-i2b') add_shader_generic(shaders, 'glsl-fs-if-less') add_shader_generic(shaders, 'glsl-fs-if-less-equal') add_shader_generic(shaders, 'glsl-fs-if-nested-loop') add_shader_generic(shaders, 'glsl-fs-if-greater') add_shader_generic(shaders, 'glsl-fs-if-greater-equal') add_shader_generic(shaders, 'glsl-fs-log') add_shader_generic(shaders, 'glsl-fs-log2') add_plain_test(shaders, 'glsl-fs-loop') add_shader_generic(shaders, 'glsl-fs-loop-const-decr') add_shader_generic(shaders, 'glsl-fs-loop-const-incr') add_shader_generic(shaders, 'glsl-fs-loop-ge') add_shader_generic(shaders, 'glsl-fs-loop-gt') add_shader_generic(shaders, 'glsl-fs-loop-le') add_shader_generic(shaders, 'glsl-fs-loop-lt') add_plain_test(shaders, 'glsl-fs-loop-nested') add_shader_generic(shaders, 'glsl-fs-loop-nested-if') add_shader_generic(shaders, 'glsl-fs-loop-two-counter-01') add_shader_generic(shaders, 'glsl-fs-loop-two-counter-02') add_shader_generic(shaders, 'glsl-fs-loop-two-counter-03') add_shader_generic(shaders, 'glsl-fs-loop-two-counter-04') add_shader_generic(shaders, 'glsl-fs-loop-zero-iter') add_shader_generic(shaders, 'glsl-fs-max') add_shader_generic(shaders, 'glsl-fs-min') add_plain_test(shaders, 'glsl-fs-mix') add_plain_test(shaders, 'glsl-fs-mix-constant') add_shader_generic(shaders, 'glsl-fs-mod') add_shader_generic(shaders, 'glsl-fs-neg') add_plain_test(shaders, 'glsl-fs-pointcoord') add_plain_test(shaders, 'glsl-fs-raytrace-bug27060') add_shader_generic(shaders, 'glsl-fs-roundEven') add_shader_generic(shaders, 'glsl-fs-reflect') add_plain_test(shaders, 'glsl-fs-sampler-numbering') add_shader_generic(shaders, 'glsl-fs-sampler-numbering-2') add_shader_generic(shaders, 'glsl-fs-sampler-numbering-3') add_shader_generic(shaders, 'glsl-fs-shadow2d') add_shader_generic(shaders, 'glsl-fs-shadow2d-bias') add_shader_generic(shaders, 'glsl-fs-shadow2dproj') add_shader_generic(shaders, 'glsl-fs-shadow2dproj-bias') add_plain_test(shaders, 'glsl-fs-sqrt-branch') add_plain_test(shaders, 'glsl-fs-sqrt-zero') add_shader_generic(shaders, 'glsl-fs-sign') add_shader_generic(shaders, 'glsl-fs-statevar-call') add_shader_generic(shaders, 'glsl-fs-struct-equal') add_shader_generic(shaders, 'glsl-fs-struct-notequal') add_shader_generic(shaders, 'glsl-fs-step') add_shader_generic(shaders, 'glsl-fs-tan-1') add_shader_generic(shaders, 'glsl-fs-tan-2') add_shader_generic(shaders, 'glsl-fs-tan-3') add_shader_generic(shaders, 'glsl-fs-texture2d') add_shader_generic(shaders, 'glsl-fs-texture2d-bias') add_shader_generic(shaders, 'glsl-fs-texture2d-masked') add_shader_generic(shaders, 'glsl-fs-texture2d-masked-2') add_shader_generic(shaders, 'glsl-fs-texture2dproj') add_shader_generic(shaders, 'glsl-fs-texture2dproj-2') add_shader_generic(shaders, 'glsl-fs-texture2dproj-bias') add_shader_generic(shaders, 'glsl-fs-texture2dproj-bias-2') shaders['glsl-fs-texturecube'] = PlainExecTest(['glsl-fs-texturecube', '-auto']) shaders['glsl-fs-texturecube-bias'] = PlainExecTest(['glsl-fs-texturecube', '-auto', '-bias']) shaders['glsl-fs-texturecube-2'] = PlainExecTest(['glsl-fs-texturecube-2', '-auto']) shaders['glsl-fs-texturecube-2-bias'] = PlainExecTest(['glsl-fs-texturecube-2', '-auto', '-bias']) shaders['glsl-fs-texture2drect'] = PlainExecTest(['glsl-fs-texture2drect', '-auto']) shaders['glsl-fs-texture2drect-proj3'] = PlainExecTest(['glsl-fs-texture2drect', '-auto', '-proj3']) shaders['glsl-fs-texture2drect-proj4'] = PlainExecTest(['glsl-fs-texture2drect', '-auto', '-proj4']) shaders['glsl-fs-texturelod-01'] = PlainExecTest(['glsl-fs-texturelod-01']) add_shader_generic(shaders, 'glsl-fs-trunc') add_shader_generic(shaders, 'glsl-fs-uniform-array-1') add_shader_generic(shaders, 'glsl-fs-uniform-array-2') add_shader_generic(shaders, 'glsl-fs-uniform-array-3') add_shader_generic(shaders, 'glsl-fs-uniform-array-4') add_shader_generic(shaders, 'glsl-fs-uniform-array-5') add_shader_generic(shaders, 'glsl-fs-uniform-array-6') add_shader_generic(shaders, 'glsl-fs-uniform-sampler-array') add_shader_generic(shaders, 'glsl-fs-uniform-sampler-struct') add_plain_test(shaders, 'glsl-fs-user-varying-ff') add_shader_generic(shaders, 'glsl-fs-varying-array') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-dst') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-dst-in-loop') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-dst-in-nested-loop-combined') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-src') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-src-in-loop') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-src-in-nested-loop-inner') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-src-in-nested-loop-outer') add_shader_generic(shaders, 'glsl-fs-vec4-indexing-temp-src-in-nested-loop-combined') add_shader_generic(shaders, 'glsl-fs-vec4-operator-equal') add_shader_generic(shaders, 'glsl-fs-vec4-operator-notequal') add_shader_generic(shaders, 'glsl-function-prototype') add_shader_generic(shaders, 'glsl-if-assign-call') add_shader_generic(shaders, 'glsl-mat-110') add_plain_test(shaders, 'glsl-mat-attribute') add_shader_generic(shaders, 'glsl-mat-from-int-ctor-01') add_shader_generic(shaders, 'glsl-mat-from-int-ctor-02') add_shader_generic(shaders, 'glsl-mat-from-int-ctor-03') add_plain_test(shaders, 'glsl-max-varyings') add_shader_generic(shaders, 'glsl-octal') add_plain_test(shaders, 'glsl-orangebook-ch06-bump') add_shader_generic(shaders, 'glsl-precision-110') add_plain_test(shaders, 'glsl-routing') add_shader_generic(shaders, 'glsl-uniform-initializer-1') add_shader_generic(shaders, 'glsl-uniform-initializer-2') add_shader_generic(shaders, 'glsl-uniform-initializer-3') add_shader_generic(shaders, 'glsl-uniform-initializer-4') add_shader_generic(shaders, 'glsl-uniform-initializer-5') add_shader_generic(shaders, 'glsl-uniform-initializer-6') add_shader_generic(shaders, 'glsl-uniform-initializer-7') add_shader_generic(shaders, 'glsl-uniform-linking-1') add_shader_generic(shaders, 'glsl-uniform-struct') add_shader_generic(shaders, 'glsl-varying-mat3x2') add_shader_generic(shaders, 'glsl-version-define') add_shader_generic(shaders, 'glsl-version-define-110') add_shader_generic(shaders, 'glsl-version-define-120') add_shader_generic(shaders, 'glsl-vs-all-01') add_shader_generic(shaders, 'glsl-vs-all-02') add_plain_test(shaders, 'glsl-vs-arrays') add_shader_generic(shaders, 'glsl-vs-dot-vec2') add_shader_generic(shaders, 'glsl-vs-main-return') add_shader_generic(shaders, 'glsl-vs-masked-dot') add_shader_generic(shaders, 'glsl-vs-masked-cos') add_plain_test(shaders, 'glsl-vs-normalscale') add_shader_generic(shaders, 'glsl-vs-arrays-2') add_shader_generic(shaders, 'glsl-vs-arrays-3') add_shader_generic(shaders, 'glsl-vs-cross') add_shader_generic(shaders, 'glsl-vs-cross-2') add_shader_generic(shaders, 'glsl-vs-cross-3') add_shader_generic(shaders, 'glsl-vs-constructor-call') add_shader_generic(shaders, 'glsl-vs-ff-frag') add_plain_test(shaders, 'glsl-vs-functions') add_shader_generic(shaders, 'glsl-vs-functions-2') add_shader_generic(shaders, 'glsl-vs-functions-3') add_shader_generic(shaders, 'glsl-vs-if-less') add_shader_generic(shaders, 'glsl-vs-if-less-equal') add_shader_generic(shaders, 'glsl-vs-if-nested') add_shader_generic(shaders, 'glsl-vs-if-nested-loop') add_shader_generic(shaders, 'glsl-vs-if-greater') add_shader_generic(shaders, 'glsl-vs-if-greater-equal') add_plain_test(shaders, 'glsl-vs-user-varying-ff') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-dst') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-dst-in-loop') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-dst-in-nested-loop-combined') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-src') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-src-in-loop') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-src-in-nested-loop-inner') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-src-in-nested-loop-outer') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-temp-src-in-nested-loop-combined') add_shader_generic(shaders, 'glsl-vs-large-uniform-array') add_shader_generic(shaders, 'glsl-vs-mat-add-1') add_shader_generic(shaders, 'glsl-vs-mat-div-1') add_shader_generic(shaders, 'glsl-vs-mat-div-2') add_shader_generic(shaders, 'glsl-vs-mat-mul-1') add_shader_generic(shaders, 'glsl-vs-mat-mul-2') add_shader_generic(shaders, 'glsl-vs-mat-mul-3') add_shader_generic(shaders, 'glsl-vs-mat-sub-1') add_shader_generic(shaders, 'glsl-vs-position-outval') add_shader_generic(shaders, 'glsl-vs-sign') add_shader_generic(shaders, 'glsl-vs-swizzle-swizzle-lhs') add_shader_generic(shaders, 'glsl-vs-swizzle-swizzle-rhs') add_plain_test(shaders, 'glsl-vs-texturematrix-1') add_plain_test(shaders, 'glsl-vs-texturematrix-2') add_shader_generic(shaders, 'glsl-vs-uniform-array-1') add_shader_generic(shaders, 'glsl-vs-uniform-array-2') add_shader_generic(shaders, 'glsl-vs-varying-array') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-1') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-2') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-3') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-4') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-5') add_shader_generic(shaders, 'glsl-vs-vec4-indexing-6') add_shader_generic(shaders, 'glsl-vs-vec4-operator-equal') add_shader_generic(shaders, 'glsl-vs-vec4-operator-notequal') add_shader_generic(shaders, 'glsl-texcoord-array') add_shader_generic(shaders, 'glsl-texcoord-array-2') add_shader_generic(shaders, 'glsl-pp-elif-no-expression-1') add_shader_generic(shaders, 'glsl-implicit-conversion-01') add_shader_generic(shaders, 'glsl-const-builtin-abs') add_shader_generic(shaders, 'glsl-const-builtin-acos') add_shader_generic(shaders, 'glsl-const-builtin-all') add_shader_generic(shaders, 'glsl-const-builtin-any') add_shader_generic(shaders, 'glsl-const-builtin-asin') add_shader_generic(shaders, 'glsl-const-builtin-atan') add_shader_generic(shaders, 'glsl-const-builtin-ceil') add_shader_generic(shaders, 'glsl-const-builtin-clamp') add_shader_generic(shaders, 'glsl-const-builtin-cosh') add_shader_generic(shaders, 'glsl-const-builtin-cos') add_shader_generic(shaders, 'glsl-const-builtin-cross') add_shader_generic(shaders, 'glsl-const-builtin-degrees') add_shader_generic(shaders, 'glsl-const-builtin-derivatives') add_shader_generic(shaders, 'glsl-const-builtin-distance') add_shader_generic(shaders, 'glsl-const-builtin-dot') add_shader_generic(shaders, 'glsl-const-builtin-equal') add_shader_generic(shaders, 'glsl-const-builtin-equal-02') add_shader_generic(shaders, 'glsl-const-builtin-equal-03') add_shader_generic(shaders, 'glsl-const-builtin-equal-04') add_shader_generic(shaders, 'glsl-const-builtin-equal-05') add_shader_generic(shaders, 'glsl-const-builtin-equal-06') add_shader_generic(shaders, 'glsl-const-builtin-equal-07') add_shader_generic(shaders, 'glsl-const-builtin-equal-08') add_shader_generic(shaders, 'glsl-const-builtin-equal-09') add_shader_generic(shaders, 'glsl-const-builtin-equal-10') add_shader_generic(shaders, 'glsl-const-builtin-equal-bool') add_shader_generic(shaders, 'glsl-const-builtin-exp') add_shader_generic(shaders, 'glsl-const-builtin-exp2') add_shader_generic(shaders, 'glsl-const-builtin-faceforward') add_shader_generic(shaders, 'glsl-const-builtin-floor') add_shader_generic(shaders, 'glsl-const-builtin-fract') add_shader_generic(shaders, 'glsl-const-builtin-greaterThanEqual') add_shader_generic(shaders, 'glsl-const-builtin-greaterThan') add_shader_generic(shaders, 'glsl-const-builtin-inversesqrt') add_shader_generic(shaders, 'glsl-const-builtin-length') add_shader_generic(shaders, 'glsl-const-builtin-lessThanEqual') add_shader_generic(shaders, 'glsl-const-builtin-lessThan') add_shader_generic(shaders, 'glsl-const-builtin-log') add_shader_generic(shaders, 'glsl-const-builtin-log2') add_shader_generic(shaders, 'glsl-const-builtin-matrixCompMult') add_shader_generic(shaders, 'glsl-const-builtin-max') add_shader_generic(shaders, 'glsl-const-builtin-min') add_shader_generic(shaders, 'glsl-const-builtin-mix') add_shader_generic(shaders, 'glsl-const-builtin-mod') add_shader_generic(shaders, 'glsl-const-builtin-normalize') add_shader_generic(shaders, 'glsl-const-builtin-not') add_shader_generic(shaders, 'glsl-const-builtin-notEqual') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-02') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-03') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-04') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-05') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-06') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-07') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-08') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-09') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-10') add_shader_generic(shaders, 'glsl-const-builtin-notEqual-bool') add_shader_generic(shaders, 'glsl-const-builtin-outerProduct') add_shader_generic(shaders, 'glsl-const-builtin-pow') add_shader_generic(shaders, 'glsl-const-builtin-radians') add_shader_generic(shaders, 'glsl-const-builtin-reflect') add_shader_generic(shaders, 'glsl-const-builtin-refract') add_shader_generic(shaders, 'glsl-const-builtin-sign') add_shader_generic(shaders, 'glsl-const-builtin-sin') add_shader_generic(shaders, 'glsl-const-builtin-smoothstep') add_shader_generic(shaders, 'glsl-const-builtin-step') add_shader_generic(shaders, 'glsl-const-builtin-sqrt') add_shader_generic(shaders, 'glsl-const-builtin-tan') add_shader_generic(shaders, 'glsl-const-builtin-transpose') add_shader_generic(shaders, 'glsl-const-folding-01') add_plain_test(shaders, 'glsl-sin') add_plain_test(shaders, 'glsl-cos') add_plain_test(shaders, 'glsl-vs-if-bool') add_plain_test(shaders, 'glsl-vs-loop') add_plain_test(shaders, 'glsl-vs-loop-nested') add_plain_test(shaders, 'glsl-vs-mov-after-deref') add_plain_test(shaders, 'glsl-vs-raytrace-bug26691') add_plain_test(shaders, 'glsl-vs-sqrt-zero') add_plain_test(shaders, 'vp-address-01') add_plain_test(shaders, 'vp-address-02') add_plain_test(shaders, 'vp-address-03') add_plain_test(shaders, 'vp-address-04') add_plain_test(shaders, 'vp-address-05') add_plain_test(shaders, 'vp-address-06') add_plain_test(shaders, 'vp-bad-program') add_plain_test(shaders, 'vp-clipdistance-01') add_plain_test(shaders, 'vp-clipdistance-02') add_plain_test(shaders, 'vp-clipdistance-03') add_plain_test(shaders, 'vp-clipdistance-04') add_plain_test(shaders, 'vp-combined-image-units') add_plain_test(shaders, 'vp-max-array') add_plain_test(shaders, 'glsl-derivs') add_shader_generic(shaders, 'glsl-derivs-swizzle') add_plain_test(shaders, 'glsl-deriv-varyings') add_plain_test(shaders, 'glsl-fwidth') add_plain_test(shaders, 'glsl-lod-bias') add_plain_test(shaders, 'vp-ignore-input') add_plain_test(shaders, 'glsl-empty-vs-no-fs') add_plain_test(shaders, 'glsl-explicit-location-01') add_plain_test(shaders, 'glsl-explicit-location-02') add_plain_test(shaders, 'glsl-explicit-location-03') add_plain_test(shaders, 'glsl-explicit-location-04') add_plain_test(shaders, 'glsl-explicit-location-05') add_plain_test(shaders, 'glsl-useprogram-displaylist') add_plain_test(shaders, 'glsl-vs-point-size') add_plain_test(shaders, 'glsl-light-model') add_shader_generic(shaders, 'glsl-link-array-01') add_plain_test(shaders, 'glsl-link-bug30552') add_plain_test(shaders, 'glsl-link-empty-prog-01') add_plain_test(shaders, 'glsl-link-empty-prog-02') add_plain_test(shaders, 'glsl-link-initializer-01') add_plain_test(shaders, 'glsl-link-initializer-02') add_plain_test(shaders, 'glsl-link-initializer-03') add_plain_test(shaders, 'glsl-link-initializer-04') add_plain_test(shaders, 'glsl-link-initializer-05') add_plain_test(shaders, 'glsl-link-initializer-06') add_shader_generic(shaders, 'glsl-override-builtin') add_plain_test(shaders, 'glsl-kwin-blur') add_plain_test(shaders, 'gpu_shader4_attribs') add_plain_test(shaders, 'link-mismatch-layout-01') add_plain_test(shaders, 'link-mismatch-layout-02') add_plain_test(shaders, 'link-mismatch-layout-03') add_plain_test(shaders, 'link-unresolved-function') add_plain_test(shaders, 'sso-simple') add_plain_test(shaders, 'sso-uniforms-01') add_plain_test(shaders, 'sso-uniforms-02') add_plain_test(shaders, 'sso-user-varying-01') add_plain_test(shaders, 'sso-user-varying-02') add_plain_test(shaders, 'useprogram-flushverts-1') add_plain_test(shaders, 'useprogram-flushverts-2') add_plain_test(shaders, 'useprogram-inside-begin') add_plain_test(shaders, 'useprogram-refcount-1') add_plain_test(shaders, 'useshaderprogram-bad-type') add_plain_test(shaders, 'useshaderprogram-bad-program') add_plain_test(shaders, 'useshaderprogram-flushverts-1') fpgeneric = Group() def add_fpgeneric(name): fpgeneric[name] = PlainExecTest(['fp-generic', '-auto', testBinDir + '../tests/shaders/generic/' + name + '.fp']) add_fpgeneric('dph') add_fpgeneric('kil-swizzle') add_fpgeneric('lrp_sat') shaders['fp-generic'] = fpgeneric vpfpgeneric = Group() def add_vpfpgeneric(name): vpfpgeneric[name] = PlainExecTest(['vpfp-generic', '-auto', testBinDir + '../tests/shaders/generic/' + name + '.vpfp']) add_vpfpgeneric('arl') add_vpfpgeneric('big-param') add_vpfpgeneric('dataflow-bug') add_vpfpgeneric('fdo30337a') add_vpfpgeneric('fdo30337b') add_vpfpgeneric('fogcoord-dp3') add_vpfpgeneric('fogcoord-dph') add_vpfpgeneric('fogcoord-dp4') add_vpfpgeneric('fp-arb-fragment-coord-conventions-none') add_vpfpgeneric('fp-arb-fragment-coord-conventions-integer') add_vpfpgeneric('fp-cmp') add_vpfpgeneric('fp-two-constants') add_vpfpgeneric('nv-mov') add_vpfpgeneric('nv-add') add_vpfpgeneric('nv-arl') add_vpfpgeneric('nv-init-zero-reg') add_vpfpgeneric('nv-init-zero-addr') add_vpfpgeneric('vp-arl-constant-array') add_vpfpgeneric('vp-arl-constant-array-huge') add_vpfpgeneric('vp-arl-constant-array-huge-varying') add_vpfpgeneric('vp-arl-constant-array-huge-offset') add_vpfpgeneric('vp-arl-constant-array-huge-offset-neg') add_vpfpgeneric('vp-arl-constant-array-huge-overwritten') add_vpfpgeneric('vp-arl-constant-array-huge-relative-offset') add_vpfpgeneric('vp-arl-constant-array-varying') add_vpfpgeneric('vp-arl-env-array') add_vpfpgeneric('vp-arl-local-array') add_vpfpgeneric('vp-arl-neg-array') add_vpfpgeneric('vp-arl-neg-array-2') add_vpfpgeneric('vp-constant-array') add_vpfpgeneric('vp-constant-array-huge') add_vpfpgeneric('vp-exp-alias') add_vpfpgeneric('vp-max') add_vpfpgeneric('vp-min') add_vpfpgeneric('vp-sge-alias') add_vpfpgeneric('vp-two-constants') shaders['vpfp-generic'] = vpfpgeneric bugs = Group() add_plain_test(bugs, 'crash-cubemap-order') add_plain_test(bugs, 'crash-texparameter-before-teximage') add_plain_test(bugs, 'fdo9833') add_plain_test(bugs, 'fdo10370') add_plain_test(bugs, 'fdo14575') add_plain_test(bugs, 'fdo20701') add_plain_test(bugs, 'r300-readcache') add_plain_test(bugs, 'tex1d-2dborder') add_plain_test(bugs, 'point-sprite') add_plain_test(bugs, 'fdo22540') add_plain_test(bugs, 'fdo23489') add_plain_test(bugs, 'fdo23670-depth_test') add_plain_test(bugs, 'fdo23670-drawpix_stencil') add_plain_test(bugs, 'fdo24066') add_plain_test(bugs, 'fdo25614-genmipmap') add_plain_test(bugs, 'fdo28551') add_plain_test(bugs, 'tri-tex-crash') glx = Group() add_plain_test(glx, 'glx-destroycontext-1') add_plain_test(glx, 'glx-destroycontext-2') add_plain_test(glx, 'glx-multithread') add_plain_test(glx, 'glx-swap-exchange') add_plain_test(glx, 'glx-make-current') add_plain_test(glx, 'glx-make-glxdrawable-current') texturing = Group() add_plain_test(texturing, 'array-texture') add_plain_test(texturing, 'copytexsubimage') add_plain_test(texturing, 'cubemap') add_plain_test(texturing, 'depth-level-clamp') add_plain_test(texturing, 'fxt1-teximage') add_plain_test(texturing, 'gen-teximage') add_plain_test(texturing, 'gen-compressed-teximage') add_plain_test(texturing, 'gen-nonzero-unit') add_plain_test(texturing, 'gen-texsubimage') add_plain_test(texturing, 'getteximage-simple') add_plain_test(texturing, 'levelclamp') add_plain_test(texturing, 'lodbias') add_plain_test(texturing, 'lodclamp') add_plain_test(texturing, 'lodclamp-between') add_plain_test(texturing, 'lodclamp-between-max') add_plain_test(texturing, 'mipmap-setup') add_plain_test(texturing, 'rg-draw-pixels') add_plain_test(texturing, 'rg-teximage-01') add_plain_test(texturing, 'rg-teximage-02') add_plain_test(texturing, 's3tc-teximage') add_plain_test(texturing, 's3tc-texsubimage') add_plain_test(texturing, 'streaming-texture-leak') add_plain_test(texturing, 'tex-border-1') add_plain_test(texturing, 'tex-swizzle') add_plain_test(texturing, 'tex3d') add_plain_test(texturing, 'tex3d-npot') add_plain_test(texturing, 'texdepth') add_plain_test(texturing, 'texrect-many') add_plain_test(texturing, 'texredefine') add_plain_test(texturing, 'texture-integer') add_plain_test(texturing, 'texture-rg') add_plain_test(texturing, 'tfp') add_plain_test(texturing, 'depth-tex-modes') add_plain_test(texturing, 'depth-tex-modes-glsl') add_plain_test(texturing, 'depth-tex-compare') def add_texwrap_test2(p1, p2): texturing['texwrap-' + p1 + '-' + p2] = PlainExecTest(['texwrap', '-auto', p1, p2]) def add_texwrap_test3(p1, p2, p3): texturing['texwrap-' + p1 + '-' + p2 + '-' + p3] = PlainExecTest(['texwrap', '-auto', p1, p2, p3]) def add_texwrap_test4(p1, p2, p3, p4): texturing['texwrap-' + p1 + '-' + p2 + '-' + p3 + '-' + p4] = PlainExecTest(['texwrap', '-auto', p1, p2, p3, p4]) # Test formats add_texwrap_test2('2D', 'GL_RGBA4') add_texwrap_test2('2D', 'GL_RGB5') add_texwrap_test2('2D', 'GL_RGB5_A1') add_texwrap_test2('2D', 'GL_RGBA8') add_texwrap_test2('2D', 'GL_RGB10_A2') add_texwrap_test2('2D', 'GL_RGBA16') add_texwrap_test2('2D', 'GL_RGBA16F') add_texwrap_test2('2D', 'GL_RGBA32F') # Test various combinations of features add_texwrap_test2('1D', 'GL_RGBA8') add_texwrap_test2('3D', 'GL_RGBA8') add_texwrap_test2('RECT', 'GL_RGBA8') add_texwrap_test3('npot', '1D', 'GL_RGBA8') add_texwrap_test3('npot', '2D', 'GL_RGBA8') add_texwrap_test3('npot', '3D', 'GL_RGBA8') add_texwrap_test3('border', '1D', 'GL_RGBA8') add_texwrap_test3('border', '2D', 'GL_RGBA8') add_texwrap_test3('border', '3D', 'GL_RGBA8') add_texwrap_test4('border', 'npot', '1D', 'GL_RGBA8') add_texwrap_test4('border', 'npot', '2D', 'GL_RGBA8') add_texwrap_test4('border', 'npot', '3D', 'GL_RGBA8') spec = Group(); tdfx_texture_compression_fxt1 = Group() spec['3DFX_texture_compression_FXT1'] = tdfx_texture_compression_fxt1 add_fbo_generatemipmap_extension(tdfx_texture_compression_fxt1, 'GL_3DFX_texture_compression_FXT1', 'fbo-generatemipmap-formats') arb_color_buffer_float = Group() spec['ARB_color_buffer_float'] = arb_color_buffer_float add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-getteximage') add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-queries') add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-readpixels') add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-probepixel') add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-drawpixels') add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-clear') add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-render') add_plain_test(arb_color_buffer_float, 'arb_color_buffer_float-mrt') arb_depth_texture = Group() spec['ARB_depth_texture'] = arb_depth_texture add_fbo_generatemipmap_extension(arb_depth_texture, 'GL_ARB_depth_texture', 'fbo-generatemipmap-formats') arb_depth_buffer_float = Group() spec['ARB_depth_buffer_float'] = arb_depth_buffer_float add_fbo_generatemipmap_extension(arb_depth_buffer_float, 'GL_ARB_depth_buffer_float', 'fbo-generatemipmap-formats') arb_texture_compression = Group() spec['ARB_texture_compression'] = arb_texture_compression add_fbo_generatemipmap_extension(arb_texture_compression, 'GL_ARB_texture_compression', 'fbo-generatemipmap-formats') ext_packed_depth_stencil = Group() spec['EXT_packed_depth_stencil'] = ext_packed_depth_stencil add_fbo_generatemipmap_extension(ext_packed_depth_stencil, 'GL_EXT_packed_depth_stencil', 'fbo-generatemipmap-formats') ext_texture_compression_rgtc = Group() spec['EXT_texture_compression_rgtc'] = ext_texture_compression_rgtc add_fbo_generatemipmap_extension(ext_texture_compression_rgtc, 'GL_EXT_texture_compression_rgtc', 'fbo-generatemipmap-formats') ext_texture_compression_s3tc = Group() spec['EXT_texture_compression_s3tc'] = ext_texture_compression_s3tc add_fbo_generatemipmap_extension(ext_texture_compression_s3tc, 'GL_EXT_texture_compression_s3tc', 'fbo-generatemipmap-formats') ext_texture_integer = Group() spec['EXT_texture_integer'] = ext_texture_integer add_fbo_generatemipmap_extension(ext_texture_integer, 'GL_EXT_texture_integer', 'fbo-generatemipmap-formats') arb_texture_rg = Group() spec['ARB_texture_rg'] = arb_texture_rg add_fbo_generatemipmap_extension(arb_texture_rg, 'GL_ARB_texture_rg', 'fbo-generatemipmap-formats') add_fbo_generatemipmap_extension(arb_texture_rg, 'GL_ARB_texture_rg-int', 'fbo-generatemipmap-formats-int') add_fbo_generatemipmap_extension(arb_texture_rg, 'GL_ARB_texture_rg-float', 'fbo-generatemipmap-formats-float') ext_texture_shared_exponent = Group() spec['EXT_texture_shared_exponent'] = ext_texture_shared_exponent add_fbo_generatemipmap_extension(ext_texture_shared_exponent, 'GL_EXT_texture_shared_exponent', 'fbo-generatemipmap-formats') ext_texture_srgb = Group() spec['EXT_texture_sRGB'] = ext_texture_srgb add_fbo_generatemipmap_extension(ext_texture_srgb, 'GL_EXT_texture_sRGB', 'fbo-generatemipmap-formats') add_fbo_generatemipmap_extension(ext_texture_srgb, 'GL_EXT_texture_sRGB-s3tc', 'fbo-generatemipmap-formats-s3tc') ati_envmap_bumpmap = Group() spec['ATI_envmap_bumpmap'] = ati_envmap_bumpmap add_plain_test(ati_envmap_bumpmap, 'ati_envmap_bumpmap-bump') # Include the glsl parser tests from glslparser.tests. def add_glslparsertest(shader, result): glslparsertest[shader] = PlainExecTest(['glslparsertest', 'tests/glslparsertest/shaders/' + shader, result]) def add_otherglslparsertest(shader, result, min_glsl_version = '1.10'): glslparsertest[shader] = PlainExecTest(['glslparsertest', 'tests/glslparsertest/' + shader, result, min_glsl_version]) execfile(os.path.dirname(__file__) + '/glslparser.tests') asmparsertest = Group() def add_asmparsertest(group, shader): asmparsertest[group + '/' + shader] = PlainExecTest(['asmparsertest', '-auto', group, 'tests/asmparsertest/shaders/' + group + '/' + shader]) add_asmparsertest('ARBfp1.0', 'abs-01.txt') add_asmparsertest('ARBfp1.0', 'abs-02.txt') add_asmparsertest('ARBfp1.0', 'abs-03.txt') add_asmparsertest('ARBfp1.0', 'condition_code-01.txt') add_asmparsertest('ARBfp1.0', 'cos-01.txt') add_asmparsertest('ARBfp1.0', 'cos-02.txt') add_asmparsertest('ARBfp1.0', 'cos-03.txt') add_asmparsertest('ARBfp1.0', 'cos-04.txt') add_asmparsertest('ARBfp1.0', 'cos-05.txt') add_asmparsertest('ARBfp1.0', 'ddx-01.txt') add_asmparsertest('ARBfp1.0', 'ddx-02.txt') add_asmparsertest('ARBfp1.0', 'ddy-01.txt') add_asmparsertest('ARBfp1.0', 'ddy-02.txt') add_asmparsertest('ARBfp1.0', 'depth_range-01.txt') add_asmparsertest('ARBfp1.0', 'fog-01.txt') add_asmparsertest('ARBfp1.0', 'fog-02.txt') add_asmparsertest('ARBfp1.0', 'fog-03.txt') add_asmparsertest('ARBfp1.0', 'fog-04.txt') add_asmparsertest('ARBfp1.0', 'option-01.txt') add_asmparsertest('ARBfp1.0', 'precision_hint-01.txt') add_asmparsertest('ARBfp1.0', 'precision_hint-02.txt') add_asmparsertest('ARBfp1.0', 'precision_hint-03.txt') add_asmparsertest('ARBfp1.0', 'precision_hint-04.txt') add_asmparsertest('ARBfp1.0', 'precision_hint-05.txt') add_asmparsertest('ARBfp1.0', 'reserved_words-01.txt') add_asmparsertest('ARBfp1.0', 'result-01.txt') add_asmparsertest('ARBfp1.0', 'result-02.txt') add_asmparsertest('ARBfp1.0', 'result-03.txt') add_asmparsertest('ARBfp1.0', 'result-04.txt') add_asmparsertest('ARBfp1.0', 'result-05.txt') add_asmparsertest('ARBfp1.0', 'result-06.txt') add_asmparsertest('ARBfp1.0', 'result-07.txt') add_asmparsertest('ARBfp1.0', 'result-08.txt') add_asmparsertest('ARBfp1.0', 'result-09.txt') add_asmparsertest('ARBfp1.0', 'result-10.txt') add_asmparsertest('ARBfp1.0', 'result-11.txt') add_asmparsertest('ARBfp1.0', 'shadow-01.txt') add_asmparsertest('ARBfp1.0', 'shadow-02.txt') add_asmparsertest('ARBfp1.0', 'shadow-03.txt') add_asmparsertest('ARBfp1.0', 'sincos-01.txt') add_asmparsertest('ARBfp1.0', 'sincos-02.txt') add_asmparsertest('ARBfp1.0', 'sincos-03.txt') add_asmparsertest('ARBfp1.0', 'sincos-04.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-01.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-02.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-03.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-04.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-05.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-06.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-07.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-08.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-09.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-10.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-11.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-12.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-13.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-14.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-15.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-16.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-17.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-18.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-19.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-20.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-21.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-22.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-23.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-24.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-25.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-26.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-27.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-28.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-29.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-30.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-31.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-32.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-33.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-34.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-35.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-36.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-37.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-38.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-39.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-40.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-41.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-42.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-43.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-44.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-45.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-46.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-47.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-48.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-49.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-50.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-51.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-52.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-53.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-54.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-55.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-56.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-57.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-58.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-59.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-60.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-61.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-62.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-63.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-64.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-65.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-66.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-67.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-68.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-69.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-70.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-71.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-72.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-73.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-74.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-75.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-76.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-77.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-78.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-79.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-80.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-81.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-82.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-83.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-84.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-85.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-86.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-87.txt') add_asmparsertest('ARBfp1.0', 'size_specifier-88.txt') add_asmparsertest('ARBfp1.0', 'swz-01.txt') add_asmparsertest('ARBfp1.0', 'swz-02.txt') add_asmparsertest('ARBfp1.0', 'swz-03.txt') add_asmparsertest('ARBfp1.0', 'swz-04.txt') add_asmparsertest('ARBfp1.0', 'swz-05.txt') add_asmparsertest('ARBfp1.0', 'swz-06.txt') add_asmparsertest('ARBfp1.0', 'swz-07.txt') add_asmparsertest('ARBfp1.0', 'txd-01.txt') add_asmparsertest('ARBfp1.0', 'txd-02.txt') add_asmparsertest('ARBfp1.0', 'txd-03.txt') add_asmparsertest('ARBvp1.0', 'abs-02.txt') add_asmparsertest('ARBvp1.0', 'abs-03.txt') add_asmparsertest('ARBvp1.0', 'abs.txt') add_asmparsertest('ARBvp1.0', 'address-01.txt') add_asmparsertest('ARBvp1.0', 'address-02.txt') add_asmparsertest('ARBvp1.0', 'address-03.txt') add_asmparsertest('ARBvp1.0', 'address-04.txt') add_asmparsertest('ARBvp1.0', 'address-05.txt') add_asmparsertest('ARBvp1.0', 'address-06.txt') add_asmparsertest('ARBvp1.0', 'address-07.txt') add_asmparsertest('ARBvp1.0', 'address-08.txt') add_asmparsertest('ARBvp1.0', 'address-09.txt') add_asmparsertest('ARBvp1.0', 'address-10.txt') add_asmparsertest('ARBvp1.0', 'address-11.txt') add_asmparsertest('ARBvp1.0', 'add.txt') add_asmparsertest('ARBvp1.0', 'alias-01.txt') add_asmparsertest('ARBvp1.0', 'alias-02.txt') add_asmparsertest('ARBvp1.0', 'all_state-01.txt') add_asmparsertest('ARBvp1.0', 'all_state-02.txt') add_asmparsertest('ARBvp1.0', 'all_state-03.txt') add_asmparsertest('ARBvp1.0', 'all_state-04.txt') add_asmparsertest('ARBvp1.0', 'all_state-05.txt') add_asmparsertest('ARBvp1.0', 'all_state-06.txt') add_asmparsertest('ARBvp1.0', 'all_state-07.txt') add_asmparsertest('ARBvp1.0', 'all_state-08.txt') add_asmparsertest('ARBvp1.0', 'all_state-09.txt') add_asmparsertest('ARBvp1.0', 'all_state-10.txt') add_asmparsertest('ARBvp1.0', 'all_state-11.txt') add_asmparsertest('ARBvp1.0', 'all_state-12.txt') add_asmparsertest('ARBvp1.0', 'all_state-13.txt') add_asmparsertest('ARBvp1.0', 'all_state-14.txt') add_asmparsertest('ARBvp1.0', 'all_state-15.txt') add_asmparsertest('ARBvp1.0', 'all_state-16.txt') add_asmparsertest('ARBvp1.0', 'all_state-17.txt') add_asmparsertest('ARBvp1.0', 'all_state-18.txt') add_asmparsertest('ARBvp1.0', 'ara-01.txt') add_asmparsertest('ARBvp1.0', 'ara-02.txt') add_asmparsertest('ARBvp1.0', 'ara-03.txt') add_asmparsertest('ARBvp1.0', 'ara-04.txt') add_asmparsertest('ARBvp1.0', 'arbfp.txt') add_asmparsertest('ARBvp1.0', 'arl-01.txt') add_asmparsertest('ARBvp1.0', 'arl-02.txt') add_asmparsertest('ARBvp1.0', 'arl-03.txt') add_asmparsertest('ARBvp1.0', 'arl-04.txt') add_asmparsertest('ARBvp1.0', 'arl-05.txt') add_asmparsertest('ARBvp1.0', 'array_range-01.txt') add_asmparsertest('ARBvp1.0', 'array_range-02.txt') add_asmparsertest('ARBvp1.0', 'array_range-03.txt') add_asmparsertest('ARBvp1.0', 'array_range-04.txt') add_asmparsertest('ARBvp1.0', 'array_range-05.txt') add_asmparsertest('ARBvp1.0', 'array_range-06.txt') add_asmparsertest('ARBvp1.0', 'array_range-07.txt') add_asmparsertest('ARBvp1.0', 'astack-01.txt') add_asmparsertest('ARBvp1.0', 'astack-02.txt') add_asmparsertest('ARBvp1.0', 'astack-03.txt') add_asmparsertest('ARBvp1.0', 'astack-04.txt') add_asmparsertest('ARBvp1.0', 'astack-05.txt') add_asmparsertest('ARBvp1.0', 'astack-06.txt') add_asmparsertest('ARBvp1.0', 'astack-07.txt') add_asmparsertest('ARBvp1.0', 'astack-08.txt') add_asmparsertest('ARBvp1.0', 'astack-09.txt') add_asmparsertest('ARBvp1.0', 'attrib-01.txt') add_asmparsertest('ARBvp1.0', 'attrib-02.txt') add_asmparsertest('ARBvp1.0', 'attrib-03.txt') add_asmparsertest('ARBvp1.0', 'attrib-04.txt') add_asmparsertest('ARBvp1.0', 'bra-01.txt') add_asmparsertest('ARBvp1.0', 'bra-02.txt') add_asmparsertest('ARBvp1.0', 'bra-03.txt') add_asmparsertest('ARBvp1.0', 'clipdistance-01.txt') add_asmparsertest('ARBvp1.0', 'clipdistance-02.txt') add_asmparsertest('ARBvp1.0', 'clipdistance-03.txt') add_asmparsertest('ARBvp1.0', 'clipdistance-04.txt') add_asmparsertest('ARBvp1.0', 'cos-01.txt') add_asmparsertest('ARBvp1.0', 'cos-02.txt') add_asmparsertest('ARBvp1.0', 'cos-03.txt') add_asmparsertest('ARBvp1.0', 'dp3.txt') add_asmparsertest('ARBvp1.0', 'dp4.txt') add_asmparsertest('ARBvp1.0', 'dph.txt') add_asmparsertest('ARBvp1.0', 'dst.txt') add_asmparsertest('ARBvp1.0', 'ex2.txt') add_asmparsertest('ARBvp1.0', 'flr.txt') add_asmparsertest('ARBvp1.0', 'frc.txt') add_asmparsertest('ARBvp1.0', 'issue-70.txt') add_asmparsertest('ARBvp1.0', 'issue-74.txt') add_asmparsertest('ARBvp1.0', 'issue-75.txt') add_asmparsertest('ARBvp1.0', 'lg2.txt') add_asmparsertest('ARBvp1.0', 'lit.txt') add_asmparsertest('ARBvp1.0', 'mad.txt') add_asmparsertest('ARBvp1.0', 'matrix-01.txt') add_asmparsertest('ARBvp1.0', 'max.txt') add_asmparsertest('ARBvp1.0', 'min.txt') add_asmparsertest('ARBvp1.0', 'mov.txt') add_asmparsertest('ARBvp1.0', 'mul.txt') add_asmparsertest('ARBvp1.0', 'numbers-01.txt') add_asmparsertest('ARBvp1.0', 'numbers-02.txt') add_asmparsertest('ARBvp1.0', 'numbers-03.txt') add_asmparsertest('ARBvp1.0', 'numbers-04.txt') add_asmparsertest('ARBvp1.0', 'numbers-05.txt') add_asmparsertest('ARBvp1.0', 'numbers-06.txt') add_asmparsertest('ARBvp1.0', 'numbers-07.txt') add_asmparsertest('ARBvp1.0', 'option-01.txt') add_asmparsertest('ARBvp1.0', 'output-01.txt') add_asmparsertest('ARBvp1.0', 'output-02.txt') add_asmparsertest('ARBvp1.0', 'param-01.txt') add_asmparsertest('ARBvp1.0', 'param-02.txt') add_asmparsertest('ARBvp1.0', 'param-03.txt') add_asmparsertest('ARBvp1.0', 'param-04.txt') add_asmparsertest('ARBvp1.0', 'param-05.txt') add_asmparsertest('ARBvp1.0', 'param-06.txt') add_asmparsertest('ARBvp1.0', 'param-07.txt') add_asmparsertest('ARBvp1.0', 'param-08.txt') add_asmparsertest('ARBvp1.0', 'position_invariant-01.txt') add_asmparsertest('ARBvp1.0', 'position_invariant-02.txt') add_asmparsertest('ARBvp1.0', 'pow.txt') add_asmparsertest('ARBvp1.0', 'rcp-01.txt') add_asmparsertest('ARBvp1.0', 'rcp-02.txt') add_asmparsertest('ARBvp1.0', 'rcp-03.txt') add_asmparsertest('ARBvp1.0', 'rcp-04.txt') add_asmparsertest('ARBvp1.0', 'rcp-05.txt') add_asmparsertest('ARBvp1.0', 'rcp-06.txt') add_asmparsertest('ARBvp1.0', 'rcp-07.txt') add_asmparsertest('ARBvp1.0', 'reserved_word-01.txt') add_asmparsertest('ARBvp1.0', 'result-01.txt') add_asmparsertest('ARBvp1.0', 'result-02.txt') add_asmparsertest('ARBvp1.0', 'rsq.txt') add_asmparsertest('ARBvp1.0', 'seq-01.txt') add_asmparsertest('ARBvp1.0', 'seq-02.txt') add_asmparsertest('ARBvp1.0', 'sfl-01.txt') add_asmparsertest('ARBvp1.0', 'sfl-02.txt') add_asmparsertest('ARBvp1.0', 'sge.txt') add_asmparsertest('ARBvp1.0', 'sgt-01.txt') add_asmparsertest('ARBvp1.0', 'sgt-02.txt') add_asmparsertest('ARBvp1.0', 'sin-01.txt') add_asmparsertest('ARBvp1.0', 'sin-02.txt') add_asmparsertest('ARBvp1.0', 'sin-03.txt') add_asmparsertest('ARBvp1.0', 'sle-01.txt') add_asmparsertest('ARBvp1.0', 'sle-02.txt') add_asmparsertest('ARBvp1.0', 'slt.txt') add_asmparsertest('ARBvp1.0', 'sne-01.txt') add_asmparsertest('ARBvp1.0', 'sne-02.txt') add_asmparsertest('ARBvp1.0', 'ssg-01.txt') add_asmparsertest('ARBvp1.0', 'ssg-02.txt') add_asmparsertest('ARBvp1.0', 'str-01.txt') add_asmparsertest('ARBvp1.0', 'str-02.txt') add_asmparsertest('ARBvp1.0', 'sub.txt') add_asmparsertest('ARBvp1.0', 'swz-01.txt') add_asmparsertest('ARBvp1.0', 'swz-02.txt') add_asmparsertest('ARBvp1.0', 'swz-03.txt') add_asmparsertest('ARBvp1.0', 'swz-04.txt') add_asmparsertest('ARBvp1.0', 'swz-05.txt') add_asmparsertest('ARBvp1.0', 'tex-01.txt') add_asmparsertest('ARBvp1.0', 'tex-02.txt') add_asmparsertest('ARBvp1.0', 'tex-03.txt') add_asmparsertest('ARBvp1.0', 'tex-04.txt') add_asmparsertest('ARBvp1.0', 'tex-05.txt') add_asmparsertest('ARBvp1.0', 'tex-06.txt') add_asmparsertest('ARBvp1.0', 'tex-07.txt') add_asmparsertest('ARBvp1.0', 'tex-08.txt') add_asmparsertest('ARBvp1.0', 'tex-09.txt') add_asmparsertest('ARBvp1.0', 'tex-10.txt') add_asmparsertest('ARBvp1.0', 'tex-11.txt') add_asmparsertest('ARBvp1.0', 'tex-12.txt') add_asmparsertest('ARBvp1.0', 'tex-13.txt') add_asmparsertest('ARBvp1.0', 'tex-14.txt') add_asmparsertest('ARBvp1.0', 'tex-15.txt') add_asmparsertest('ARBvp1.0', 'tex-16.txt') add_asmparsertest('ARBvp1.0', 'tex-17.txt') add_asmparsertest('ARBvp1.0', 'tex-18.txt') add_asmparsertest('ARBvp1.0', 'tex-19.txt') add_asmparsertest('ARBvp1.0', 'tex-20.txt') add_asmparsertest('ARBvp1.0', 'txb-01.txt') add_asmparsertest('ARBvp1.0', 'txb-02.txt') add_asmparsertest('ARBvp1.0', 'txb-03.txt') add_asmparsertest('ARBvp1.0', 'txb-04.txt') add_asmparsertest('ARBvp1.0', 'txb-05.txt') add_asmparsertest('ARBvp1.0', 'txb-06.txt') add_asmparsertest('ARBvp1.0', 'txb-07.txt') add_asmparsertest('ARBvp1.0', 'txb-08.txt') add_asmparsertest('ARBvp1.0', 'txb-09.txt') add_asmparsertest('ARBvp1.0', 'txb-10.txt') add_asmparsertest('ARBvp1.0', 'txb-11.txt') add_asmparsertest('ARBvp1.0', 'txb-12.txt') add_asmparsertest('ARBvp1.0', 'txb-13.txt') add_asmparsertest('ARBvp1.0', 'txb-14.txt') add_asmparsertest('ARBvp1.0', 'txb-15.txt') add_asmparsertest('ARBvp1.0', 'txb-16.txt') add_asmparsertest('ARBvp1.0', 'txb-17.txt') add_asmparsertest('ARBvp1.0', 'txb-18.txt') add_asmparsertest('ARBvp1.0', 'txb-19.txt') add_asmparsertest('ARBvp1.0', 'txb-20.txt') add_asmparsertest('ARBvp1.0', 'txd-01.txt') add_asmparsertest('ARBvp1.0', 'txd-02.txt') add_asmparsertest('ARBvp1.0', 'txd-03.txt') add_asmparsertest('ARBvp1.0', 'txd-04.txt') add_asmparsertest('ARBvp1.0', 'txd-05.txt') add_asmparsertest('ARBvp1.0', 'txd-06.txt') add_asmparsertest('ARBvp1.0', 'txd-07.txt') add_asmparsertest('ARBvp1.0', 'txd-08.txt') add_asmparsertest('ARBvp1.0', 'txd-09.txt') add_asmparsertest('ARBvp1.0', 'txd-10.txt') add_asmparsertest('ARBvp1.0', 'txd-11.txt') add_asmparsertest('ARBvp1.0', 'txd-12.txt') add_asmparsertest('ARBvp1.0', 'txd-13.txt') add_asmparsertest('ARBvp1.0', 'txd-14.txt') add_asmparsertest('ARBvp1.0', 'txd-15.txt') add_asmparsertest('ARBvp1.0', 'txd-16.txt') add_asmparsertest('ARBvp1.0', 'txd-17.txt') add_asmparsertest('ARBvp1.0', 'txd-18.txt') add_asmparsertest('ARBvp1.0', 'txd-19.txt') add_asmparsertest('ARBvp1.0', 'txd-20.txt') add_asmparsertest('ARBvp1.0', 'txf-01.txt') add_asmparsertest('ARBvp1.0', 'txf-02.txt') add_asmparsertest('ARBvp1.0', 'txf-03.txt') add_asmparsertest('ARBvp1.0', 'txf-04.txt') add_asmparsertest('ARBvp1.0', 'txf-05.txt') add_asmparsertest('ARBvp1.0', 'txf-06.txt') add_asmparsertest('ARBvp1.0', 'txf-07.txt') add_asmparsertest('ARBvp1.0', 'txf-08.txt') add_asmparsertest('ARBvp1.0', 'txf-09.txt') add_asmparsertest('ARBvp1.0', 'txf-10.txt') add_asmparsertest('ARBvp1.0', 'txf-11.txt') add_asmparsertest('ARBvp1.0', 'txf-12.txt') add_asmparsertest('ARBvp1.0', 'txf-13.txt') add_asmparsertest('ARBvp1.0', 'txf-14.txt') add_asmparsertest('ARBvp1.0', 'txf-15.txt') add_asmparsertest('ARBvp1.0', 'txf-16.txt') add_asmparsertest('ARBvp1.0', 'txf-17.txt') add_asmparsertest('ARBvp1.0', 'txf-18.txt') add_asmparsertest('ARBvp1.0', 'txf-19.txt') add_asmparsertest('ARBvp1.0', 'txf-20.txt') add_asmparsertest('ARBvp1.0', 'txl-01.txt') add_asmparsertest('ARBvp1.0', 'txl-02.txt') add_asmparsertest('ARBvp1.0', 'txl-03.txt') add_asmparsertest('ARBvp1.0', 'txl-04.txt') add_asmparsertest('ARBvp1.0', 'txl-05.txt') add_asmparsertest('ARBvp1.0', 'txl-06.txt') add_asmparsertest('ARBvp1.0', 'txl-07.txt') add_asmparsertest('ARBvp1.0', 'txl-08.txt') add_asmparsertest('ARBvp1.0', 'txl-09.txt') add_asmparsertest('ARBvp1.0', 'txl-10.txt') add_asmparsertest('ARBvp1.0', 'txl-11.txt') add_asmparsertest('ARBvp1.0', 'txl-12.txt') add_asmparsertest('ARBvp1.0', 'txl-13.txt') add_asmparsertest('ARBvp1.0', 'txl-14.txt') add_asmparsertest('ARBvp1.0', 'txl-15.txt') add_asmparsertest('ARBvp1.0', 'txl-16.txt') add_asmparsertest('ARBvp1.0', 'txl-17.txt') add_asmparsertest('ARBvp1.0', 'txl-18.txt') add_asmparsertest('ARBvp1.0', 'txl-19.txt') add_asmparsertest('ARBvp1.0', 'txl-20.txt') add_asmparsertest('ARBvp1.0', 'txp-01.txt') add_asmparsertest('ARBvp1.0', 'txp-02.txt') add_asmparsertest('ARBvp1.0', 'txp-03.txt') add_asmparsertest('ARBvp1.0', 'txp-04.txt') add_asmparsertest('ARBvp1.0', 'txp-05.txt') add_asmparsertest('ARBvp1.0', 'txp-06.txt') add_asmparsertest('ARBvp1.0', 'txp-07.txt') add_asmparsertest('ARBvp1.0', 'txp-08.txt') add_asmparsertest('ARBvp1.0', 'txp-09.txt') add_asmparsertest('ARBvp1.0', 'txp-10.txt') add_asmparsertest('ARBvp1.0', 'txp-11.txt') add_asmparsertest('ARBvp1.0', 'txp-12.txt') add_asmparsertest('ARBvp1.0', 'txp-13.txt') add_asmparsertest('ARBvp1.0', 'txp-14.txt') add_asmparsertest('ARBvp1.0', 'txp-15.txt') add_asmparsertest('ARBvp1.0', 'txp-16.txt') add_asmparsertest('ARBvp1.0', 'txp-17.txt') add_asmparsertest('ARBvp1.0', 'txp-18.txt') add_asmparsertest('ARBvp1.0', 'txp-19.txt') add_asmparsertest('ARBvp1.0', 'txp-20.txt') add_asmparsertest('ARBvp1.0', 'txq-01.txt') add_asmparsertest('ARBvp1.0', 'txq-02.txt') add_asmparsertest('ARBvp1.0', 'txq-03.txt') add_asmparsertest('ARBvp1.0', 'txq-04.txt') add_asmparsertest('ARBvp1.0', 'txq-05.txt') add_asmparsertest('ARBvp1.0', 'txq-06.txt') add_asmparsertest('ARBvp1.0', 'txq-07.txt') add_asmparsertest('ARBvp1.0', 'txq-08.txt') add_asmparsertest('ARBvp1.0', 'txq-09.txt') add_asmparsertest('ARBvp1.0', 'txq-10.txt') add_asmparsertest('ARBvp1.0', 'txq-11.txt') add_asmparsertest('ARBvp1.0', 'txq-12.txt') add_asmparsertest('ARBvp1.0', 'txq-13.txt') add_asmparsertest('ARBvp1.0', 'txq-14.txt') add_asmparsertest('ARBvp1.0', 'txq-15.txt') add_asmparsertest('ARBvp1.0', 'txq-16.txt') add_asmparsertest('ARBvp1.0', 'txq-17.txt') add_asmparsertest('ARBvp1.0', 'txq-18.txt') add_asmparsertest('ARBvp1.0', 'txq-19.txt') add_asmparsertest('ARBvp1.0', 'txq-20.txt') add_asmparsertest('ARBvp1.0', 'xpd.txt') profile.tests['bugs'] = bugs profile.tests['general'] = general profile.tests['fbo'] = fbo profile.tests['glean'] = glean profile.tests['glslparsertest'] = glslparsertest profile.tests['asmparsertest'] = asmparsertest profile.tests['mesa'] = mesa profile.tests['shaders'] = shaders profile.tests['texturing'] = texturing profile.tests['spec'] = spec profile.tests['glx'] = glx class ValgrindExecTest(PlainExecTest): def __init__(self, test): Test.__init__(self) self.command = [os.path.dirname(__file__)+'/valgrind-test/valgrind-test'] + test.command self.env = {} if 'PIGLIT_TEST' in test.env: self.env['PIGLIT_TEST'] = test.env['PIGLIT_TEST'] valgrind = Group() for groupname, group in sorted(profile.tests.iteritems()): for testname, test in sorted(group.iteritems()): if issubclass(test.__class__, PlainExecTest) or issubclass(test.__class__, GleanTest): valgrind[groupname+"/"+testname] = ValgrindExecTest(test) if issubclass(test.__class__, Group): for subtestname, subtest in sorted(test.iteritems()): if issubclass(subtest.__class__, PlainExecTest) or issubclass(subtest.__class__, GleanTest): valgrind[groupname+"/"+testname+"/"+subtestname] = ValgrindExecTest(subtest) profile.tests['valgrind'] = valgrind ############# # Some Mesa diagnostic messages that we should probably ignore Test.ignoreErrors.append(re.compile("couldn't open libtxc_dxtn.so")) Test.ignoreErrors.append(re.compile("compression/decompression available")) Test.ignoreErrors.append(re.compile("Mesa: .*build")) Test.ignoreErrors.append(re.compile("Mesa: CPU.*")) Test.ignoreErrors.append(re.compile("Mesa: .*cpu detected.")) Test.ignoreErrors.append(re.compile("Mesa: Test.*")) Test.ignoreErrors.append(re.compile("Mesa: Yes.*")) Test.ignoreErrors.append(re.compile("libGL: XF86DRIGetClientDriverName.*")) Test.ignoreErrors.append(re.compile("libGL: OpenDriver: trying.*")) Test.ignoreErrors.append(re.compile("libGL: Warning in.*drirc*")) Test.ignoreErrors.append(re.compile("ATTENTION.*value of option.*")) Test.ignoreErrors.append(re.compile("drmOpen.*")) Test.ignoreErrors.append(re.compile("Mesa: Not testing OS support.*")) Test.ignoreErrors.append(re.compile("Mesa: User error:.*")) Test.ignoreErrors.append(re.compile("Mesa: Initializing .* optimizations")) Test.ignoreErrors.append(re.compile("debug_get_.*")) Test.ignoreErrors.append(re.compile("util_cpu_caps.*")) Test.ignoreErrors.append(re.compile("Mesa: 3Dnow! detected")) Test.ignoreErrors.append(re.compile("r300:.*")) Test.ignoreErrors.append(re.compile("radeon:.*")) Test.ignoreErrors.append(re.compile("Warning:.*")) Test.ignoreErrors.append(re.compile("0 errors, .*")) Test.ignoreErrors.append(re.compile("Mesa.*")) Test.ignoreErrors.append(re.compile("no rrb")) Test.ignoreErrors.append(re.compile("; ModuleID.*")) Test.ignoreErrors.append(re.compile("%.*")) Test.ignoreErrors.append(re.compile(".*failed to translate tgsi opcode.*to SSE")) Test.ignoreErrors.append(re.compile(".*falling back to interpreter")) Test.ignoreErrors.append(re.compile("GLSL version is .*, but minimum version .* is required"))