Commit Graph

3810 Commits

Author SHA1 Message Date
Jon Ashburn
c357223bfc Fix memory leaks in loader related to layers. 2014-10-29 18:02:01 -06:00
Jon Ashburn
2506956d31 Make layer activation via CreateDevice struct or env variable
Also finish making all activated layers per icd and per gpu.
2014-10-29 18:02:01 -06:00
Tobin Ehlis
154caa36dc Better memory management in api_dump layer and struct print helper 2014-10-29 18:02:00 -06:00
Jon Ashburn
18ac393b8e Loader: fix dispatch table initialization to handle multiple layers 2014-10-29 18:02:00 -06:00
Tobin Ehlis
cf484e8f0d Improved API Dump and OBJ Track layers
Added generator script just for layers that generates API Dump and Object Tracker layers.  Improved output of API Dump layer.
2014-10-29 18:02:00 -06:00
Jon Ashburn
a20bd715f0 Change GetProcAddr function signature to use XGL types.
Fix bug in GPA for basic_plugin.c .
2014-10-29 18:01:59 -06:00
Jon Ashburn
c033c55d76 Make layer activation per icd in loader and gets deactivated.
Fixes issue where multiple xglInitAndEnumerate were causing the layer
activation to fail  and dispatch table setup in loader to fail.
2014-10-29 18:01:59 -06:00
Jon Ashburn
b974602d6b Add function to set an icd's dispatch table for subsequently created objects.
With layers the loaders dispatch table is used instead of the drivers dispatch
table.  The gpu objects were reflecting this change but not subsequent objects.
Tell the icd driver about the loader's dispatch table so it will use it on
object creation rather than the default  driver dispatch table.
2014-10-29 18:01:59 -06:00
Jon Ashburn
25767eb45a Add xglEnumerateLayers function including support in layers.
Also add this call to xglbase (init.cpp) test.
2014-10-29 18:01:59 -06:00
Jon Ashburn
03989f899d Fixes to Basic and Generic layers to work singly with LD_PRELOAD 2014-10-29 18:01:58 -06:00
Jon Ashburn
ecc82ad5fc Layers initial prototype.
Includes  an auto generated layer (GenericLayer) that wraps  all api calls.
Includes a basic handwritten layer (basicLayer)  that wraps a few apis.
Adds xglGetProcAddr as a new api, which is used to chain layers together.
All layers and loader implement  a dispatch table.
2014-10-29 18:01:58 -06:00
Courtney Goeltzenleuchter
ff844e2774 loader: initialize memory
uninitialized use from by valgrind
2014-10-29 17:59:29 -06:00
Jon Ashburn
bb109ea9e9 tests: Fix issue in tests where descriptor set mapping array not initialized 2014-10-21 09:31:45 -06:00
Jon Ashburn
b0d60b3d77 Fix loader icd_scan to Null terminate strings 2014-10-08 15:10:24 -06:00
Tobin Ehlis
4eea7a508f Refactor test code to pull common section into functions 2014-10-08 15:10:16 -06:00
Jon Ashburn
7d13b2045a Fix size as input/output parameter for various xglGet calls. 2014-09-26 08:59:47 -06:00
Jon Ashburn
b37e4ebb94 Fix size parameter for xglGetFormatInfo test utilities. 2014-09-24 14:24:14 -06:00
Jon Ashburn
189e0a46f7 Fix size as input parameter to xglGetGpuInfo() for test utilities 2014-09-24 14:24:05 -06:00
Chia-I Wu
3f3dbaa2bb add stubs for XGL_WSI_X11 2014-09-23 15:04:31 +08:00
Chia-I Wu
29283c10d6 tidy up the build system a bit 2014-09-18 17:27:55 +08:00
Chia-I Wu
d80fec0690 delete GitSHA1.c generation
It is unused.  Could be revived anytime if found useful.
2014-09-18 16:59:55 +08:00
Chia-I Wu
5c24a8e051 xgl-generate: do not hardcode #include's
Add core_headers to xgl.py and use it to generate #include's
2014-09-13 13:49:06 +08:00
Chia-I Wu
c38bc685fd remove XGLConfig.h.in
Unused.
2014-09-13 13:23:42 +08:00
Courtney Goeltzenleuchter
9844cdec4c tests: Update render_test to use XglTestFramework class 2014-09-10 16:44:58 -06:00
Courtney Goeltzenleuchter
bdcd74a34c tests: Make test framework class useful for XGL testing
Add the class XglTestClass that is intended to be used by
XGL test programs and knows how to capture interesting
test events such as images.
This includes the ability to parse two command line options
--show-images: bring up a simple image window that will show any
images of note (those that an application says to record). Results
are saved so that the operator can scroll through the images
at the completion of the test.
--save-images: Output the image as a ppm file using the test name
as the file base name.
2014-09-10 16:44:58 -06:00
Courtney Goeltzenleuchter
6a88c5981b tests: Add map and unmap methods to the XglImage class 2014-09-10 16:44:58 -06:00
Chia-I Wu
d8ab1e661b update copyright information
To my best knowledge.
2014-09-02 08:42:00 +08:00
Courtney Goeltzenleuchter
3837167373 xgl: Add build instructions 2014-09-01 18:05:45 -06:00
Courtney Goeltzenleuchter
c2cfbf50d2 xgl: Add project readme 2014-09-01 18:02:12 -06:00
Courtney Goeltzenleuchter
93e3c54bed tests: clean up use of Image object to fix SEGV 2014-09-01 18:02:12 -06:00
Courtney Goeltzenleuchter
db5e93a180 tests: Convert render_test to use XglImage class 2014-09-01 18:02:12 -06:00
Courtney Goeltzenleuchter
270556ef4b tests: Add CreateImage method to Device class 2014-09-01 18:02:12 -06:00
Courtney Goeltzenleuchter
3825f271a2 tests: Add image class
Add class that test can use to manipulate images in XGL.
2014-09-01 18:02:12 -06:00
Courtney Goeltzenleuchter
722f01360e tests: Use full include path for gtest
For some reason, QtCreator doesn't like the include "gtest/gtest.h"
it just won't do symbol lookup.
2014-09-01 18:02:12 -06:00
Courtney Goeltzenleuchter
1d41996073 render_test: Add OpenGL display engine 2014-09-01 18:02:12 -06:00
Courtney Goeltzenleuchter
fb97492719 tests: Add simple OpenGL helper to display XGL images 2014-09-01 18:02:12 -06:00
Chia-I Wu
7cd9f2df5c add a top-level .gitignore 2014-09-01 09:27:28 +08:00
Chia-I Wu
506bfb9b86 render_tests: use built-in kernels
They are commentted.
2014-08-31 00:54:39 +08:00
Chia-I Wu
f15698aba0 render_tests: no culling 2014-08-31 00:53:25 +08:00
Chia-I Wu
d2cb502dc7 render_tests: query and test XGL_PIPELINE_STATISTICS_DATA 2014-08-31 00:17:13 +08:00
Chia-I Wu
f695313274 render_tests: add functions to create query pools 2014-08-31 00:15:20 +08:00
Chia-I Wu
5adda02357 render_tests: set BIL generator magic as a hack
When the generator magic is 'w', the kernel does

  void main() {
     gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
  }

When the generator magic is 'v', the kernel does

  void main() {
     vec2 vertices[3] = {
        vec2(-1.0, -1.0),
        vec2( 1.0, -1.0),
        vec2( 0.0,  1.0)
     };
     gl_Position = vec4(vertices[gl_VertexID % 3], 0.0, 1.0);
  }
2014-08-28 12:31:30 +08:00
Chia-I Wu
639b141429 icd: rename and prefix shader_il.h
Rename shader_il.h to icd-bil.h, and make it more C compatible.  Prefix
everything with icd_.
2014-08-28 12:23:26 +08:00
Courtney Goeltzenleuchter
3fae88a682 tests: Need to define blend state. 2014-08-27 17:25:40 -06:00
Chia-I Wu
10a774b1ff render_tests: write the result to TriangleTest.ppm 2014-08-27 15:03:37 +08:00
Chia-I Wu
0caed8c12c render_tests: use XGL_NUM_FMT_UNORM
With 8-bit per channel and UNORM, [0.0, 1.0] will be scaled to [0, 255].
2014-08-27 15:03:01 +08:00
Chia-I Wu
5e25c50f18 tests: fix memory access with uninitialized values
ch and num are uninitialized.
2014-08-27 14:23:38 +08:00
Chia-I Wu
ef6c188f5d render_test: no descriptor set nor dynamic view mapping 2014-08-23 17:50:19 +08:00
Courtney Goeltzenleuchter
377b632072 render_test: Add remaining calls to output a command buffer 2014-08-22 17:56:42 -06:00
Courtney Goeltzenleuchter
eb3d370cbc device_class: Add helper function to alloc and bind memory 2014-08-22 17:56:42 -06:00