Compare commits
266 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
a2224cf594 | ||
|
e714e26420 | ||
|
4636e87191 | ||
|
a32330eb93 | ||
|
83f1f6d2ef | ||
|
56b0e3271a | ||
|
4f247c28e5 | ||
|
711b15ddb9 | ||
|
b625016802 | ||
|
3d8f3eea52 | ||
|
a6524c6d81 | ||
|
a3b657a607 | ||
|
f5a8a37c73 | ||
|
f0dfdbfc79 | ||
|
961e2c8ada | ||
|
a15aa108ea | ||
|
767623bbf2 | ||
|
94e7e35d6e | ||
|
bd304ffc85 | ||
|
16c5f24141 | ||
|
b60eb2e174 | ||
|
ebe8e9b01f | ||
|
3e385d1bc3 | ||
|
bd62562282 | ||
|
6a022c8b03 | ||
|
dfaf5de460 | ||
|
b9990d758b | ||
|
ee5e7148e5 | ||
|
44831bff0f | ||
|
4fd03f26aa | ||
|
4f0be333e7 | ||
|
f1998c8aa7 | ||
|
0b2c5119cb | ||
|
c20aa295ec | ||
|
ca5514b851 | ||
|
c726a6a907 | ||
|
12da4c1a6a | ||
|
f3a7e28fe4 | ||
|
5394a872f3 | ||
|
c833874386 | ||
|
83e6532001 | ||
|
3da8868b5d | ||
|
e1e9f69d3c | ||
|
8b167d34be | ||
|
b2a32254d6 | ||
|
08d7c08512 | ||
|
f4657c4e10 | ||
|
a6252a56a5 | ||
|
2d844be97f | ||
|
cf33e6d85d | ||
|
69d5778b36 | ||
|
9b8c5847e6 | ||
|
6e491b875f | ||
|
57cd553eda | ||
|
95a708abe6 | ||
|
8c2e3c8275 | ||
|
81245daed3 | ||
|
e5ed198f35 | ||
|
52a6ebe200 | ||
|
5dc0d13e3d | ||
|
dbeb24c39b | ||
|
621a461cd9 | ||
|
259448d02f | ||
|
c8e0d10c0a | ||
|
26c599e00a | ||
|
6f966b58a1 | ||
|
6e557f03f3 | ||
|
7ab2b8c4c4 | ||
|
0048df9cd0 | ||
|
8f0742051e | ||
|
8eb1046996 | ||
|
cc6ad9ce2c | ||
|
82d5b5e20f | ||
|
bf9be81b47 | ||
|
995dc3782b | ||
|
cd5ea2788d | ||
|
f1257f5fe0 | ||
|
cde1ff2d7c | ||
|
eb69e251a8 | ||
|
fb3e55f898 | ||
|
6d6d8fb073 | ||
|
9eae0c95f8 | ||
|
fac3094fef | ||
|
8c4c3d01ee | ||
|
2c3aa1b4ee | ||
|
5377bc3e40 | ||
|
486aecac7e | ||
|
8fc8f38d94 | ||
|
dfcc8caf25 | ||
|
c8ae770068 | ||
|
88513d6485 | ||
|
2eb55601bb | ||
|
26ffbf6f39 | ||
|
421141192f | ||
|
be029eb993 | ||
|
f7fba18e2e | ||
|
42b6d94537 | ||
|
563c488453 | ||
|
4babf9ba6b | ||
|
8a9099d4ef | ||
|
beebb2d9d5 | ||
|
e021b50227 | ||
|
3801e9a87e | ||
|
faec15dc7a | ||
|
5461cc1f00 | ||
|
4fbbf49cc5 | ||
|
130fda3d3b | ||
|
3a2926fdbf | ||
|
616da8f818 | ||
|
72295c5f67 | ||
|
a6a2039a44 | ||
|
f53b9849a1 | ||
|
50ffa8bac5 | ||
|
0547f28134 | ||
|
47da22626d | ||
|
c3de1eea7f | ||
|
ab9322534c | ||
|
2cda3f0e90 | ||
|
3b852f9d52 | ||
|
fd31f5ee1d | ||
|
c0253baaa0 | ||
|
9dd4e1ef85 | ||
|
fbbe25ef26 | ||
|
e5f788e1e0 | ||
|
26ae6ec1e8 | ||
|
9586f4de71 | ||
|
fa892ecc04 | ||
|
2377205bcb | ||
|
8218eebc80 | ||
|
46273ba256 | ||
|
d3f99fb532 | ||
|
6fb2032c35 | ||
|
c0abf6499f | ||
|
1a9bda1f34 | ||
|
59781051eb | ||
|
f31a1d9f8d | ||
|
3370dfdf3e | ||
|
2153557906 | ||
|
dda7358377 | ||
|
3fd1ca7949 | ||
|
4aa9f013d5 | ||
|
7aefdab219 | ||
|
fe6526f439 | ||
|
08b192d26a | ||
|
c1c076dd8d | ||
|
368fc4f3ec | ||
|
e14baf425b | ||
|
dce3865306 | ||
|
8efdaedfc2 | ||
|
c47804d286 | ||
|
5114ac3f87 | ||
|
f0bc10679e | ||
|
3f438bfa4c | ||
|
60e1b03455 | ||
|
cf537c405b | ||
|
601926515e | ||
|
c9a7d6950b | ||
|
89aff30f9b | ||
|
3eae076d70 | ||
|
3ec07eaaa5 | ||
|
35c9345711 | ||
|
74fcc65b58 | ||
|
b802f6a124 | ||
|
170b952cfe | ||
|
b97305bc21 | ||
|
ecd1d92baf | ||
|
c8b5222074 | ||
|
bd83ff1923 | ||
|
a8b08c5ccd | ||
|
796b4a7b40 | ||
|
d3004acdd1 | ||
|
684316512c | ||
|
9f7f727345 | ||
|
1fb22bf143 | ||
|
9fa7313e34 | ||
|
6296abed15 | ||
|
5b8c943eb2 | ||
|
d72f7720a6 | ||
|
b40d9e4f41 | ||
|
e2185778e2 | ||
|
a98d5f2663 | ||
|
24d1949ddc | ||
|
996bc26c87 | ||
|
b055c8689e | ||
|
d6d0175203 | ||
|
4ba5fd1052 | ||
|
872c09586c | ||
|
4f44202aae | ||
|
33b581f6f6 | ||
|
c088c24588 | ||
|
7d6dcb61cd | ||
|
8025bac852 | ||
|
5d6dc93490 | ||
|
31f582abd4 | ||
|
0b131ae24f | ||
|
8ee4a4e417 | ||
|
0c405cd0e8 | ||
|
b76ff3dbcd | ||
|
cb8e109492 | ||
|
4006fc4656 | ||
|
731a08341e | ||
|
3da0c76ec0 | ||
|
10ff10c89e | ||
|
12da1bcb3b | ||
|
195e995968 | ||
|
6f9b090719 | ||
|
70c9e07bd4 | ||
|
d383ff0843 | ||
|
d1419857d7 | ||
|
c15b2d86e2 | ||
|
1e0ad955e7 | ||
|
9aeb967e75 | ||
|
001c29cb18 | ||
|
c331562158 | ||
|
8e1d37161f | ||
|
78e760c234 | ||
|
71891ce017 | ||
|
a19bc84380 | ||
|
73bde3b8ff | ||
|
4a37827752 | ||
|
adc87c5e3f | ||
|
4d7ebeb51e | ||
|
6d8f471640 | ||
|
687415cf70 | ||
|
e4f81bdbc4 | ||
|
6c25c0a0da | ||
|
526e71bfcc | ||
|
06aee8a56c | ||
|
b319e3975e | ||
|
d4c2c5a739 | ||
|
a3f48d97cd | ||
|
030ada7a50 | ||
|
b61036fa2d | ||
|
ddf6f591a9 | ||
|
e3dbfc5769 | ||
|
cdcba2878a | ||
|
8efee44c38 | ||
|
3bdd95270d | ||
|
5476049e38 | ||
|
a2dbaeb2d8 | ||
|
ded1695494 | ||
|
3213c60d81 | ||
|
678ac190a5 | ||
|
771b576da6 | ||
|
9c66a29358 | ||
|
5154c93fa8 | ||
|
8a27c824ec | ||
|
4953bf3837 | ||
|
c7bfe87721 | ||
|
c6f6b4e161 | ||
|
4f5e18cb3e | ||
|
e108bb07a0 | ||
|
55241e9958 | ||
|
6237090330 | ||
|
55ab069e5f | ||
|
925e8a200b | ||
|
014b9ceb62 | ||
|
8f80e55002 | ||
|
579eae3012 | ||
|
cb06c9b2aa | ||
|
253a4c3e73 | ||
|
99666d81e4 | ||
|
e8bc520713 | ||
|
49f40ebefa | ||
|
9b8ad64362 | ||
|
ee421aec32 |
@@ -8,5 +8,4 @@
|
||||
(c-set-offset 'innamespace '0)
|
||||
(c-set-offset 'inline-open '0)))
|
||||
)
|
||||
(makefile-mode (indent-tabs-mode . t))
|
||||
)
|
||||
|
@@ -33,10 +33,9 @@ endif
|
||||
LOCAL_C_INCLUDES += \
|
||||
$(MESA_TOP)/include
|
||||
|
||||
MESA_VERSION=$(shell cat $(MESA_TOP)/VERSION)
|
||||
# define ANDROID_VERSION (e.g., 4.0.x => 0x0400)
|
||||
LOCAL_CFLAGS += \
|
||||
-DPACKAGE_VERSION=\"$(MESA_VERSION)\" \
|
||||
-DPACKAGE_VERSION=\"9.2.5\" \
|
||||
-DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\" \
|
||||
-DANDROID_VERSION=0x0$(MESA_ANDROID_MAJOR_VERSION)0$(MESA_ANDROID_MINOR_VERSION)
|
||||
|
||||
|
@@ -24,7 +24,7 @@
|
||||
# BOARD_GPU_DRIVERS should be defined. The valid values are
|
||||
#
|
||||
# classic drivers: i915 i965
|
||||
# gallium drivers: swrast freedreno i915g ilo nouveau r300g r600g radeonsi vmwgfx
|
||||
# gallium drivers: swrast i915g ilo nouveau r300g r600g radeonsi vmwgfx
|
||||
#
|
||||
# The main target is libGLES_mesa. For each classic driver enabled, a DRI
|
||||
# module will also be built. DRI modules will be loaded by libGLES_mesa.
|
||||
@@ -42,7 +42,7 @@ DRM_TOP := external/drm
|
||||
DRM_GRALLOC_TOP := hardware/drm_gralloc
|
||||
|
||||
classic_drivers := i915 i965
|
||||
gallium_drivers := swrast freedreno i915g ilo nouveau r300g r600g radeonsi vmwgfx
|
||||
gallium_drivers := swrast i915g ilo nouveau r300g r600g radeonsi vmwgfx
|
||||
|
||||
MESA_GPU_DRIVERS := $(strip $(BOARD_GPU_DRIVERS))
|
||||
|
||||
@@ -78,7 +78,6 @@ endif
|
||||
ifneq ($(strip $(MESA_GPU_DRIVERS)),)
|
||||
|
||||
SUBDIRS := \
|
||||
src/loader \
|
||||
src/mapi \
|
||||
src/glsl \
|
||||
src/mesa \
|
||||
|
19
Makefile.am
19
Makefile.am
@@ -26,6 +26,12 @@ ACLOCAL_AMFLAGS = -I m4
|
||||
doxygen:
|
||||
cd doxygen && $(MAKE)
|
||||
|
||||
check-local:
|
||||
$(MAKE) -C src/mapi/glapi/tests check
|
||||
$(MAKE) -C src/mapi/shared-glapi/tests check
|
||||
$(MAKE) -C src/mesa/main/tests check
|
||||
$(MAKE) -C src/glx/tests check
|
||||
|
||||
.PHONY: doxygen
|
||||
|
||||
# Rules for making release tarballs
|
||||
@@ -44,8 +50,8 @@ EXTRA_FILES = \
|
||||
bin/install-sh \
|
||||
bin/ltmain.sh \
|
||||
bin/missing \
|
||||
bin/test-driver \
|
||||
bin/ylwrap \
|
||||
bin/test-driver \
|
||||
src/glsl/glsl_parser.cpp \
|
||||
src/glsl/glsl_parser.h \
|
||||
src/glsl/glsl_lexer.cpp \
|
||||
@@ -64,13 +70,14 @@ IGNORE_FILES = \
|
||||
|
||||
parsers: configure
|
||||
$(MAKE) -C src/glsl glsl_parser.cpp glsl_parser.h glsl_lexer.cpp glcpp/glcpp-lex.c glcpp/glcpp-parse.c glcpp/glcpp-parse.h
|
||||
$(MAKE) -C src/mesa/program lex.yy.c program_parse.tab.c program_parse.tab.h
|
||||
|
||||
# Everything for new a Mesa release:
|
||||
ARCHIVES = $(PACKAGE_NAME).tar.gz \
|
||||
$(PACKAGE_NAME).tar.bz2 \
|
||||
$(PACKAGE_NAME).zip
|
||||
|
||||
tarballs: checksums
|
||||
tarballs: md5
|
||||
rm -f ../$(PACKAGE_DIR) $(PACKAGE_NAME).tar
|
||||
|
||||
manifest.txt: .git
|
||||
@@ -97,9 +104,9 @@ $(PACKAGE_NAME).zip: parsers ../$(PACKAGE_DIR) manifest.txt
|
||||
zip -q -@ $(PACKAGE_NAME).zip < $(PACKAGE_DIR)/manifest.txt ; \
|
||||
mv $(PACKAGE_NAME).zip $(PACKAGE_DIR)
|
||||
|
||||
checksums: $(ARCHIVES)
|
||||
@-sha256sum $(PACKAGE_NAME).tar.gz
|
||||
@-sha256sum $(PACKAGE_NAME).tar.bz2
|
||||
@-sha256sum $(PACKAGE_NAME).zip
|
||||
md5: $(ARCHIVES)
|
||||
@-md5sum $(PACKAGE_NAME).tar.gz
|
||||
@-md5sum $(PACKAGE_NAME).tar.bz2
|
||||
@-md5sum $(PACKAGE_NAME).zip
|
||||
|
||||
.PHONY: tarballs md5
|
||||
|
17
SConstruct
17
SConstruct
@@ -59,13 +59,18 @@ else:
|
||||
|
||||
Help(opts.GenerateHelpText(env))
|
||||
|
||||
# fail early for a common error on windows
|
||||
if env['gles']:
|
||||
try:
|
||||
import libxml2
|
||||
except ImportError:
|
||||
raise SCons.Errors.UserError, "GLES requires libxml2-python to build"
|
||||
|
||||
#######################################################################
|
||||
# Environment setup
|
||||
|
||||
with open("VERSION") as f:
|
||||
mesa_version = f.read().strip()
|
||||
env.Append(CPPDEFINES = [
|
||||
('PACKAGE_VERSION', '\\"%s\\"' % mesa_version),
|
||||
('PACKAGE_VERSION', '\\"9.2.5\\"'),
|
||||
('PACKAGE_BUGREPORT', '\\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\\"'),
|
||||
])
|
||||
|
||||
@@ -80,6 +85,9 @@ env.Append(CPPPATH = [
|
||||
'#/src/gallium/winsys',
|
||||
])
|
||||
|
||||
if env['msvc']:
|
||||
env.Append(CPPPATH = ['#include/c99'])
|
||||
|
||||
# for debugging
|
||||
#print env.Dump()
|
||||
|
||||
@@ -112,6 +120,9 @@ if env['crosscompile'] and not env['embedded']:
|
||||
host_env['hostonly'] = True
|
||||
assert host_env['crosscompile'] == False
|
||||
|
||||
if host_env['msvc']:
|
||||
host_env.Append(CPPPATH = ['#include/c99'])
|
||||
|
||||
target_env = env
|
||||
env = host_env
|
||||
Export('env')
|
||||
|
@@ -1,30 +1,17 @@
|
||||
# The first is the change, and the second is the revert of that change.
|
||||
e6967270c75a5b669152127bb7a746d55f4407a6 i965: Fix depth (array slices) computation for 1D_ARRAY render targets.
|
||||
155f98d49fdc2f46c760f8214327b3804ee60079 Revert "i965: Fix depth (array slices) computation for 1D_ARRAY render targets."
|
||||
# Already cherry picked without -x
|
||||
d8ac987f6ab228df1a478b36c3d889992754374f glsl: Disallow uniform block layout qualifiers on non-uniform block vars.
|
||||
|
||||
# This patch didn't have enough in the commit message to convince me it
|
||||
# is a bug fix, (email sent to author asking for more information).
|
||||
41d759d076737f94976f5294b734dbc437a12bae
|
||||
# The bug fixed by this patch does not exist in 9.2. Discussed with Marek and
|
||||
# Brian Paul on the mesa-stable mailing list.
|
||||
89a665eb5fa176f68223bf54a472d6a0567c3546 draw: fix segfaults with aaline and aapoint stages disabled
|
||||
|
||||
# These patch were already cherry-picked before the 10.2.4 release.
|
||||
#
|
||||
# But get-pick-list.sh doesn't realize that because the commit messages for
|
||||
# these on the stable branch reference commit IDs that don't actually appear
|
||||
# on master. I'm not sure what happened, (perhaps master was force-pushed at
|
||||
# some point?).
|
||||
2eaf3f670fea4ce4466340141244e41a45542c13
|
||||
e5adc560cc8544200faa3e04504202839626ab37
|
||||
cf1b5eee7f36af29d1d5caba3538ad4985e51f81
|
||||
# Previously cherry picked (patch originally appeared twice on master with a
|
||||
# revert in between)
|
||||
4e5eb8ba25054ede4798fa424e6f32b23aba0f98 i965/vec4: Only zero out unused message components when there are any.
|
||||
|
||||
# The patch depends on earlier ones that are not part of 10.2.
|
||||
b3121bfd413973f460e2cc9a9f852bdfa1265fcf mesa: guard better when building with sse4.1 optimisations
|
||||
# Backported as 7ab2b8c4c4607817c91946dcba943b29f1bd1895 but without "cherry
|
||||
# picked from" in commit message
|
||||
360a141f24a9d00891665b7fedb77ffb116944ca wayland: Don't rely on static variable for identifying wl_drm buffers
|
||||
|
||||
# The PIPE_CAP is not in mesa 10.2 - breaks the build.
|
||||
72969e0efb7a5a011629c1001e81aa2329ede6b1 radeon/compute: Report a value for PIPE_SHADER_CAP_MAX_CONST_BUFFER_SIZE
|
||||
|
||||
# No whitespace fixes for the stable branches.
|
||||
38fccc37c1fa57c1fd373e8d71621bb4aed31083 radeonsi/compute: Whitespace fixes
|
||||
|
||||
# The commit relies of patches restructuring r600_resource, which never made
|
||||
# it in the 10.2 branch.
|
||||
a15088338ebe544efd90bfa7934cb99521488141 radeonsi/compute: Stop leaking the input buffer
|
||||
# Code being fixed is not present in 9.2
|
||||
f278d49c4bcfedbda10cb224cb251e3755e88288 i965: Do not set bilinear_filter flag in case of multisample blits
|
||||
|
@@ -14,7 +14,7 @@ git log --reverse --grep="cherry picked from commit" origin/master..HEAD |\
|
||||
sed -e 's/^[[:space:]]*(cherry picked from commit[[:space:]]*//' -e 's/)//' > already_picked
|
||||
|
||||
# Grep for commits that were marked as a candidate for the stable tree.
|
||||
git log --reverse --pretty=%H -i --grep='^\([[:space:]]*NOTE: .*[Cc]andidate\|CC:.*10\.2.*mesa-stable\)' HEAD..origin/master |\
|
||||
git log --reverse --pretty=%H -i --grep='^\([[:space:]]*NOTE: .*[Cc]andidate.*9\.2\|CC:.*9\.2.*mesa-stable\)' HEAD..origin/master |\
|
||||
while read sha
|
||||
do
|
||||
# Check to see whether the patch is on the ignore list.
|
||||
|
@@ -91,7 +91,6 @@ def AddOptions(opts):
|
||||
opts.Add(EnumOption('platform', 'target platform', host_platform,
|
||||
allowed_values=('cygwin', 'darwin', 'freebsd', 'haiku', 'linux', 'sunos', 'windows')))
|
||||
opts.Add(BoolOption('embedded', 'embedded build', 'no'))
|
||||
opts.Add(BoolOption('analyze', 'enable static code analysis where available', 'no'))
|
||||
opts.Add('toolchain', 'compiler toolchain', default_toolchain)
|
||||
opts.Add(BoolOption('gles', 'EXPERIMENTAL: enable OpenGL ES support', 'no'))
|
||||
opts.Add(BoolOption('llvm', 'use LLVM', default_llvm))
|
||||
@@ -101,4 +100,4 @@ def AddOptions(opts):
|
||||
opts.Add(BoolOption('quiet', 'DEPRECATED: profile build', 'yes'))
|
||||
opts.Add(BoolOption('texture_float', 'enable floating-point textures and renderbuffers', 'no'))
|
||||
if host_platform == 'windows':
|
||||
opts.Add('MSVC_VERSION', 'Microsoft Visual C/C++ version')
|
||||
opts.Add(EnumOption('MSVC_VERSION', 'MS Visual C++ version', None, allowed_values=('7.1', '8.0', '9.0', '10.0', '11.0')))
|
||||
|
951
configure.ac
951
configure.ac
File diff suppressed because it is too large
Load Diff
272
docs/GL3.txt
272
docs/GL3.txt
@@ -7,189 +7,153 @@ infrastructure is complete but it may be the case that few (if any) drivers
|
||||
implement the features.
|
||||
|
||||
|
||||
OpenGL Core and Compatibility context support
|
||||
|
||||
OpenGL 3.1 and later versions are only supported with the Core profile.
|
||||
There are no plans to support GL_ARB_compatibility. The last supported OpenGL
|
||||
version with all deprecated features is 3.0. Some of the later GL features
|
||||
are exposed in the 3.0 context as extensions.
|
||||
|
||||
|
||||
Feature Status
|
||||
----------------------------------------------------- ------------------------
|
||||
|
||||
GL 3.0 --- all DONE: i965, nv50, nvc0, r600, radeonsi
|
||||
GL 3.0:
|
||||
|
||||
GLSL 1.30 DONE ()
|
||||
glBindFragDataLocation, glGetFragDataLocation DONE
|
||||
Conditional rendering (GL_NV_conditional_render) DONE (r300, swrast)
|
||||
Map buffer subranges (GL_ARB_map_buffer_range) DONE (r300, swrast)
|
||||
Clamping controls (GL_ARB_color_buffer_float) DONE (r300)
|
||||
Float textures, renderbuffers (GL_ARB_texture_float) DONE (r300)
|
||||
GL_EXT_packed_float DONE ()
|
||||
GL_EXT_texture_shared_exponent DONE (swrast)
|
||||
Float depth buffers (GL_ARB_depth_buffer_float) DONE ()
|
||||
Framebuffer objects (GL_ARB_framebuffer_object) DONE (r300, swrast)
|
||||
GL_ARB_half_float_pixel DONE (all drivers)
|
||||
GL_ARB_half_float_vertex DONE (r300, swrast)
|
||||
GL_EXT_texture_integer DONE ()
|
||||
GL_EXT_texture_array DONE ()
|
||||
Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE (swrast)
|
||||
GL_EXT_texture_compression_rgtc DONE (r300, swrast)
|
||||
GL_ARB_texture_rg DONE (r300, swrast)
|
||||
Transform feedback (GL_EXT_transform_feedback) DONE ()
|
||||
Vertex array objects (GL_ARB_vertex_array_object) DONE (all drivers)
|
||||
sRGB framebuffer format (GL_EXT_framebuffer_sRGB) DONE ()
|
||||
glClearBuffer commands DONE
|
||||
glGetStringi command DONE
|
||||
glTexParameterI, glGetTexParameterI commands DONE
|
||||
glVertexAttribI commands DONE
|
||||
Depth format cube textures DONE ()
|
||||
GLX_ARB_create_context (GLX 1.4 is required) DONE
|
||||
Multisample anti-aliasing DONE (r300)
|
||||
GLSL 1.30 DONE
|
||||
glBindFragDataLocation, glGetFragDataLocation DONE
|
||||
Conditional rendering (GL_NV_conditional_render) DONE (i965, r300, r600, swrast)
|
||||
Map buffer subranges (GL_ARB_map_buffer_range) DONE (i965, r300, r600, swrast)
|
||||
Clamping controls (GL_ARB_color_buffer_float) DONE (i965, r300, r600)
|
||||
Float textures, renderbuffers (GL_ARB_texture_float) DONE (i965, r300, r600)
|
||||
GL_EXT_packed_float DONE (i965, r600)
|
||||
GL_EXT_texture_shared_exponent DONE (i965, r600, swrast)
|
||||
Float depth buffers (GL_ARB_depth_buffer_float) DONE (i965, r600)
|
||||
Framebuffer objects (GL_ARB_framebuffer_object) DONE (i965, r300, r600, swrast)
|
||||
Half-float DONE
|
||||
Non-normalized Integer texture/framebuffer formats DONE (i965, r600)
|
||||
1D/2D Texture arrays DONE
|
||||
Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE (i965, r600, swrast)
|
||||
GL_EXT_texture_compression_rgtc DONE (i965, r300, r600, swrast)
|
||||
Red and red/green texture formats DONE (i965, swrast, gallium)
|
||||
Transform feedback (GL_EXT_transform_feedback) DONE (i965, r600)
|
||||
Vertex array objects (GL_APPLE_vertex_array_object) DONE (i965, r300, r600, swrast)
|
||||
sRGB framebuffer format (GL_EXT_framebuffer_sRGB) DONE (i965, r600)
|
||||
glClearBuffer commands DONE
|
||||
glGetStringi command DONE
|
||||
glTexParameterI, glGetTexParameterI commands DONE
|
||||
glVertexAttribI commands DONE
|
||||
Depth format cube textures DONE
|
||||
GLX_ARB_create_context (GLX 1.4 is required) DONE
|
||||
|
||||
|
||||
GL 3.1 --- all DONE: i965, nv50, nvc0, r600, radeonsi
|
||||
GL 3.1:
|
||||
|
||||
GLSL 1.40 DONE ()
|
||||
Forward compatible context support/deprecations DONE ()
|
||||
Instanced drawing (GL_ARB_draw_instanced) DONE (swrast)
|
||||
Buffer copying (GL_ARB_copy_buffer) DONE (r300, swrast)
|
||||
Primitive restart (GL_NV_primitive_restart) DONE (r300)
|
||||
16 vertex texture image units DONE ()
|
||||
Texture buffer objs (GL_ARB_texture_buffer_object) DONE for OpenGL 3.1 contexts ()
|
||||
Rectangular textures (GL_ARB_texture_rectangle) DONE (r300, swrast)
|
||||
Uniform buffer objs (GL_ARB_uniform_buffer_object) DONE (swrast)
|
||||
Signed normalized textures (GL_EXT_texture_snorm) DONE (r300)
|
||||
GLSL 1.40 DONE (i965, r600)
|
||||
Forward compatibile context support/deprecations DONE (i965, r600)
|
||||
Instanced drawing (GL_ARB_draw_instanced) DONE (i965, gallium, swrast)
|
||||
Buffer copying (GL_ARB_copy_buffer) DONE (i965, r300, r600, swrast)
|
||||
Primitive restart (GL_NV_primitive_restart) DONE (i965, r600)
|
||||
16 vertex texture image units DONE
|
||||
Texture buffer objs (GL_ARB_texture_buffer_object) DONE for OpenGL 3.1 contexts (i965, r600)
|
||||
Rectangular textures (GL_ARB_texture_rectangle) DONE (i965, r300, r600, swrast)
|
||||
Uniform buffer objs (GL_ARB_uniform_buffer_object) DONE (i965, r600, swrast)
|
||||
Signed normalized textures (GL_EXT_texture_snorm) DONE (i965, r300, r600)
|
||||
|
||||
|
||||
GL 3.2 --- all DONE: i965, nv50, nvc0, r600, radeonsi
|
||||
GL 3.2:
|
||||
|
||||
Core/compatibility profiles DONE
|
||||
GLSL 1.50 DONE ()
|
||||
Geometry shaders DONE ()
|
||||
BGRA vertex order (GL_ARB_vertex_array_bgra) DONE (r300, swrast)
|
||||
Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE (r300, swrast)
|
||||
Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (r300, swrast)
|
||||
Provoking vertex (GL_ARB_provoking_vertex) DONE (r300, swrast)
|
||||
Seamless cubemaps (GL_ARB_seamless_cube_map) DONE ()
|
||||
Multisample textures (GL_ARB_texture_multisample) DONE ()
|
||||
Frag depth clamp (GL_ARB_depth_clamp) DONE (swrast)
|
||||
Fence objects (GL_ARB_sync) DONE (r300, swrast)
|
||||
GLX_ARB_create_context_profile DONE
|
||||
Core/compatibility profiles DONE
|
||||
GLSL 1.50 in progress
|
||||
Geometry shaders (GL_ARB_geometry_shader4) partially done
|
||||
BGRA vertex order (GL_ARB_vertex_array_bgra) DONE (i965, r300, r600, swrast)
|
||||
Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE (i965, r300, r600, swrast)
|
||||
Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (i965, r300, r600, swrast)
|
||||
Provoking vertex (GL_ARB_provoking_vertex) DONE (i965, r300, r600, swrast)
|
||||
Seamless cubemaps (GL_ARB_seamless_cube_map) DONE (i965, r600)
|
||||
Multisample textures (GL_ARB_texture_multisample) DONE (i965)
|
||||
Frag depth clamp (GL_ARB_depth_clamp) DONE (i965, r600, swrast)
|
||||
Fence objects (GL_ARB_sync) DONE (i965, r300, r600, swrast)
|
||||
GLX_ARB_create_context_profile DONE
|
||||
|
||||
|
||||
GL 3.3 --- all DONE: i965, nv50, nvc0, r600, radeonsi
|
||||
GL 3.3:
|
||||
|
||||
GLSL 3.30 DONE ()
|
||||
GL_ARB_blend_func_extended DONE (softpipe)
|
||||
GL_ARB_explicit_attrib_location DONE (all drivers that support GLSL)
|
||||
GL_ARB_occlusion_query2 DONE (r300, swrast)
|
||||
GL_ARB_sampler_objects DONE (all drivers)
|
||||
GL_ARB_shader_bit_encoding DONE ()
|
||||
GL_ARB_texture_rgb10_a2ui DONE ()
|
||||
GL_ARB_texture_swizzle DONE (r300, swrast)
|
||||
GL_ARB_timer_query DONE ()
|
||||
GL_ARB_instanced_arrays DONE (r300)
|
||||
GL_ARB_vertex_type_2_10_10_10_rev DONE ()
|
||||
GLSL 3.30 new features in this version pretty much done
|
||||
GL_ARB_blend_func_extended DONE (i965, r600, softpipe)
|
||||
GL_ARB_explicit_attrib_location DONE (i915, i965, r300, r600, swrast)
|
||||
GL_ARB_occlusion_query2 DONE (i965, r300, r600, swrast)
|
||||
GL_ARB_sampler_objects DONE (i965, r300, r600)
|
||||
GL_ARB_shader_bit_encoding DONE
|
||||
GL_ARB_texture_rgb10_a2ui DONE (i965, r600)
|
||||
GL_ARB_texture_swizzle DONE (same as EXT version) (i965, r300, r600, swrast)
|
||||
GL_ARB_timer_query DONE (i965, r600)
|
||||
GL_ARB_instanced_arrays DONE (i965, r300, r600)
|
||||
GL_ARB_vertex_type_2_10_10_10_rev DONE (i965, r600)
|
||||
|
||||
|
||||
GL 4.0:
|
||||
|
||||
GLSL 4.0 not started
|
||||
GL_ARB_texture_query_lod DONE (i965, nv50, nvc0)
|
||||
GL_ARB_draw_buffers_blend DONE (i965, nv50, nvc0, r600, radeonsi, softpipe)
|
||||
GL_ARB_draw_indirect DONE (i965)
|
||||
GL_ARB_gpu_shader5 started
|
||||
- 'precise' qualifier not started
|
||||
- Dynamically uniform sampler array indices not started
|
||||
- Dynamically uniform UBO array indices not started
|
||||
- Implicit signed -> unsigned conversions not started
|
||||
- Fused multiply-add DONE
|
||||
- Packing/bitfield/conversion functions DONE
|
||||
- Enhanced textureGather DONE
|
||||
- Geometry shader instancing DONE
|
||||
- Geometry shader multiple streams not started
|
||||
- Enhanced per-sample shading DONE
|
||||
- Interpolation functions started
|
||||
- New overload resolution rules not started
|
||||
GL_ARB_gpu_shader_fp64 not started
|
||||
GL_ARB_sample_shading DONE (i965, nv50, nvc0)
|
||||
GL_ARB_shader_subroutine not started
|
||||
GL_ARB_tessellation_shader not started
|
||||
GL_ARB_texture_buffer_object_rgb32 DONE (i965, nvc0, r600, radeonsi, softpipe)
|
||||
GL_ARB_texture_cube_map_array DONE (i965, nv50, nvc0, r600, softpipe)
|
||||
GL_ARB_texture_gather DONE (i965, nv50, nvc0)
|
||||
GL_ARB_transform_feedback2 DONE (i965, nv50, nvc0, r600, radeonsi)
|
||||
GL_ARB_transform_feedback3 DONE (i965, nv50, nvc0, r600, radeonsi)
|
||||
GLSL 4.0 not started
|
||||
GL_ARB_texture_query_lod DONE (i965)
|
||||
GL_ARB_draw_buffers_blend DONE (i965, r600, softpipe)
|
||||
GL_ARB_draw_indirect started (Christoph)
|
||||
GL_ARB_gpu_shader5 started
|
||||
GL_ARB_gpu_shader_fp64 not started
|
||||
GL_ARB_sample_shading not started
|
||||
GL_ARB_shader_subroutine not started
|
||||
GL_ARB_tessellation_shader not started
|
||||
GL_ARB_texture_buffer_object_rgb32 DONE (i965, softpipe)
|
||||
GL_ARB_texture_cube_map_array DONE (i965, softpipe)
|
||||
GL_ARB_texture_gather started (Maxence, Chris)
|
||||
GL_ARB_transform_feedback2 DONE
|
||||
GL_ARB_transform_feedback3 DONE
|
||||
|
||||
|
||||
GL 4.1:
|
||||
|
||||
GLSL 4.1 not started
|
||||
GL_ARB_ES2_compatibility DONE (i965, nv50, nvc0, r300, r600, radeonsi)
|
||||
GL_ARB_get_program_binary DONE (0 binary formats)
|
||||
GL_ARB_separate_shader_objects DONE (all drivers)
|
||||
GL_ARB_shader_precision not started
|
||||
GL_ARB_vertex_attrib_64bit not started
|
||||
GL_ARB_viewport_array DONE (i965, nv50, r600)
|
||||
GLSL 4.1 not started
|
||||
GL_ARB_ES2_compatibility DONE (i965, r300, r600)
|
||||
GL_ARB_get_program_binary DONE (0 binary formats)
|
||||
GL_ARB_separate_shader_objects some infrastructure done
|
||||
GL_ARB_shader_precision not started
|
||||
GL_ARB_vertex_attrib_64bit not started
|
||||
GL_ARB_viewport_array not started
|
||||
|
||||
|
||||
GL 4.2:
|
||||
|
||||
GLSL 4.2 not started
|
||||
GL_ARB_texture_compression_bptc not started
|
||||
GL_ARB_compressed_texture_pixel_storage not started
|
||||
GL_ARB_shader_atomic_counters DONE (i965)
|
||||
GL_ARB_texture_storage DONE (all drivers)
|
||||
GL_ARB_transform_feedback_instanced DONE (i965, nv50, nvc0, r600, radeonsi)
|
||||
GL_ARB_base_instance DONE (i965, nv50, nvc0, r600, radeonsi)
|
||||
GL_ARB_shader_image_load_store in progress (curro)
|
||||
GL_ARB_conservative_depth DONE (all drivers that support GLSL 1.30)
|
||||
GL_ARB_shading_language_420pack DONE (all drivers that support GLSL 1.30)
|
||||
GL_ARB_internalformat_query DONE (i965, nv50, nvc0, r300, r600, radeonsi)
|
||||
GL_ARB_map_buffer_alignment DONE (all drivers)
|
||||
GLSL 4.2 not started
|
||||
GL_ARB_texture_compression_bptc not started
|
||||
GL_ARB_compressed_texture_pixel_storage not started
|
||||
GL_ARB_shader_atomic_counters not started
|
||||
GL_ARB_texture_storage DONE (i965, r300, r600, swrast, gallium)
|
||||
GL_ARB_transform_feedback_instanced DONE
|
||||
GL_ARB_base_instance DONE (i965, nv50, nvc0, r600, radeonsi)
|
||||
GL_ARB_shader_image_load_store not started
|
||||
GL_ARB_conservative_depth DONE (softpipe)
|
||||
GL_ARB_shading_language_420pack started (Todd)
|
||||
GL_ARB_internalformat_query DONE (i965, gallium)
|
||||
GL_ARB_map_buffer_alignment DONE (r300, r600, radeonsi)
|
||||
|
||||
|
||||
GL 4.3:
|
||||
|
||||
GLSL 4.3 not started
|
||||
GL_ARB_arrays_of_arrays started
|
||||
GL_ARB_ES3_compatibility DONE (i965)
|
||||
GL_ARB_clear_buffer_object DONE (all drivers)
|
||||
GL_ARB_compute_shader started (Paul Berry)
|
||||
GL_ARB_copy_image not started
|
||||
GL_KHR_debug DONE (all drivers)
|
||||
GL_ARB_explicit_uniform_location not started
|
||||
GL_ARB_fragment_layer_viewport not started
|
||||
GL_ARB_framebuffer_no_attachments not started
|
||||
GL_ARB_internalformat_query2 not started
|
||||
GL_ARB_invalidate_subdata DONE (all drivers)
|
||||
GL_ARB_multi_draw_indirect DONE (i965)
|
||||
GL_ARB_program_interface_query not started
|
||||
GL_ARB_robust_buffer_access_behavior not started
|
||||
GL_ARB_shader_image_size not started
|
||||
GL_ARB_shader_storage_buffer_object not started
|
||||
GL_ARB_stencil_texturing DONE (i965/gen8+)
|
||||
GL_ARB_texture_buffer_range DONE (nv50, nvc0, i965, r600, radeonsi)
|
||||
GL_ARB_texture_query_levels DONE (i965)
|
||||
GL_ARB_texture_storage_multisample DONE (all drivers that support GL_ARB_texture_multisample)
|
||||
GL_ARB_texture_view DONE (i965)
|
||||
GL_ARB_vertex_attrib_binding DONE (all drivers)
|
||||
|
||||
|
||||
GL 4.4:
|
||||
|
||||
GLSL 4.4 not started
|
||||
GL_MAX_VERTEX_ATTRIB_STRIDE not started
|
||||
GL_ARB_buffer_storage DONE (i965, nv30, nv50, nvc0, r300, r600, radeonsi)
|
||||
GL_ARB_clear_texture not started
|
||||
GL_ARB_enhanced_layouts not started
|
||||
GL_ARB_multi_bind DONE (all drivers)
|
||||
GL_ARB_query_buffer_object not started
|
||||
GL_ARB_texture_mirror_clamp_to_edge DONE (i965, nv30, nv50, nvc0, r300, r600, radeonsi, swrast)
|
||||
GL_ARB_texture_stencil8 not started
|
||||
GL_ARB_vertex_type_10f_11f_11f_rev DONE (i965, nv50, nvc0, r600, radeonsi)
|
||||
GLSL 4.3 not started
|
||||
ARB_arrays_of_arrays not started
|
||||
ARB_ES3_compatibility DONE (i965)
|
||||
ARB_clear_buffer_object not started
|
||||
ARB_compute_shader started (gallium)
|
||||
ARB_copy_image not started
|
||||
KHR_debug some work done (ARB_debug_output)
|
||||
ARB_explicit_uniform_location not started
|
||||
ARB_fragment_layer_viewport not started
|
||||
ARB_framebuffer_no_attachments not started
|
||||
ARB_internalformat_query2 not started
|
||||
ARB_invalidate_subdata not started
|
||||
ARB_multi_draw_indirect not started
|
||||
ARB_program_interface_query not started
|
||||
ARB_robust_buffer_access_behavior not started
|
||||
ARB_shader_image_size not started
|
||||
ARB_shader_storage_buffer_object not started
|
||||
ARB_stencil_texturing not started
|
||||
ARB_texture_buffer_range DONE (nv50, nvc0)
|
||||
ARB_texture_query_levels not started
|
||||
ARB_texture_storage_multisample DONE (i965)
|
||||
ARB_texture_view not started
|
||||
ARB_vertex_attrib_binding not started
|
||||
|
||||
|
||||
More info about these features and the work involved can be found at
|
||||
|
256
docs/README.CYGWIN
Normal file
256
docs/README.CYGWIN
Normal file
@@ -0,0 +1,256 @@
|
||||
|
||||
Mesa Cygwin/X11 Information
|
||||
|
||||
|
||||
WARNING
|
||||
=======
|
||||
|
||||
If you installed X11 (packages xorg-x11-devel and xorg-x11-bin-dlls ) with the
|
||||
latest setup.exe from Cygwin the GL (Mesa) libraries and include are already
|
||||
installed in /usr/X11R6.
|
||||
|
||||
The following will explain how to "replace" them.
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
How to compile Mesa on Cygwin/X11 systems:
|
||||
|
||||
1. Shared libs:
|
||||
type 'make cygwin-sl'.
|
||||
|
||||
When finished, the Mesa DLL will be in the Mesa-x.y/lib/ and
|
||||
Mesa-x.y/bin directories.
|
||||
|
||||
|
||||
2. Static libs:
|
||||
type 'make cygwin-static'.
|
||||
When finished, the Mesa libraries will be in the Mesa-x.y/lib/ directory.
|
||||
|
||||
Header and library files:
|
||||
After you've compiled Mesa and tried the demos I recommend the following
|
||||
procedure for "installing" Mesa.
|
||||
|
||||
Copy the Mesa include/GL directory to /usr/X11R6/include:
|
||||
cp -a include/GL /usr/X11R6/include
|
||||
|
||||
Copy the Mesa library files to /usr/X11R6/lib:
|
||||
cp -a lib/* /usr/X11R6ocal/lib
|
||||
|
||||
Copy the Mesa bin files (used by the DLL stuff) to /usr/X11R6/bin:
|
||||
cp -a lib/cyg* /usr/X11R6/bin
|
||||
|
||||
Xt/Motif widgets:
|
||||
If you want to use Mesa or OpenGL in your Xt/Motif program you can build
|
||||
the widgets found in either the widgets-mesa or widgets-sgi directories.
|
||||
The former were written for Mesa and the later are the original SGI
|
||||
widgets. Look in those directories for more information.
|
||||
For the Motif widgets you must have downloaded the lesstif package.
|
||||
|
||||
|
||||
Using the library
|
||||
=================
|
||||
|
||||
Configuration options:
|
||||
The file src/mesa/main/config.h has many parameters which you can adjust
|
||||
such as maximum number of lights, clipping planes, maximum texture size,
|
||||
etc. In particular, you may want to change DEPTH_BITS from 16 to 32
|
||||
if a 16-bit depth buffer isn't precise enough for your application.
|
||||
|
||||
|
||||
Shared libraries:
|
||||
If you compile shared libraries (Win32 DLLS) you may have to set an
|
||||
environment variable to specify where the Mesa libraries are located.
|
||||
Set the PATH variable to include /your-dir/Mesa-2.6/bin.
|
||||
Otherwise, when you try to run a demo it may fail with a message saying
|
||||
that one or more DLL couldn't be found.
|
||||
|
||||
|
||||
Xt/Motif Widgets:
|
||||
Two versions of the Xt/Motif OpenGL drawing area widgets are included:
|
||||
|
||||
widgets-sgi/ SGI's stock widgets
|
||||
widgets-mesa/ Mesa-tuned widgets
|
||||
|
||||
Look in those directories for details
|
||||
|
||||
|
||||
Togl:
|
||||
Togl is an OpenGL/Mesa widget for Tcl/Tk.
|
||||
See http://togl.sourceforge.net for more information.
|
||||
|
||||
|
||||
|
||||
X Display Modes:
|
||||
Mesa supports RGB(A) rendering into almost any X visual type and depth.
|
||||
|
||||
The glXChooseVisual function tries its best to pick an appropriate visual
|
||||
for the given attribute list. However, if this doesn't suit your needs
|
||||
you can force Mesa to use any X visual you want (any supported by your
|
||||
X server that is) by setting the MESA_RGB_VISUAL and MESA_CI_VISUAL
|
||||
environment variables. When an RGB visual is requested, glXChooseVisual
|
||||
will first look if the MESA_RGB_VISUAL variable is defined. If so, it
|
||||
will try to use the specified visual. Similarly, when a color index
|
||||
visual is requested, glXChooseVisual will look for the MESA_CI_VISUAL
|
||||
variable.
|
||||
|
||||
The format of accepted values is: <visual-class> <depth>
|
||||
Here are some examples:
|
||||
|
||||
using the C-shell:
|
||||
% setenv MESA_RGB_VISUAL "TrueColor 8" // 8-bit TrueColor
|
||||
% setenv MESA_CI_VISUAL "PseudoColor 12" // 12-bit PseudoColor
|
||||
% setenv MESA_RGB_VISUAL "PseudoColor 8" // 8-bit PseudoColor
|
||||
|
||||
using the KornShell:
|
||||
$ export MESA_RGB_VISUAL="TrueColor 8"
|
||||
$ export MESA_CI_VISUAL="PseudoColor 12"
|
||||
$ export MESA_RGB_VISUAL="PseudoColor 8"
|
||||
|
||||
|
||||
Double buffering:
|
||||
Mesa can use either an X Pixmap or XImage as the backbuffer when in
|
||||
double buffer mode. Using GLX, the default is to use an XImage. The
|
||||
MESA_BACK_BUFFER environment variable can override this. The valid
|
||||
values for MESA_BACK_BUFFER are: Pixmap and XImage (only the first
|
||||
letter is checked, case doesn't matter).
|
||||
|
||||
A pixmap is faster when drawing simple lines and polygons while an
|
||||
XImage is faster when Mesa has to do pixel-by-pixel rendering. If you
|
||||
need depth buffering the XImage will almost surely be faster. Exper-
|
||||
iment with the MESA_BACK_BUFFER variable to see which is faster for
|
||||
your application.
|
||||
|
||||
|
||||
Colormaps:
|
||||
When using Mesa directly or with GLX, it's up to the application writer
|
||||
to create a window with an appropriate colormap. The aux, tk, and GLUT
|
||||
toolkits try to minimize colormap "flashing" by sharing colormaps when
|
||||
possible. Specifically, if the visual and depth of the window matches
|
||||
that of the root window, the root window's colormap will be shared by
|
||||
the Mesa window. Otherwise, a new, private colormap will be allocated.
|
||||
|
||||
When sharing the root colormap, Mesa may be unable to allocate the colors
|
||||
it needs, resulting in poor color quality. This can happen when a
|
||||
large number of colorcells in the root colormap are already allocated.
|
||||
To prevent colormap sharing in aux, tk and GLUT, define the environment
|
||||
variable MESA_PRIVATE_CMAP. The value isn't significant.
|
||||
|
||||
|
||||
Gamma correction:
|
||||
To compensate for the nonlinear relationship between pixel values
|
||||
and displayed intensities, there is a gamma correction feature in
|
||||
Mesa. Some systems, such as Silicon Graphics, support gamma
|
||||
correction in hardware (man gamma) so you won't need to use Mesa's
|
||||
gamma facility. Other systems, however, may need gamma adjustment
|
||||
to produce images which look correct. If in the past you thought
|
||||
Mesa's images were too dim, read on.
|
||||
|
||||
Gamma correction is controlled with the MESA_GAMMA environment
|
||||
variable. Its value is of the form "Gr Gg Gb" or just "G" where
|
||||
Gr is the red gamma value, Gg is the green gamma value, Gb is the
|
||||
blue gamma value and G is one gamma value to use for all three
|
||||
channels. Each value is a positive real number typically in the
|
||||
range 1.0 to 2.5. The defaults are all 1.0, effectively disabling
|
||||
gamma correction. Examples using csh:
|
||||
|
||||
% setenv MESA_GAMMA "2.3 2.2 2.4" // separate R,G,B values
|
||||
% setenv MESA_GAMMA "2.0" // same gamma for R,G,B
|
||||
|
||||
The demos/gamma.c program may help you to determine reasonable gamma
|
||||
value for your display. With correct gamma values, the color intensities
|
||||
displayed in the top row (drawn by dithering) should nearly match those
|
||||
in the bottom row (drawn as grays).
|
||||
|
||||
Alex De Bruyn reports that gamma values of 1.6, 1.6 and 1.9 work well
|
||||
on HP displays using the HP-ColorRecovery technology.
|
||||
|
||||
Mesa implements gamma correction with a lookup table which translates
|
||||
a "linear" pixel value to a gamma-corrected pixel value. There is a
|
||||
small performance penalty. Gamma correction only works in RGB mode.
|
||||
Also be aware that pixel values read back from the frame buffer will
|
||||
not be "un-corrected" so glReadPixels may not return the same data
|
||||
drawn with glDrawPixels.
|
||||
|
||||
For more information about gamma correction see:
|
||||
http://www.inforamp.net/~poynton/notes/colour_and_gamma/GammaFAQ.html
|
||||
|
||||
|
||||
Overlay Planes
|
||||
|
||||
Overlay planes in the frame buffer are supported by Mesa but require
|
||||
hardware and X server support. To determine if your X server has
|
||||
overlay support you can test for the SERVER_OVERLAY_VISUALS property:
|
||||
|
||||
xprop -root | grep SERVER_OVERLAY_VISUALS
|
||||
|
||||
|
||||
HPCR glClear(GL_COLOR_BUFFER_BIT) dithering
|
||||
|
||||
If you set the MESA_HPCR_CLEAR environment variable then dithering
|
||||
will be used when clearing the color buffer. This is only applicable
|
||||
to HP systems with the HPCR (Color Recovery) system.
|
||||
|
||||
|
||||
Extensions
|
||||
==========
|
||||
There are three Mesa-specific GLX extensions at this time.
|
||||
|
||||
GLX_MESA_pixmap_colormap
|
||||
|
||||
This extension adds the GLX function:
|
||||
|
||||
GLXPixmap glXCreateGLXPixmapMESA( Display *dpy, XVisualInfo *visual,
|
||||
Pixmap pixmap, Colormap cmap )
|
||||
|
||||
It is an alternative to the standard glXCreateGLXPixmap() function.
|
||||
Since Mesa supports RGB rendering into any X visual, not just True-
|
||||
Color or DirectColor, Mesa needs colormap information to convert RGB
|
||||
values into pixel values. An X window carries this information but a
|
||||
pixmap does not. This function associates a colormap to a GLX pixmap.
|
||||
See the xdemos/glxpixmap.c file for an example of how to use this
|
||||
extension.
|
||||
|
||||
GLX_MESA_release_buffers
|
||||
|
||||
Mesa associates a set of ancillary (depth, accumulation, stencil and
|
||||
alpha) buffers with each X window it draws into. These ancillary
|
||||
buffers are allocated for each X window the first time the X window
|
||||
is passed to glXMakeCurrent(). Mesa, however, can't detect when an
|
||||
X window has been destroyed in order to free the ancillary buffers.
|
||||
|
||||
The best it can do is to check for recently destroyed windows whenever
|
||||
the client calls the glXCreateContext() or glXDestroyContext()
|
||||
functions. This may not be sufficient in all situations though.
|
||||
|
||||
The GLX_MESA_release_buffers extension allows a client to explicitly
|
||||
deallocate the ancillary buffers by calling glxReleaseBuffersMESA()
|
||||
just before an X window is destroyed. For example:
|
||||
|
||||
#ifdef GLX_MESA_release_buffers
|
||||
glXReleaseBuffersMESA( dpy, window );
|
||||
#endif
|
||||
XDestroyWindow( dpy, window );
|
||||
|
||||
This extension is new in Mesa 2.0.
|
||||
|
||||
GLX_MESA_copy_sub_buffer
|
||||
|
||||
This extension adds the glXCopySubBufferMESA() function. It works
|
||||
like glXSwapBuffers() but only copies a sub-region of the window
|
||||
instead of the whole window.
|
||||
|
||||
This extension is new in Mesa version 2.6
|
||||
|
||||
|
||||
|
||||
Summary of X-related environment variables:
|
||||
MESA_RGB_VISUAL - specifies the X visual and depth for RGB mode (X only)
|
||||
MESA_CI_VISUAL - specifies the X visual and depth for CI mode (X only)
|
||||
MESA_BACK_BUFFER - specifies how to implement the back color buffer (X only)
|
||||
MESA_PRIVATE_CMAP - force aux/tk libraries to use private colormaps (X only)
|
||||
MESA_GAMMA - gamma correction coefficients (X only)
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
README.CYGWIN - lassauge April 2004 - based on README.X11
|
102
docs/README.MITS
Normal file
102
docs/README.MITS
Normal file
@@ -0,0 +1,102 @@
|
||||
|
||||
Mesa 3.0 MITS Information
|
||||
|
||||
|
||||
This software is distributed under the terms of the GNU Library
|
||||
General Public License, see the LICENSE file for details.
|
||||
|
||||
|
||||
This document is a preliminary introduction to help you get
|
||||
started. For more detaile information consult the web page.
|
||||
|
||||
http://10-dencies.zkm.de/~mesa/
|
||||
|
||||
|
||||
|
||||
Version 0.1 (Yes it's very alpha code so be warned!)
|
||||
Contributors:
|
||||
Emil Briggs (briggs@bucky.physics.ncsu.edu)
|
||||
David Bucciarelli (tech.hmw@plus.it)
|
||||
Andreas Schiffler (schiffler@zkm.de)
|
||||
|
||||
|
||||
|
||||
1. Requirements:
|
||||
Mesa 3.0.
|
||||
An SMP capable machine running Linux 2.x
|
||||
libpthread installed on your machine.
|
||||
|
||||
|
||||
2. What does MITS stand for?
|
||||
MITS stands for Mesa Internal Threading System. By adding
|
||||
internal threading to Mesa it should be possible to improve
|
||||
performance of OpenGL applications on SMP machines.
|
||||
|
||||
|
||||
3. Do applications have to be recoded to take advantage of MITS?
|
||||
No. The threading is internal to Mesa and transparent to
|
||||
applications.
|
||||
|
||||
|
||||
4. Will all applications benefit from the current implementation of MITS?
|
||||
No. This implementation splits the processing of the vertex buffer
|
||||
over two threads. There is a certain amount of overhead involved
|
||||
with the thread synchronization and if there is not enough work
|
||||
to be done the extra overhead outweighs any speedup from using
|
||||
dual processors. You will not for example see any speedup when
|
||||
running Quake because it uses GL_POLYGON and there is only one
|
||||
polygon for each vertex buffer processed. Test results on a
|
||||
dual 200 Mhz. Pentium Pro system show that one needs around
|
||||
100-200 vertices in the vertex buffer before any there is any
|
||||
appreciable benefit from the threading.
|
||||
|
||||
|
||||
5. Are there any parameters that I can tune to try to improve performance.
|
||||
Yes. You can try to vary the size of the vertex buffer which is
|
||||
define in VB_MAX located in the file src/vb.h from your top level
|
||||
Mesa distribution. The number needs to be a multiple of 12 and
|
||||
the optimum value will probably depend on the capabilities of
|
||||
your machine and the particular application you are running.
|
||||
|
||||
|
||||
6. Are there any ways I can modify the application to improve its
|
||||
performance with the MITS?
|
||||
Yes. Try to use as many vertices between each Begin/End pair
|
||||
as possbile. This will reduce the thread synchronization
|
||||
overhead.
|
||||
|
||||
|
||||
7. What sort of speedups can I expect?
|
||||
On some benchmarks performance gains of up to 30% have been
|
||||
observerd. Others may see no gain at all and in a few rare
|
||||
cases even some degradation.
|
||||
|
||||
|
||||
8. What still needs to be done?
|
||||
Lots of testing and benchmarking.
|
||||
A portable implementation that works within the Mesa thread API.
|
||||
Threading of additional areas of Mesa to improve performance
|
||||
even more.
|
||||
|
||||
|
||||
|
||||
Installation:
|
||||
|
||||
1. This assumes that you already have a working Mesa 3.0 installation
|
||||
from source.
|
||||
2. Place the tarball MITS.tar.gz in your top level Mesa directory.
|
||||
3. Unzip it and untar it. It will replace the following files in
|
||||
your Mesa source tree so back them up if you want to save them.
|
||||
|
||||
|
||||
README.MITS
|
||||
Make-config
|
||||
Makefile
|
||||
mklib.glide
|
||||
src/vbxform.c
|
||||
src/vb.h
|
||||
|
||||
4. Rebuild Mesa using the command
|
||||
|
||||
make linux-386-glide-mits
|
||||
|
207
docs/README.QUAKE
Normal file
207
docs/README.QUAKE
Normal file
@@ -0,0 +1,207 @@
|
||||
|
||||
Info on using Mesa 3.0 with Linux Quake I and Quake II
|
||||
|
||||
|
||||
|
||||
Disclaimer
|
||||
----------
|
||||
|
||||
I am _not_ a Quake expert by any means. I pretty much only run it to
|
||||
test Mesa. There have been a lot of questions about Linux Quake and
|
||||
Mesa so I'm trying to provide some useful info here. If this file
|
||||
doesn't help you then you should look elsewhere for help. The Mesa
|
||||
mailing list or the news://news.3dfx.com/3dfx.linux.glide newsgroup
|
||||
might be good.
|
||||
|
||||
Again, all the information I have is in this file. Please don't email
|
||||
me with questions.
|
||||
|
||||
If you have information to contribute to this file please send it to
|
||||
me at brianp@elastic.avid.com
|
||||
|
||||
|
||||
|
||||
Linux Quake
|
||||
-----------
|
||||
|
||||
You can get Linux Quake from http://www.idsoftware.com/
|
||||
|
||||
Quake I and II for Linux were tested with, and include, Mesa 2.6. You
|
||||
shouldn't have too many problems if you simply follow the instructions
|
||||
in the Quake distribution.
|
||||
|
||||
|
||||
|
||||
RedHat 5.0 Linux problems
|
||||
-------------------------
|
||||
|
||||
RedHat Linux 5.x uses the GNU C library ("glibc" or "libc6") whereas
|
||||
previous RedHat and other Linux distributions use "libc5" for its
|
||||
runtime C library.
|
||||
|
||||
Linux Quake I and II were compiled for libc5. If you compile Mesa
|
||||
on a RedHat 5.x system the resulting libMesaGL.so file will not work
|
||||
with Linux Quake because of the different C runtime libraries.
|
||||
The symptom of this is a segmentation fault soon after starting Quake.
|
||||
|
||||
If you want to use a newer version of Mesa (like 3.x) with Quake on
|
||||
RedHat 5.x then read on.
|
||||
|
||||
The solution to the C library problem is to force Mesa to use libc5.
|
||||
libc5 is in /usr/i486-linux-libc5/lib on RedHat 5.x systems.
|
||||
|
||||
Emil Briggs (briggs@tick.physics.ncsu.edu) nicely gave me the following
|
||||
info:
|
||||
|
||||
> I only know what works on a RedHat 5.0 distribution. RH5 includes
|
||||
> a full set of libraries for both libc5 and glibc. The loader ld.so
|
||||
> uses the libc5 libraries in /usr/i486-linux-libc5/lib for programs
|
||||
> linked against libc5 while it uses the glibc libraries in /lib and
|
||||
> /usr/lib for programs linked against glibc.
|
||||
>
|
||||
> Anyway I changed line 41 of mklib.glide to
|
||||
> GLIDELIBS="-L/usr/local/glide/lib -lglide2x -L/usr/i486-linux-libc5/lib"
|
||||
>
|
||||
> And I started quake2 up with a script like this
|
||||
> #!/bin/csh
|
||||
> setenv LD_LIBRARY_PATH /usr/i486-linux-libc5/lib
|
||||
> setenv MESA_GLX_FX f
|
||||
> ./quake2 +set vid_ref gl
|
||||
> kbd_mode -a
|
||||
> reset
|
||||
|
||||
|
||||
I've already patched the mklib.glide file. You'll have to start Quake
|
||||
with the script shown above though.
|
||||
|
||||
|
||||
|
||||
**********************
|
||||
|
||||
Daryll Strauss writes:
|
||||
|
||||
Here's my thoughts on the problem. On a RH 5.x system, you can NOT build
|
||||
a libc5 executable or library. Red Hat just doesn't include the right
|
||||
stuff to do it.
|
||||
|
||||
Since Quake is a libc5 based application, you are in trouble. You need
|
||||
libc5 libraries.
|
||||
|
||||
What can you do about it? Well there's a package called gcc5 that does
|
||||
MOST of the right stuff to compile with libc5. (It brings back older
|
||||
header files, makes appropriate symbolic links for libraries, and sets
|
||||
up the compiler to use the correct directories) You can find gcc5 here:
|
||||
ftp://ecg.mit.edu/pub/linux/gcc5-1.0-1.i386.rpm
|
||||
|
||||
No, this isn't quite enough. There are still a few tricks to getting
|
||||
Mesa to compile as a libc5 application. First you have to make sure that
|
||||
every compile uses gcc5 instead of gcc. Second, in some cases the link
|
||||
line actually lists -L/usr/lib which breaks gcc5 (because it forces you
|
||||
to use the glibc version of things)
|
||||
|
||||
If you get all the stuff correctly compiled with gcc5 it should work.
|
||||
I've run Mesa 3.0B6 and its demos in a window with my Rush on a Red Hat
|
||||
5.1 system. It is a big hassle, but it can be done. I've only made Quake
|
||||
segfault, but I think that's from my libRush using the wrong libc.
|
||||
|
||||
Yes, mixing libc5 and glibc is a major pain. I've been working to get
|
||||
all my libraries compiling correctly with this setup. Someone should
|
||||
make an RPM out of it and feed changes back to Brian once they get it
|
||||
all working. If no one else has done so by the time I get the rest of my
|
||||
stuff straightened out, I'll try to do it myself.
|
||||
|
||||
- |Daryll
|
||||
|
||||
|
||||
|
||||
*********************
|
||||
|
||||
David Bucciarelli (tech.hmw@plus.it) writes:
|
||||
|
||||
I'm using the Mesa-3.0beta7 and the RedHat 5.1 and QuakeII is
|
||||
working fine for me. I had only to make a small change to the
|
||||
Mesa-3.0/mklib.glide file, from:
|
||||
|
||||
|
||||
GLIDELIBS="-L/usr/local/glide/lib -lglide2x
|
||||
-L/usr/i486-linux-libc5/lib -lm"
|
||||
|
||||
to:
|
||||
|
||||
GLIDELIBS="-L/usr/i486-linux-libc5/lib -lglide2x"
|
||||
|
||||
and to make two symbolic links:
|
||||
|
||||
[david@localhost Mesa]$ ln -s libMesaGL.so libMesaGL.so.2
|
||||
[david@localhost Mesa]$ ln -s libMesaGLU.so libMesaGLU.so.2
|
||||
|
||||
I'm using the Daryll's Linux glide rpm for the Voodoo2 and glibc (it
|
||||
includes also the Glide for the libc5). I'm not using the /dev/3Dfx and
|
||||
running QuakeII as root with the following env. var:
|
||||
|
||||
export
|
||||
LD_LIBRARY_PATH=/dsk1/home/david/src/gl/Mesa/lib:/usr/i486-linux-libc5/lib
|
||||
|
||||
I think that all problems are related to the glibc, Quake will never
|
||||
work if you get the following output:
|
||||
|
||||
[david@localhost Mesa]$ ldd lib/libMesaGL.so
|
||||
libglide2x.so => /usr/lib/libglide2x.so (0x400f8000)
|
||||
libm.so.6 => /lib/libm.so.6 (0x40244000)
|
||||
libc.so.6 => /lib/libc.so.6 (0x4025d000)
|
||||
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00000000)
|
||||
|
||||
You must get the following outputs:
|
||||
|
||||
[david@localhost Mesa]# ldd lib/libMesaGL.so
|
||||
libglide2x.so => /usr/i486-linux-libc5/lib/libglide2x.so
|
||||
(0x400f3000)
|
||||
|
||||
[root@localhost quake2]# ldd quake2
|
||||
libdl.so.1 => /lib/libdl.so.1 (0x40005000)
|
||||
libm.so.5 => /usr/i486-linux-libc5/lib/libm.so.5 (0x40008000)
|
||||
libc.so.5 => /usr/i486-linux-libc5/lib/libc.so.5 (0x40010000)
|
||||
|
||||
[root@localhost quake2]# ldd ref_gl.so
|
||||
libMesaGL.so.2 =>
|
||||
/dsk1/home/david/src/gl/Mesa/lib/libMesaGL.so.2 (0x400eb000)
|
||||
libglide2x.so => /usr/i486-linux-libc5/lib/libglide2x.so
|
||||
(0x401d9000)
|
||||
libX11.so.6 => /usr/i486-linux-libc5/lib/libX11.so.6
|
||||
(0x40324000)
|
||||
libXext.so.6 => /usr/i486-linux-libc5/lib/libXext.so.6
|
||||
(0x403b7000)
|
||||
libvga.so.1 => /usr/i486-linux-libc5/lib/libvga.so.1
|
||||
(0x403c1000)
|
||||
libm.so.5 => /usr/i486-linux-libc5/lib/libm.so.5 (0x403f5000)
|
||||
libc.so.5 => /usr/i486-linux-libc5/lib/libc.so.5 (0x403fd000)
|
||||
|
||||
|
||||
***********************
|
||||
|
||||
Steve Davies (steve@one47.demon.co.uk) writes:
|
||||
|
||||
|
||||
Try using:
|
||||
|
||||
export LD_LIBRARY_PATH=/usr/i486-linux-libc5/lib
|
||||
./quake2 +set vid_ref gl
|
||||
|
||||
to start the game... Works for me, but assumes that you have the
|
||||
compatability libc5 RPMs installed.
|
||||
|
||||
|
||||
***************************
|
||||
|
||||
WWW resources - you may find additional Linux Quake help at these URLs:
|
||||
|
||||
|
||||
http://quake.medina.net/howto
|
||||
|
||||
http://webpages.mr.net/bobz
|
||||
|
||||
http://www.linuxgames.com/quake2/
|
||||
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
52
docs/README.THREADS
Normal file
52
docs/README.THREADS
Normal file
@@ -0,0 +1,52 @@
|
||||
|
||||
|
||||
Mesa Threads README
|
||||
-------------------
|
||||
|
||||
Thread safety was introduced in Mesa 2.6 by John Stone and
|
||||
Christoph Poliwoda.
|
||||
|
||||
It was redesigned in Mesa 3.3 so that thread safety is
|
||||
supported by default (on systems which support threads,
|
||||
that is). There is no measurable penalty on single
|
||||
threaded applications.
|
||||
|
||||
NOTE that the only _driver_ which is thread safe at this time
|
||||
is the OS/Mesa driver!
|
||||
|
||||
|
||||
At present the mthreads code supports three thread APIS:
|
||||
1) POSIX threads (aka pthreads).
|
||||
2) Solaris / Unix International threads.
|
||||
3) Win32 threads (Win 95/NT).
|
||||
|
||||
Support for other thread libraries can be added src/glthread.[ch]
|
||||
|
||||
|
||||
In order to guarantee proper operation, it is
|
||||
necessary for both Mesa and application code to use the same threads API.
|
||||
So, if your application uses Sun's thread API, then you should build Mesa
|
||||
using one of the targets for Sun threads.
|
||||
|
||||
The mtdemos directory contains some example programs which use
|
||||
multiple threads to render to osmesa rendering context(s).
|
||||
|
||||
Linux users should be aware that there exist many different POSIX
|
||||
threads packages. The best solution is the linuxthreads package
|
||||
(http://pauillac.inria.fr/~xleroy/linuxthreads/) as this package is the
|
||||
only one that really supports multiprocessor machines (AFAIK). See
|
||||
http://pauillac.inria.fr/~xleroy/linuxthreads/README for further
|
||||
information about the usage of linuxthreads.
|
||||
|
||||
If you are interested in helping with thread safety work in Mesa
|
||||
join the Mesa developers mailing list and post your proposal.
|
||||
|
||||
|
||||
Regards,
|
||||
John Stone -- j.stone@acm.org johns@cs.umr.edu
|
||||
Christoph Poliwoda -- poliwoda@volumegraphics.com
|
||||
|
||||
|
||||
Version info:
|
||||
Mesa 2.6 - initial thread support.
|
||||
Mesa 3.3 - thread support mostly rewritten (Brian Paul)
|
@@ -11,34 +11,3 @@ INFORMATION FOR PACKAGED MEDIA IS EXPRESSLY PROHIBITED WITHOUT A LICENSE
|
||||
UNDER APPLICABLE PATENTS IN THE MPEG-2 PATENT PORTFOLIO, WHICH LICENSES IS
|
||||
AVAILABLE FROM MPEG LA, LLC, 6312 S. Fiddlers Green Circle, Suite 400E,
|
||||
Greenwood Village, Colorado 80111 U.S.A.
|
||||
|
||||
WARRANTY DISCLAIMER: THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND. AMD DISCLAIMS ALL WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING
|
||||
BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||
PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT, THAT THE SOFTWARE WILL RUN
|
||||
UNINTERRUPTED OR ERROR-FREE OR WARRANTIES ARISING FROM CUSTOM OF TRADE OR
|
||||
COURSE OF USAGE. THE ENTIRE RISK ASSOCIATED WITH THE USE OF THE SOFTWARE IS
|
||||
ASSUMED BY YOU. Some jurisdictions do not allow the exclusion of implied
|
||||
warranties, so the above exclusion may not apply to You.
|
||||
|
||||
LIMITATION OF LIABILITY AND INDEMNIFICATION: AMD AND ITS LICENSORS WILL NOT,
|
||||
UNDER ANY CIRCUMSTANCES BE LIABLE FOR ANY PUNITIVE, DIRECT, INCIDENTAL,
|
||||
INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING FROM USE OF THE SOFTWARE OR
|
||||
THIS AGREEMENT EVEN IF AMD AND ITS LICENSORS HAVE BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES. In no event shall AMD's total liability to You
|
||||
for all damages, losses, and causes of action (whether in contract, tort
|
||||
(including negligence) or otherwise) exceed the amount of $100 USD. You agree
|
||||
to defend, indemnify and hold harmless AMD and its licensors, and any of their
|
||||
directors, officers, employees, affiliates or agents from and against any and
|
||||
all loss, damage, liability and other expenses (including reasonable
|
||||
attorneys' fees), resulting from Your use of the Software or violation of the
|
||||
terms and conditions of this Agreement.
|
||||
|
||||
U.S. GOVERNMENT RESTRICTED RIGHTS: The Software is provided with "RESTRICTED
|
||||
RIGHTS." Use, duplication, or disclosure by the Government is subject to the
|
||||
restrictions as set forth in FAR 52.227-14 and DFAR252.227-7013, et seq., or
|
||||
its successor. Use of the Software by the Government constitutes
|
||||
acknowledgement of AMD's proprietary rights in them.
|
||||
|
||||
EXPORT RESTRICTIONS: The Software may be subject to export restrictions as
|
||||
stated in the Software License Agreement.
|
||||
|
@@ -1,43 +0,0 @@
|
||||
The software may implement third party technologies (e.g. third party
|
||||
libraries) that are not licensed to you by AMD and for which you may need
|
||||
to obtain licenses from other parties. Unless explicitly stated otherwise,
|
||||
these third party technologies are not licensed hereunder. Such third
|
||||
party technologies include, but are not limited, to H.264, MPEG-2, MPEG-4,
|
||||
AVC, and VC-1.
|
||||
|
||||
For MPEG-2 Intermediate Products: ANY USE OF THIS PRODUCT IN ANY MANNER OTHER
|
||||
THAN PERSONAL USE THAT COMPLIES WITH THE MPEG-2 STANDARD IS EXPRESSLY
|
||||
PROHIBITED WITHOUT A LICENSE UNDER APPLICABLE PATENTS IN THE MPEG-2 PATENT
|
||||
PORTFOLIO, WHICH LICENSES IS AVAILABLE FROM MPEG LA, LLC, 6312 S. Fiddlers
|
||||
Green Circle, Suite 400E, Greenwood Village, Colorado 80111 U.S.A.
|
||||
|
||||
WARRANTY DISCLAIMER: THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND. AMD DISCLAIMS ALL WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING
|
||||
BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||
PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT, THAT THE SOFTWARE WILL RUN
|
||||
UNINTERRUPTED OR ERROR-FREE OR WARRANTIES ARISING FROM CUSTOM OF TRADE OR
|
||||
COURSE OF USAGE. THE ENTIRE RISK ASSOCIATED WITH THE USE OF THE SOFTWARE IS
|
||||
ASSUMED BY YOU. Some jurisdictions do not allow the exclusion of implied
|
||||
warranties, so the above exclusion may not apply to You.
|
||||
|
||||
LIMITATION OF LIABILITY AND INDEMNIFICATION: AMD AND ITS LICENSORS WILL NOT,
|
||||
UNDER ANY CIRCUMSTANCES BE LIABLE FOR ANY PUNITIVE, DIRECT, INCIDENTAL,
|
||||
INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING FROM USE OF THE SOFTWARE OR
|
||||
THIS AGREEMENT EVEN IF AMD AND ITS LICENSORS HAVE BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES. In no event shall AMD's total liability to You
|
||||
for all damages, losses, and causes of action (whether in contract, tort
|
||||
(including negligence) or otherwise) exceed the amount of $100 USD. You agree
|
||||
to defend, indemnify and hold harmless AMD and its licensors, and any of their
|
||||
directors, officers, employees, affiliates or agents from and against any and
|
||||
all loss, damage, liability and other expenses (including reasonable
|
||||
attorneys' fees), resulting from Your use of the Software or violation of the
|
||||
terms and conditions of this Agreement.
|
||||
|
||||
U.S. GOVERNMENT RESTRICTED RIGHTS: The Software is provided with "RESTRICTED
|
||||
RIGHTS." Use, duplication, or disclosure by the Government is subject to the
|
||||
restrictions as set forth in FAR 52.227-14 and DFAR252.227-7013, et seq., or
|
||||
its successor. Use of the Software by the Government constitutes
|
||||
acknowledgement of AMD's proprietary rights in them.
|
||||
|
||||
EXPORT RESTRICTIONS: The Software may be subject to export restrictions as
|
||||
stated in the Software License Agreement.
|
@@ -36,15 +36,17 @@ Recipe
|
||||
Building on windows requires several open-source packages. These are
|
||||
steps that work as of this writing.
|
||||
|
||||
- install python 2.7
|
||||
- install scons (latest)
|
||||
- install mingw, flex, and bison
|
||||
- install pywin32 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs
|
||||
1) install python 2.7
|
||||
2) install scons (latest)
|
||||
3) install mingw, flex, and bison
|
||||
4) install libxml2 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs
|
||||
get libxml2-python-2.9.1.win-amd64-py2.7.exe
|
||||
5) install pywin32 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs
|
||||
get pywin32-218.4.win-amd64-py2.7.exe
|
||||
- install git
|
||||
- download mesa from git
|
||||
6) install git
|
||||
7) download mesa from git
|
||||
see http://www.mesa3d.org/repository.html
|
||||
- run scons
|
||||
8) run scons
|
||||
|
||||
General
|
||||
-------
|
||||
|
@@ -123,6 +123,24 @@ directories.</p>
|
||||
There are also a few general options for altering the Mesa build:
|
||||
</p>
|
||||
<dl>
|
||||
<dt><code>--with-x</code></dt>
|
||||
<dd><p>When the X11 development libraries are
|
||||
needed, the <code>pkg-config</code> utility <a href="#pkg-config">will
|
||||
be used</a> for locating them. If they cannot be found through
|
||||
<code>pkg-config</code> a fallback routing using <code>imake</code> will
|
||||
be used. In this case, the <code>--with-x</code>,
|
||||
<code>--x-includes</code> and <code>--x-libraries</code> options can
|
||||
control the use of X for Mesa.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--enable-gl-osmesa</code></dt>
|
||||
<dd><p>The <a href="osmesa.html">OSMesa
|
||||
library</a> can be built on top of libGL for drivers that provide it.
|
||||
This option controls whether to build libOSMesa. By default, this is
|
||||
enabled for the Xlib driver and disabled otherwise. Note that this
|
||||
option is different than using OSMesa as the driver.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--enable-debug</code></dt>
|
||||
<dd><p>This option will enable compiler
|
||||
options and macros to aid in debugging the Mesa libraries.</p>
|
||||
@@ -137,12 +155,12 @@ assembly will not be used.</p>
|
||||
|
||||
<dt><code>--enable-32-bit</code></dt>
|
||||
<dt><code>--enable-64-bit</code></dt>
|
||||
<dd><p>By default, the build will compile code as directed by the environment
|
||||
variables
|
||||
<dd><p>By default, the
|
||||
build will compile code as directed by the environment variables
|
||||
<code>CC</code>, <code>CFLAGS</code>, etc. If the compiler is
|
||||
<code>gcc</code>, these options offer a helper to add the compiler flags
|
||||
to force 32- or 64-bit code generation as used on the x86 and x86_64
|
||||
architectures. Note that these options are mutually exclusive.</p>
|
||||
architectures.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
@@ -153,19 +171,19 @@ architectures. Note that these options are mutually exclusive.</p>
|
||||
There are several different driver modes that Mesa can use. These are
|
||||
described in more detail in the <a href="install.html">basic
|
||||
installation instructions</a>. The Mesa driver is controlled through the
|
||||
configure options <code>--enable-xlib-glx</code>, <code>--enable-osmesa</code>,
|
||||
and <code>--enable-dri</code>.
|
||||
configure option --with-driver. There are currently three supported
|
||||
options in the configure script.
|
||||
</p>
|
||||
|
||||
<h3 id="xlib">Xlib</h3><p>
|
||||
<h3 id="xlib">Xlib</h3><p>This is the default mode for building Mesa.
|
||||
It uses Xlib as a software renderer to do all rendering. It corresponds
|
||||
to the option <code>--enable-xlib-glx</code>. The libX11 and libXext
|
||||
to the option <code>--with-driver=xlib</code>. The libX11 and libXext
|
||||
libraries, as well as the X11 development headers, will be need to
|
||||
support the Xlib driver.
|
||||
|
||||
<h3 id="dri">DRI</h3><p>This mode uses the DRI hardware drivers for
|
||||
accelerated OpenGL rendering. Enable the DRI drivers with the option
|
||||
<code>--enable-dri</code>. See the <a href="install.html">basic
|
||||
<code>--with-driver=dri</code>. See the <a href="install.html">basic
|
||||
installation instructions</a> for details on prerequisites for the DRI
|
||||
drivers.
|
||||
|
||||
@@ -205,8 +223,7 @@ and <code>/usr/local/lib</code>, respectively.
|
||||
<h3 id="osmesa">OSMesa </h3><p> No libGL is built in this
|
||||
mode. Instead, the driver code is built into the Off-Screen Mesa
|
||||
(OSMesa) library. See the <a href="osmesa.html">Off-Screen Rendering</a>
|
||||
page for more details. It corresponds to the option
|
||||
<code>--enable-osmesa</code>.
|
||||
page for more details.
|
||||
|
||||
<!-- OSMesa specific options -->
|
||||
<dl>
|
||||
|
@@ -19,7 +19,7 @@
|
||||
<p>
|
||||
The SGI OpenGL conformance tests verify correct operation of OpenGL
|
||||
implementations. I, Brian Paul, have been given a copy of the tests
|
||||
for testing Mesa. The tests are not publicly available.
|
||||
for testing Mesa. The tests are not publically available.
|
||||
</p>
|
||||
<p>
|
||||
This file has the latest results of testing Mesa with the OpenGL 1.2
|
||||
|
@@ -17,7 +17,7 @@
|
||||
<h1>Development Notes</h1>
|
||||
|
||||
|
||||
<h2>Adding Extensions</h2>
|
||||
<h2>Adding Extentions</h2>
|
||||
|
||||
<p>
|
||||
To add a new GL extension to Mesa you have to do at least the following.
|
||||
@@ -36,7 +36,7 @@ To add a new GL extension to Mesa you have to do at least the following.
|
||||
</pre>
|
||||
</li>
|
||||
<li>
|
||||
In the src/mapi/glapi/gen/ directory, add the new extension functions and
|
||||
In the src/mesa/glapi/ directory, add the new extension functions and
|
||||
enums to the gl_API.xml file.
|
||||
Then, a bunch of source files must be regenerated by executing the
|
||||
corresponding Python scripts.
|
||||
@@ -56,11 +56,6 @@ To add a new GL extension to Mesa you have to do at least the following.
|
||||
If the new extension adds new GL state, the functions in get.c, enable.c
|
||||
and attrib.c will most likely require new code.
|
||||
</li>
|
||||
<li>
|
||||
The dispatch tests check_table.cpp and dispatch_sanity.cpp
|
||||
should be updated with details about the new extensions functions. These
|
||||
tests are run using 'make check'
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -160,29 +155,6 @@ of <tt>bool</tt>, <tt>true</tt>, and
|
||||
src/mesa/state_tracker/st_glsl_to_tgsi.cpp can serve as examples.
|
||||
</p>
|
||||
|
||||
<h2>Submitting patches</h2>
|
||||
|
||||
<p>
|
||||
You should always run the Mesa Testsuite before submitting patches.
|
||||
The Testsuite can be run using the 'make check' command. All tests
|
||||
must pass before patches will be accepted, this may mean you have
|
||||
to update the tests themselves.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Patches should be sent to the Mesa mailing list for review.
|
||||
When submitting a patch make sure to use git send-email rather than attaching
|
||||
patches to emails. Sending patches as attachments prevents people from being
|
||||
able to provide in-line review comments.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
When submitting follow-up patches you can use --in-reply-to to make v2, v3,
|
||||
etc patches show up as replies to the originals. This usually works well
|
||||
when you're sending out updates to individual patches (as opposed to
|
||||
re-sending the whole series). Using --in-reply-to makes
|
||||
it harder for reviewers to accidentally review old patches.
|
||||
</p>
|
||||
|
||||
<h2>Marking a commit as a candidate for a stable branch</h2>
|
||||
|
||||
@@ -195,31 +167,11 @@ you should add an appropriate note to the commit message.
|
||||
Here are some examples of such a note:
|
||||
</p>
|
||||
<ul>
|
||||
<li>CC: <mesa-stable@lists.freedesktop.org></li>
|
||||
<li>CC: "9.2 10.0" <mesa-stable@lists.freedesktop.org></li>
|
||||
<li>CC: "10.0" <mesa-stable@lists.freedesktop.org></li>
|
||||
<li>NOTE: This is a candidate for the 9.0 branch.</li>
|
||||
<li>NOTE: This is a candidate for the 8.0 and 9.0 branches.</li>
|
||||
<li>NOTE: This is a candidate for the stable branches.</li>
|
||||
</ul>
|
||||
|
||||
Simply adding the CC to the mesa-stable list address is adequate to nominate
|
||||
the commit for the most-recently-created stable branch. It is only necessary
|
||||
to specify a specific branch name, (such as "9.2 10.0" or "10.0" in the
|
||||
examples above), if you want to nominate the commit for an older stable
|
||||
branch. And, as in these examples, you can nominate the commit for the older
|
||||
branch in addition to the more recent branch, or nominate the commit
|
||||
exclusively for the older branch.
|
||||
|
||||
This "CC" syntax for patch nomination will cause patches to automatically be
|
||||
copied to the mesa-stable@ mailing list when you use "git send-email" to send
|
||||
patches to the mesa-dev@ mailing list. Also, if you realize that a commit
|
||||
should be nominated for the stable branch after it has already been committed,
|
||||
you can send a note directly to the mesa-stable@lists.freedesktop.org where
|
||||
the Mesa stable-branch maintainers will receive it. Be sure to mention the
|
||||
commit ID of the commit of interest (as it appears in the mesa master branch).
|
||||
|
||||
The latest set of patches that have been nominated, accepted, or rejected for
|
||||
the upcoming stable release can always be seen on the
|
||||
<a href=http://cworth.org/~cworth/mesa-stable-queue/">Mesa Stable Queue</a>
|
||||
page.
|
||||
|
||||
<h2>Cherry-picking candidates for a stable branch</h2>
|
||||
|
||||
@@ -241,7 +193,15 @@ branch is relevant.
|
||||
</p>
|
||||
|
||||
|
||||
<h3>Verify and update version info in VERSION</h3>
|
||||
<h3>Verify and update version info</h3>
|
||||
|
||||
<dl>
|
||||
<dt>SConstruct</dt>
|
||||
<dt>Android.common.mk</dt>
|
||||
<dd>PACKAGE_VERSION</dd>
|
||||
<dt>configure.ac</dt>
|
||||
<dd>AC_INIT</dd>
|
||||
</dl>
|
||||
|
||||
<p>
|
||||
Create a docs/relnotes/x.y.z.html file.
|
||||
@@ -309,10 +269,10 @@ sftp USERNAME,mesa3d@web.sourceforge.net
|
||||
<p>
|
||||
Make an announcement on the mailing lists:
|
||||
|
||||
<em>mesa-dev@lists.freedesktop.org</em>,
|
||||
<em>mesa-users@lists.freedesktop.org</em>
|
||||
<em>m</em><em>e</em><em>s</em><em>a</em><em>-</em><em>d</em><em>e</em><em>v</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>f</em><em>r</em><em>e</em><em>e</em><em>d</em><em>e</em><em>s</em><em>k</em><em>t</em><em>o</em><em>p</em><em>.</em><em>o</em><em>r</em><em>g</em>,
|
||||
<em>m</em><em>e</em><em>s</em><em>a</em><em>-</em><em>u</em><em>s</em><em>e</em><em>r</em><em>s</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>f</em><em>r</em><em>e</em><em>e</em><em>d</em><em>e</em><em>s</em><em>k</em><em>t</em><em>o</em><em>p</em><em>.</em><em>o</em><em>r</em><em>g</em>
|
||||
and
|
||||
<em>mesa-announce@lists.freedesktop.org</em>
|
||||
<em>m</em><em>e</em><em>s</em><em>a</em><em>-</em><em>a</em><em>n</em><em>n</em><em>o</em><em>u</em><em>n</em><em>c</em><em>e</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>f</em><em>r</em><em>e</em><em>e</em><em>d</em><em>e</em><em>s</em><em>k</em><em>t</em><em>o</em><em>p</em><em>.</em><em>o</em><em>r</em><em>g</em>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
@@ -25,7 +25,7 @@ href="#overview">overview of Mesa's implementation</a>.</p>
|
||||
<h2>1. Complexity of GL Dispatch</h2>
|
||||
|
||||
<p>Every GL application has at least one object called a GL <em>context</em>.
|
||||
This object, which is an implicit parameter to every GL function, stores all
|
||||
This object, which is an implicit parameter to ever GL function, stores all
|
||||
of the GL related state for the application. Every texture, every buffer
|
||||
object, every enable, and much, much more is stored in the context. Since
|
||||
an application can have more than one context, the context to be used is
|
||||
@@ -51,7 +51,7 @@ example, <tt>glFogCoordf</tt> may operate differently depending on whether
|
||||
or not fog is enabled.</p>
|
||||
|
||||
<p>In multi-threaded environments, it is possible for each thread to have a
|
||||
different GL context current. This means that poor old <tt>glVertex3fv</tt>
|
||||
differnt GL context current. This means that poor old <tt>glVertex3fv</tt>
|
||||
has to know which GL context is current in the thread where it is being
|
||||
called.</p>
|
||||
|
||||
@@ -207,13 +207,13 @@ few preprocessor defines.</p>
|
||||
<li>If <tt>GLX_USE_TLS</tt> is defined, method #4 is used.</li>
|
||||
<li>If <tt>HAVE_PTHREAD</tt> is defined, method #3 is used.</li>
|
||||
<li>If <tt>WIN32_THREADS</tt> is defined, method #2 is used.</li>
|
||||
<li>If none of the preceding are defined, method #1 is used.</li>
|
||||
<li>If none of the preceeding are defined, method #1 is used.</li>
|
||||
</ul>
|
||||
|
||||
<p>Two different techniques are used to handle the various different cases.
|
||||
On x86 and SPARC, a macro called <tt>GL_STUB</tt> is used. In the preamble
|
||||
of the assembly source file different implementations of the macro are
|
||||
selected based on the defined preprocessor variables. The assembly code
|
||||
selected based on the defined preprocessor variables. The assmebly code
|
||||
then consists of a series of invocations of the macros such as:
|
||||
|
||||
<blockquote>
|
||||
@@ -242,7 +242,7 @@ first technique, is to insert <tt>#ifdef</tt> within the assembly
|
||||
implementation of each function. This makes the assembly file considerably
|
||||
larger (e.g., 29,332 lines for <tt>glapi_x86-64.S</tt> versus 1,155 lines for
|
||||
<tt>glapi_x86.S</tt>) and causes simple changes to the function
|
||||
implementation to generate many lines of diffs. Since the assembly files
|
||||
implementation to generate many lines of diffs. Since the assmebly files
|
||||
are typically generated by scripts (see <a href="#autogen">below</a>), this
|
||||
isn't a significant problem.</p>
|
||||
|
||||
|
@@ -88,7 +88,7 @@ drivers will be installed to <code>${libdir}/egl</code>.</p>
|
||||
<dd>
|
||||
|
||||
<p>List the platforms (window systems) to support. Its argument is a comma
|
||||
separated string such as <code>--with-egl-platforms=x11,drm</code>. It decides
|
||||
seprated string such as <code>--with-egl-platforms=x11,drm</code>. It decides
|
||||
the platforms a driver may support. The first listed platform is also used by
|
||||
the main library to decide the native platform: the platform the EGL native
|
||||
types such as <code>EGLNativeDisplayType</code> or
|
||||
@@ -223,7 +223,7 @@ the X server directly using (XCB-)DRI2 protocol.</p>
|
||||
<dd>
|
||||
|
||||
<p>This driver is based on Gallium3D. It supports all rendering APIs and
|
||||
hardware supported by Gallium3D. It is the only driver that supports OpenVG.
|
||||
hardwares supported by Gallium3D. It is the only driver that supports OpenVG.
|
||||
The supported platforms are X11, DRM, FBDEV, and GDI.</p>
|
||||
|
||||
<p>This driver comes with its own hardware drivers
|
||||
@@ -232,6 +232,16 @@ The supported platforms are X11, DRM, FBDEV, and GDI.</p>
|
||||
|
||||
</dd>
|
||||
|
||||
<dt><code>egl_glx</code></dt>
|
||||
<dd>
|
||||
|
||||
<p>This driver provides a wrapper to GLX. It uses exclusively GLX to implement
|
||||
the EGL API. It supports both direct and indirect rendering when the GLX does.
|
||||
It is accelerated when the GLX is. As such, it cannot provide functions that
|
||||
is not available in GLX or GLX extensions.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<h2>Packaging</h2>
|
||||
|
||||
<p>The ABI between the main library and its drivers are not stable. Nor is
|
||||
@@ -252,6 +262,10 @@ is disabled by default.</p>
|
||||
<code>src/egl/</code>. The sources of the <code>egl</code> state tracker can
|
||||
be found at <code>src/gallium/state_trackers/egl/</code>.</p>
|
||||
|
||||
<p>The suggested way to learn to write a EGL driver is to see how other drivers
|
||||
are written. <code>egl_glx</code> should be a good reference. It works in any
|
||||
environment that has GLX support, and it is simpler than most drivers.</p>
|
||||
|
||||
<h3>Lifetime of Display Resources</h3>
|
||||
|
||||
<p>Contexts and surfaces are examples of display resources. They might live
|
||||
@@ -259,8 +273,8 @@ longer than the display that creates them.</p>
|
||||
|
||||
<p>In EGL, when a display is terminated through <code>eglTerminate</code>, all
|
||||
display resources should be destroyed. Similarly, when a thread is released
|
||||
through <code>eglReleaseThread</code>, all current display resources should be
|
||||
released. Another way to destroy or release resources is through functions
|
||||
throught <code>eglReleaseThread</code>, all current display resources should be
|
||||
released. Another way to destory or release resources is through functions
|
||||
such as <code>eglDestroySurface</code> or <code>eglMakeCurrent</code>.</p>
|
||||
|
||||
<p>When a resource that is current to some thread is destroyed, the resource
|
||||
|
@@ -47,7 +47,7 @@ sometimes be useful for debugging end-user issues.
|
||||
<li>MESA_NO_SSE - if set, disables Intel SSE optimizations
|
||||
<li>MESA_DEBUG - if set, error messages are printed to stderr. For example,
|
||||
if the application generates a GL_INVALID_ENUM error, a corresponding error
|
||||
message indicating where the error occurred, and possibly why, will be
|
||||
message indicating where the error occured, and possibly why, will be
|
||||
printed to stderr.<br>
|
||||
If the value of MESA_DEBUG is 'FP' floating point arithmetic errors will
|
||||
generate exceptions.
|
||||
@@ -121,38 +121,10 @@ See the <a href="xlibdriver.html">Xlib software driver page</a> for details.
|
||||
<h2>i945/i965 driver environment variables (non-Gallium)</h2>
|
||||
|
||||
<ul>
|
||||
<li>INTEL_NO_HW - if set to 1, prevents batches from being submitted to the hardware.
|
||||
This is useful for debugging hangs, etc.</li>
|
||||
<li>INTEL_DEBUG - a comma-separated list of named flags, which do various things:
|
||||
<ul>
|
||||
<li>tex - emit messages about textures.</li>
|
||||
<li>state - emit messages about state flag tracking</li>
|
||||
<li>blit - emit messages about blit operations</li>
|
||||
<li>miptree - emit messages about miptrees</li>
|
||||
<li>perf - emit messages about performance issues</li>
|
||||
<li>perfmon - emit messages about AMD_performance_monitor</li>
|
||||
<li>bat - emit batch information</li>
|
||||
<li>pix - emit messages about pixel operations</li>
|
||||
<li>buf - emit messages about buffer objects</li>
|
||||
<li>reg - emit messages about regions</li>
|
||||
<li>fbo - emit messages about framebuffers</li>
|
||||
<li>fs - dump shader assembly for fragment shaders</li>
|
||||
<li>gs - dump shader assembly for geometry shaders</li>
|
||||
<li>sync - emit messages about synchronization</li>
|
||||
<li>prim - emit messages about drawing primitives</li>
|
||||
<li>vert - emit messages about vertex assembly</li>
|
||||
<li>dri - emit messages about the DRI interface</li>
|
||||
<li>sf - emit messages about the strips & fans unit (for old gens, includes the SF program)</li>
|
||||
<li>stats - enable statistics counters. you probably actually want perfmon or intel_gpu_top instead.</li>
|
||||
<li>urb - emit messages about URB setup</li>
|
||||
<li>vs - dump shader assembly for vertex shaders</li>
|
||||
<li>clip - emit messages about the clip unit (for old gens, includes the CLIP program)</li>
|
||||
<li>aub - dump batches into an AUB trace for use with simulation tools</li>
|
||||
<li>shader_time - record how much GPU time is spent in each shader</li>
|
||||
<li>no16 - suppress generation of 16-wide fragment shaders. useful for debugging broken shaders</li>
|
||||
<li>blorp - emit messages about the blorp operations (blits & clears)</li>
|
||||
<li>nodualobj - suppress generation of dual-object geometry shader code</li>
|
||||
</ul>
|
||||
<li>INTEL_STRICT_CONFORMANCE - if set to 1, enable sw fallbacks to improve
|
||||
OpenGL conformance. If set to 2, always use software rendering.
|
||||
<li>INTEL_NO_BLIT - if set, disable hardware-accelerated glBitmap,
|
||||
glCopyPixels, glDrawPixels.
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -201,14 +173,14 @@ See src/mesa/state_tracker/st_debug.c for other options.
|
||||
to stderr
|
||||
<li>SOFTPIPE_NO_RAST - if set, rasterization is no-op'd. For profiling purposes.
|
||||
<li>SOFTPIPE_USE_LLVM - if set, the softpipe driver will try to use LLVM JIT for
|
||||
vertex shading processing.
|
||||
vertex shading procesing.
|
||||
</ul>
|
||||
|
||||
|
||||
<h3>LLVMpipe driver environment variables</h3>
|
||||
<ul>
|
||||
<li>LP_NO_RAST - if set LLVMpipe will no-op rasterization
|
||||
<li>LP_DEBUG - a comma-separated list of debug options is accepted. See the
|
||||
<li>LP_DEBUG - a comma-separated list of debug options is acceptec. See the
|
||||
source code for details.
|
||||
<li>LP_PERF - a comma-separated list of options to selectively no-op various
|
||||
parts of the driver. See the source code for details.
|
||||
|
@@ -137,7 +137,7 @@ Just follow the Mesa <a href="install.html">compilation instructions</a>.
|
||||
<h2>1.6 Are there other open-source implementations of OpenGL?</h2>
|
||||
<p>
|
||||
Yes, SGI's <a href="http://oss.sgi.com/projects/ogl-sample/index.html">
|
||||
OpenGL Sample Implementation (SI)</a> is available.
|
||||
OpenGL Sample Implemenation (SI)</a> is available.
|
||||
The SI was written during the time that OpenGL was originally designed.
|
||||
Unfortunately, development of the SI has stagnated.
|
||||
Mesa is much more up to date with modern features and extensions.
|
||||
@@ -353,7 +353,7 @@ That's where Mesa development is discussed.
|
||||
</p>
|
||||
<p>
|
||||
The <a href="http://www.opengl.org/documentation">
|
||||
OpenGL Specification</a> is the bible for OpenGL implementation work.
|
||||
OpenGL Specification</a> is the bible for OpenGL implemention work.
|
||||
You should read it.
|
||||
</p>
|
||||
<p>Most of the Mesa development work involves implementing new OpenGL
|
||||
@@ -375,7 +375,7 @@ For a Gallium3D hardware driver, the r300g, r600g and the i915g are good example
|
||||
</p>
|
||||
<p>The DRI website has more information about writing hardware drivers.
|
||||
The process isn't well document because the Mesa driver interface changes
|
||||
over time, and we seldom have spare time for writing documentation.
|
||||
over time, and we seldome have spare time for writing documentation.
|
||||
That being said, many people have managed to figure out the process.
|
||||
</p>
|
||||
<p>
|
||||
@@ -390,7 +390,7 @@ The <a href="http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_compres
|
||||
indicates that there are intellectual property (IP) and/or patent issues
|
||||
to be dealt with.
|
||||
</p>
|
||||
<p>We've been unsuccessful in getting a response from S3 (or whoever owns
|
||||
<p>We've been unsucessful in getting a response from S3 (or whoever owns
|
||||
the IP nowadays) to indicate whether or not an open source project can
|
||||
implement the extension (specifically the compression/decompression
|
||||
algorithms).
|
||||
|
102
docs/index.html
102
docs/index.html
@@ -16,108 +16,6 @@
|
||||
|
||||
<h1>News</h1>
|
||||
|
||||
<h2>June 6, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.2.1.html">Mesa 10.2.1</a> is released. This release
|
||||
only fixes a build error in the radeonsi driver that was introduced between
|
||||
10.2-rc5 and the 10.2 final release.
|
||||
</p>
|
||||
|
||||
<h2>June 6, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.2.html">Mesa 10.2</a> is released. This is a new
|
||||
development release. See the release notes for more information about
|
||||
the release.
|
||||
</p>
|
||||
|
||||
<h2>April 18, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.1.1.html">Mesa 10.1.1</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>April 18, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.0.5.html">Mesa 10.0.5</a> is released.
|
||||
This is a bug-fix release.
|
||||
<br>
|
||||
NOTE: Since the 10.1.1 release is being released concurrently, it is
|
||||
anticipated that 10.0.5 will be the final release in the 10.0
|
||||
series. Users of 10.0 are encouraged to migrate to the 10.1 series in
|
||||
order to obtain future fixes.
|
||||
</p>
|
||||
|
||||
<h2>March 12, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.0.4.html">Mesa 10.0.4</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>March 4, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.1.html">Mesa 10.1</a> is released.
|
||||
This is a new development release.
|
||||
See the release notes for more information about the release.
|
||||
</p>
|
||||
|
||||
<h2>February 3, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.0.3.html">Mesa 10.0.3</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>January 9, 2014</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.0.2.html">Mesa 10.0.2</a> is released.
|
||||
This is a bug-fix release.
|
||||
</p>
|
||||
|
||||
<h2>December 12, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.0.1.html">Mesa 10.0.1</a>
|
||||
and <a href="relnotes/9.2.5.html">Mesa 9.2.5</a> are released.
|
||||
These are both bug-fix releases.
|
||||
</p>
|
||||
|
||||
<h2>November 30, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/10.0.html">Mesa 10.0</a> is released.
|
||||
This is a new development release.
|
||||
See the release notes for more information about the release.
|
||||
</p>
|
||||
|
||||
<h2>November 27, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/9.2.4.html">Mesa 9.2.4</a> is released.
|
||||
This is a bug fix release.
|
||||
</p>
|
||||
|
||||
<h2>November 13, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/9.2.3.html">Mesa 9.2.3</a> is released.
|
||||
This is a bug fix release.
|
||||
</p>
|
||||
|
||||
<h2>October 18, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/9.2.2.html">Mesa 9.2.2</a> is released.
|
||||
This is a bug fix release.
|
||||
</p>
|
||||
|
||||
<h2>October 4, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/9.2.1.html">Mesa 9.2.1</a> and
|
||||
<a href="relnotes/9.1.7.html">Mesa 9.1.7</a> are released,
|
||||
both bug-fix releases.
|
||||
</p>
|
||||
|
||||
<h2>August 27, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/9.2.html">Mesa 9.2</a> is released.
|
||||
This is a new development release.
|
||||
See the release notes for more information about the release.
|
||||
</p>
|
||||
|
||||
<h2>August 1, 2013</h2>
|
||||
<p>
|
||||
<a href="relnotes/9.1.6.html">Mesa 9.1.6</a> is released.
|
||||
|
@@ -44,6 +44,10 @@ On Windows with MinGW, install flex and bison with:
|
||||
</li>
|
||||
<li>python - Python is needed for building the Gallium components.
|
||||
Version 2.6.4 or later should work.
|
||||
<br>
|
||||
<br>
|
||||
To build OpenGL ES 1.1 and 2.0 you'll also need
|
||||
<a href="http://xmlsoft.org/sources/win32/python/libxml2-python-2.7.7.win32-py2.7.exe">libxml2-python</a>.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
@@ -103,9 +103,6 @@ Device drivers src/mesa/drivers/* MIT, generally
|
||||
|
||||
Ext headers include/GL/glext.h Khronos
|
||||
include/GL/glxext.h
|
||||
|
||||
C11 thread include/c11/threads*.h Boost (permissive)
|
||||
emulation
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
|
@@ -203,66 +203,11 @@ for posterior analysis, e.g.:
|
||||
We use LLVM-C bindings for now. They are not documented, but follow the C++
|
||||
interfaces very closely, and appear to be complete enough for code
|
||||
generation. See
|
||||
<a href="http://npcontemplation.blogspot.com/2008/06/secret-of-llvm-c-bindings.html">
|
||||
this stand-alone example</a>. See the llvm-c/Core.h file for reference.
|
||||
http://npcontemplation.blogspot.com/2008/06/secret-of-llvm-c-bindings.html
|
||||
for a stand-alone example. See the llvm-c/Core.h file for reference.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h1 id="recommended_reading">Recommended Reading</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<p>Rasterization</p>
|
||||
<ul>
|
||||
<li><a href="http://www.cs.unc.edu/~olano/papers/2dh-tri/">Triangle Scan Conversion using 2D Homogeneous Coordinates</a></li>
|
||||
<li><a href="http://www.drdobbs.com/parallel/rasterization-on-larrabee/217200602">Rasterization on Larrabee</a> (<a href="http://devmaster.net/posts/2887/rasterization-on-larrabee">DevMaster copy</a>)</li>
|
||||
<li><a href="http://devmaster.net/posts/6133/rasterization-using-half-space-functions">Rasterization using half-space functions</a></li>
|
||||
<li><a href="http://devmaster.net/posts/6145/advanced-rasterization">Advanced Rasterization</a></li>
|
||||
<li><a href="http://fgiesen.wordpress.com/2013/02/17/optimizing-sw-occlusion-culling-index/">Optimizing Software Occlusion Culling</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>Texture sampling</p>
|
||||
<ul>
|
||||
<li><a href="http://chrishecker.com/Miscellaneous_Technical_Articles#Perspective_Texture_Mapping">Perspective Texture Mapping</a></li>
|
||||
<li><a href="http://www.flipcode.com/archives/Texturing_As_In_Unreal.shtml">Texturing As In Unreal</a></li>
|
||||
<li><a href="http://www.gamasutra.com/view/feature/3301/runtime_mipmap_filtering.php">Run-Time MIP-Map Filtering</a></li>
|
||||
<li><a href="http://alt.3dcenter.org/artikel/2003/10-26_a_english.php">Will "brilinear" filtering persist?</a></li>
|
||||
<li><a href="http://ixbtlabs.com/articles2/gffx/nv40-rx800-3.html">Trilinear filtering</a></li>
|
||||
<li><a href="http://devmaster.net/posts/12785/texture-swizzling">Texture Swizzling</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>SIMD</p>
|
||||
<ul>
|
||||
<li><a href="http://www.cdl.uni-saarland.de/projects/wfv/#header4">Whole-Function Vectorization</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>Optimization</p>
|
||||
<ul>
|
||||
<li><a href="http://www.drdobbs.com/optimizing-pixomatic-for-modern-x86-proc/184405807">Optimizing Pixomatic For Modern x86 Processors</a></li>
|
||||
<li><a href="http://www.intel.com/content/www/us/en/architecture-and-technology/64-ia-32-architectures-optimization-manual.html">Intel 64 and IA-32 Architectures Optimization Reference Manual</a></li>
|
||||
<li><a href="http://www.agner.org/optimize/">Software optimization resources</a></li>
|
||||
<li><a href="http://software.intel.com/en-us/articles/intel-intrinsics-guide">Intel Intrinsics Guide</a><li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>LLVM</p>
|
||||
<ul>
|
||||
<li><a href="http://llvm.org/docs/LangRef.html">LLVM Language Reference Manual</a></li>
|
||||
<li><a href="http://npcontemplation.blogspot.co.uk/2008/06/secret-of-llvm-c-bindings.html">The secret of LLVM C bindings</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>General</p>
|
||||
<ul>
|
||||
<li><a href="http://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-graphics-pipeline-2011-index/">A trip through the Graphics Pipeline</a></li>
|
||||
<li><a href="http://msdn.microsoft.com/en-us/library/gg615082.aspx#architecture">WARP Architecture and Performance</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -16,7 +16,7 @@
|
||||
|
||||
<h1>OpenGL ES</h1>
|
||||
|
||||
<p>Mesa implements OpenGL ES 1.1 and OpenGL ES 2.0. More information about
|
||||
<p>Mesa implements OpenGL ES 1.1 and OpenGL ES 2.0. More informations about
|
||||
OpenGL ES can be found at <a href="http://www.khronos.org/opengles/">
|
||||
http://www.khronos.org/opengles/</a>.</p>
|
||||
|
||||
@@ -48,7 +48,7 @@ EGL drivers for your hardware.</p>
|
||||
|
||||
<h3>Dispatch Table</h3>
|
||||
|
||||
<p>OpenGL ES has an additional indirection when dispatching functions</p>
|
||||
<p>OpenGL ES has an additional indirection when dispatching fucntions</p>
|
||||
|
||||
<pre>
|
||||
Mesa: glFoo() --> _mesa_Foo()
|
||||
|
@@ -20,7 +20,7 @@
|
||||
The current version of the OpenVG state tracker implements OpenVG 1.1.
|
||||
</p>
|
||||
<p>
|
||||
More information about OpenVG can be found at
|
||||
More informations about OpenVG can be found at
|
||||
<a href="http://www.khronos.org/openvg/">
|
||||
http://www.khronos.org/openvg/</a> .
|
||||
</p>
|
||||
|
@@ -21,23 +21,7 @@ The release notes summarize what's new or changed in each Mesa release.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="relnotes/10.2.1.html">10.2.1 release notes</a>
|
||||
<li><a href="relnotes/10.2.html">10.2 release notes</a>
|
||||
<li><a href="relnotes/10.1.1.html">10.1.1 release notes</a>
|
||||
<li><a href="relnotes/10.1.html">10.1 release notes</a>
|
||||
<li><a href="relnotes/10.0.5.html">10.0.5 release notes</a>
|
||||
<li><a href="relnotes/10.0.4.html">10.0.4 release notes</a>
|
||||
<li><a href="relnotes/10.0.3.html">10.0.3 release notes</a>
|
||||
<li><a href="relnotes/10.0.2.html">10.0.2 release notes</a>
|
||||
<li><a href="relnotes/10.0.1.html">10.0.1 release notes</a>
|
||||
<li><a href="relnotes/10.0.html">10.0 release notes</a>
|
||||
<li><a href="relnotes/9.2.5.html">9.2.5 release notes</a>
|
||||
<li><a href="relnotes/9.2.4.html">9.2.4 release notes</a>
|
||||
<li><a href="relnotes/9.2.3.html">9.2.3 release notes</a>
|
||||
<li><a href="relnotes/9.2.2.html">9.2.2 release notes</a>
|
||||
<li><a href="relnotes/9.2.1.html">9.2.1 release notes</a>
|
||||
<li><a href="relnotes/9.2.html">9.2 release notes</a>
|
||||
<li><a href="relnotes/9.1.7.html">9.1.7 release notes</a>
|
||||
<li><a href="relnotes/9.1.6.html">9.1.6 release notes</a>
|
||||
<li><a href="relnotes/9.1.5.html">9.1.5 release notes</a>
|
||||
<li><a href="relnotes/9.1.4.html">9.1.4 release notes</a>
|
||||
|
@@ -1,150 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.0.1 Release Notes / (December 12, 2013)</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.0.1 is a bug fix release which fixes bugs found since the 10.0 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.0.1 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
0a72ca5b36046a658bf6038326ff32ed MesaLib-10.0.1.tar.bz2
|
||||
01bde35c912e504ba62caf1ef9f7022c MesaLib-10.0.1.tar.gz
|
||||
59a174a11a89e6b1b8ee9c3f7e3c388c MesaLib-10.0.1.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=64323">Bug 64323</a> - Severe misrendering in Left 4 Dead 2</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68838">Bug 68838</a> - GLSL: struct declarations produce a "empty declaration warning" in 9.2</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=69155">Bug 69155</a> - [NV50 gallium] [piglit] bin/varying-packing-simple triggers memory corruption/failures</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70250">Bug 70250</a> - weston-terminal rendering corrupted with output transform 90 and 270</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70601">Bug 70601</a> - [SNB Bisected]Piglit spec/ARB_texture_float/multisample-formats 2 GL_ARB_texture_float fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72230">Bug 72230</a> - Unable to extract MesaLib-10.0.0.tar.{gz,bz2} with bsdtar</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72325">Bug 72325</a> - [swrast] piglit glean fbo regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72327">Bug 72327</a> - [swrast] piglit glean pointSprite regression</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>The full set of changes can be viewed by using the following git command:</p>
|
||||
|
||||
<pre>
|
||||
git log mesa-10.0..mesa-10.0.1
|
||||
</pre>
|
||||
|
||||
<p>Axel Davy (2):</p>
|
||||
<ul>
|
||||
<li>egl/wayland: Flush the wl_display at the end of SwapBuffers</li>
|
||||
<li>Enable throttling in SwapBuffers</li>
|
||||
</ul>
|
||||
|
||||
<p>Chad Versace (2):</p>
|
||||
<ul>
|
||||
<li>i965/hsw: Apply non-msrt fast color clear w/a to all HSW GTs</li>
|
||||
<li>i965: Add extra-alignment for non-msrt fast color clear for all hw (v2)</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (1):</p>
|
||||
<ul>
|
||||
<li>swrast: fix readback regression since inversion fix</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (1):</p>
|
||||
<ul>
|
||||
<li>automake: include only one copy VERSION in tarball</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (3):</p>
|
||||
<ul>
|
||||
<li>docs: Add 10.0 release md5sums</li>
|
||||
<li>Remove a057b83 from the pick list</li>
|
||||
<li>glsl: Don't emit empty declaration warning for a struct specifier</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (8):</p>
|
||||
<ul>
|
||||
<li>mesa: don't leak performance monitors on context destroy</li>
|
||||
<li>nv50: Fix GPU_READING/WRITING bit removal</li>
|
||||
<li>nouveau: avoid leaking fences while waiting</li>
|
||||
<li>nv50: wait on the buf's fence before sticking it into pushbuf</li>
|
||||
<li>nv50: enable h264 and mpeg4 for nv98+ (vp3, vp4.0)</li>
|
||||
<li>nouveau/video: update h264 picparm field names based on usage</li>
|
||||
<li>nouveau/video: update a few more h264 picparm field names</li>
|
||||
<li>nv50: report 15 max inputs for fragment programs</li>
|
||||
</ul>
|
||||
|
||||
<p>Jordan Justen (1):</p>
|
||||
<ul>
|
||||
<li>dri megadriver_stub: add compatibility for older DRI loaders</li>
|
||||
</ul>
|
||||
|
||||
<p>Kristian Høgsberg (2):</p>
|
||||
<ul>
|
||||
<li>egl/wayland: Damage INT32_MAX x INT32_MAX region for eglSwapBuffers</li>
|
||||
<li>egl/wayland: Send commit after flushing the driver context</li>
|
||||
</ul>
|
||||
|
||||
<p>Maarten Lankhorst (1):</p>
|
||||
<ul>
|
||||
<li>nouveau: Fix compiler warning regression</li>
|
||||
</ul>
|
||||
|
||||
<p>Paul Berry (1):</p>
|
||||
<ul>
|
||||
<li>i965/gen6: Fix multisample resolve blits for luminance/intensity 32F formats.</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Hellstrom (1):</p>
|
||||
<ul>
|
||||
<li>st/xa: Bump major version number to 2</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (2):</p>
|
||||
<ul>
|
||||
<li>r300/compiler/tests: Fix segfault</li>
|
||||
<li>r300/compiler/tests: Fix line length check in test parser</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,161 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.0.2 Release Notes / (January 9, 2014)</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.0.2 is a bug fix release which fixes bugs found since the 10.0.1 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.0.2 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
de7d14baf0101b697c140d2f47ef27e9 MesaLib-10.0.2.tar.gz
|
||||
8544c0ab3e438a08b5103421ea15b6d2 MesaLib-10.0.2.tar.bz2
|
||||
181b0d6c1afca38e98a930d0e564ed90 MesaLib-10.0.2.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70740">Bug 70740</a> - HiZ on SNB causes GPU hang with WebGL web app</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72026">Bug 72026</a> - SIGSEGV in fs_visitor::visit(ir_dereference_variable*)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72264">Bug 72264</a> - GLSL error reporting</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72369">Bug 72369</a> - glitches in serious sam 3 with the sb shader backend</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>The full set of changes can be viewed by using the following git command:</p>
|
||||
|
||||
<pre>
|
||||
git log mesa-10.0.1..mesa-10.0.2
|
||||
</pre>
|
||||
|
||||
<p>Aaron Watry (8):</p>
|
||||
<ul>
|
||||
<li>clover: Remove unused variable</li>
|
||||
<li>pipe_loader/sw: close dev->lib when initialization fails</li>
|
||||
<li>radeon/compute: Stop leaking LLVMContexts in radeon_llvm_parse_bitcode</li>
|
||||
<li>r600/compute: Free compiled kernels when deleting compute state</li>
|
||||
<li>r600/compute: Use the correct FREE macro when deleting compute state</li>
|
||||
<li>radeon/llvm: Free target data at end of optimization</li>
|
||||
<li>st/vdpau: Destroy context when initialization fails</li>
|
||||
<li>r600/pipe: Stop leaking context->start_compute_cs_cmd.buf on EG/CM</li>
|
||||
</ul>
|
||||
|
||||
<p>Alex Deucher (1):</p>
|
||||
<ul>
|
||||
<li>r600g: fix SUMO2 pci id</li>
|
||||
</ul>
|
||||
|
||||
<p>Alexander von Gluck IV (1):</p>
|
||||
<ul>
|
||||
<li>Haiku: Add in public GL kit headers</li>
|
||||
</ul>
|
||||
|
||||
<p>Anuj Phogat (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Fix error code generation in glBeginConditionalRender()</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (2):</p>
|
||||
<ul>
|
||||
<li>docs: Add md5sums for the 10.0.1 release.</li>
|
||||
<li>Update version to 10.0.2</li>
|
||||
</ul>
|
||||
|
||||
<p>Chad Versace (1):</p>
|
||||
<ul>
|
||||
<li>i965/gen6: Fix HiZ hang in WebGL Google Maps</li>
|
||||
</ul>
|
||||
|
||||
<p>Erik Faye-Lund (1):</p>
|
||||
<ul>
|
||||
<li>glcpp: error on multiple #else/#elif directives</li>
|
||||
</ul>
|
||||
|
||||
<p>Henri Verbeet (1):</p>
|
||||
<ul>
|
||||
<li>i915: Add support for gl_FragData[0] reads.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (1):</p>
|
||||
<ul>
|
||||
<li>nv50: fix a small leak on context destroy</li>
|
||||
</ul>
|
||||
|
||||
<p>Jonathan Liu (2):</p>
|
||||
<ul>
|
||||
<li>st/mesa: use pipe_sampler_view_release()</li>
|
||||
<li>llvmpipe: use pipe_sampler_view_release() to avoid segfault</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (2):</p>
|
||||
<ul>
|
||||
<li>i965: Fix 3DSTATE_PUSH_CONSTANT_ALLOC_PS packet creation.</li>
|
||||
<li>Revert "mesa: Remove GLXContextID typedef from glx.h."</li>
|
||||
</ul>
|
||||
|
||||
<p>Kevin Rogovin (1):</p>
|
||||
<ul>
|
||||
<li>Use line number information from entire function expression</li>
|
||||
</ul>
|
||||
|
||||
<p>Kristian Høgsberg (1):</p>
|
||||
<ul>
|
||||
<li>dri_util: Don't assume __DRIcontext->driverPrivate is a gl_context</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (2):</p>
|
||||
<ul>
|
||||
<li>mesa: fix interpretation of glClearBuffer(drawbuffer)</li>
|
||||
<li>st/mesa: fix glClear with multiple colorbuffers and different formats</li>
|
||||
</ul>
|
||||
|
||||
<p>Paul Berry (2):</p>
|
||||
<ul>
|
||||
<li>glsl: Teach ir_variable_refcount about ir_loop::counter variables.</li>
|
||||
<li>glsl: Fix inconsistent assumptions about ir_loop::counter.</li>
|
||||
</ul>
|
||||
|
||||
<p>Vadim Girlin (1):</p>
|
||||
<ul>
|
||||
<li>r600g/sb: fix stack size computation on evergreen</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,206 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.0.3 Release Notes / (February 3, 2014)</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.0.3 is a bug fix release which fixes bugs found since the 10.0.2 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.0.3 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
5f9f463ef08129f6762106b434910adb MesaLib-10.0.3.tar.bz2
|
||||
fb3997b6500e153bc32370cb3fc4ca9e MesaLib-10.0.3.tar.gz
|
||||
a07b4b6b9eb449b88a6cb5061e51c331 MesaLib-10.0.3.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72708">Bug 72708</a> - Master fails to build with older gcc due to -msse4.1</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72926">Bug 72926</a> - [REGRESSION,swrast] Memory-related crash with anti-aliasing enabled</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=73096">Bug 73096</a> - Query GL_RGBA_SIGNED_COMPONENTS_EXT missing</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=73100">Bug 73100</a> - Please use AC_PATH_TOOL instead of AC_PATH_PROG for llvm-config</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=73418">Bug 73418</a> - OpenCL hangs graphics on CAYMAN</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=73473">Bug 73473</a> - Potential crash bug in src/gallium/auxiliary/rtasm/rtasm_execmem.c</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=73915">Bug 73915</a> - sample shading + centroid broken since f5cfb4a</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=73956">Bug 73956</a> - SIGSEGV when passing GL_NONE to glReadBuffer</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74026">Bug 74026</a> - Compiler rejects chained assignments involving array dereferences</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>The full set of changes can be viewed by using the following git command:</p>
|
||||
|
||||
<pre>
|
||||
git log mesa-10.0.2..mesa-10.0.3
|
||||
</pre>
|
||||
|
||||
<p>Aaron Watry (2):</p>
|
||||
<ul>
|
||||
<li>radeon: Move gfx/dma cs cleanup to r600_common_context_cleanup</li>
|
||||
<li>st/dri: prevent leak of dri option default values</li>
|
||||
</ul>
|
||||
|
||||
<p>Andreas Fänger (1):</p>
|
||||
<ul>
|
||||
<li>swrast: fix delayed texel buffer allocation regression for OpenMP</li>
|
||||
</ul>
|
||||
|
||||
<p>Anuj Phogat (3):</p>
|
||||
<ul>
|
||||
<li>glsl: Disable ARB_texture_rectangle in shader version 100.</li>
|
||||
<li>i965: Use sample barycentric coordinates with per sample shading</li>
|
||||
<li>i965: Ignore 'centroid' interpolation qualifier in case of persample shading</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (3):</p>
|
||||
<ul>
|
||||
<li>mesa: implement missing glGet(GL_RGBA_SIGNED_COMPONENTS_EXT) query</li>
|
||||
<li>st/mesa: fix glReadBuffer(GL_NONE) segfault</li>
|
||||
<li>draw: fix incorrect vertex size computation in LLVM drawing code</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (5):</p>
|
||||
<ul>
|
||||
<li>Add md5sums for 10.0.2. release.</li>
|
||||
<li>cherry-ignore: Ignore several patches not yet ready for the stable branch</li>
|
||||
<li>Drop another couple of patches.</li>
|
||||
<li>cherry-ignore: Ignore 4 patches at teh request of the author, (Anuj).</li>
|
||||
<li>Update version to 10.0.3</li>
|
||||
</ul>
|
||||
|
||||
<p>Chad Versace (1):</p>
|
||||
<ul>
|
||||
<li>i965/gen6/blorp: Emit more flushes to workaround hangs</li>
|
||||
</ul>
|
||||
|
||||
<p>Chris Forbes (1):</p>
|
||||
<ul>
|
||||
<li>i965: fold offset into coord for textureOffset(gsampler2DRect)</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (5):</p>
|
||||
<ul>
|
||||
<li>mesa: use signed temporary variable to store _ColorDrawBufferIndexes</li>
|
||||
<li>st/mesa: use signed temporary variable to store _ColorDrawBufferIndexes</li>
|
||||
<li>nv50: access only the available amount of textures</li>
|
||||
<li>nv50: access only the available amount of constbuf</li>
|
||||
<li>gallium/rtasm: handle mmap failures appropriately</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (2):</p>
|
||||
<ul>
|
||||
<li>i965: Fix handling of MESA_pack_invert in blit (PBO) readpixels.</li>
|
||||
<li>i965: Don't do the temporary-and-blit-copy for INVALIDATE_RANGE maps.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (2):</p>
|
||||
<ul>
|
||||
<li>mesa: Add COMPRESSED_RGBA_S3TC_DXT1_EXT to COMPRESSED_TEXTURE_FORMATS for GLES</li>
|
||||
<li>radeon / r200: Pass the API into _mesa_initialize_context</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (2):</p>
|
||||
<ul>
|
||||
<li>mesa: fix GL_COLOR_SUM enum for drivers without ARB_vertex_program</li>
|
||||
<li>st/vdpau: don't return a device if the screen doesn't support NPOT</li>
|
||||
</ul>
|
||||
|
||||
<p>José Fonseca (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Use IROUND instead of roundf.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (2):</p>
|
||||
<ul>
|
||||
<li>glsl: Rename "expr" to "lhs_expr" in vector_extract munging code.</li>
|
||||
<li>glsl: Fix chained assignments of vector channels.</li>
|
||||
</ul>
|
||||
|
||||
<p>Lauri Kasanen (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Fix build to properly check for supported compiler flags</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (2):</p>
|
||||
<ul>
|
||||
<li>st/mesa: use sRGB formats for MSAA resolving if destination is sRGB</li>
|
||||
<li>gallium/util: util_format_srgb should not return FORMAT_NONE for sRGB formats</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (2):</p>
|
||||
<ul>
|
||||
<li>glcpp: Define GL_EXT_shader_integer_mix in both GL and ES.</li>
|
||||
<li>glx: Update glxext.h to revision 24777.</li>
|
||||
</ul>
|
||||
|
||||
<p>Michał Górny (1):</p>
|
||||
<ul>
|
||||
<li>Use AC_PATH_TOOL instead of AC_PATH_PROG for llvm-config.</li>
|
||||
</ul>
|
||||
|
||||
<p>Paul Berry (1):</p>
|
||||
<ul>
|
||||
<li>i965: Ensure that all necessary state is re-emitted if we run out of aperture.</li>
|
||||
</ul>
|
||||
|
||||
<p>Paul Seidler (1):</p>
|
||||
<ul>
|
||||
<li>build: move ARCH_LIBS definition outside of ASM definition</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Sondergaard (4):</p>
|
||||
<ul>
|
||||
<li>mesa: Preliminary support for MSVC_VERSION=12.0</li>
|
||||
<li>mesa: Fix compile error with MSVC 2013</li>
|
||||
<li>mesa: Work around internal compiler error</li>
|
||||
<li>mesa: Namespace qualify fma to override ambiguity with fma from math.h</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (1):</p>
|
||||
<ul>
|
||||
<li>r600g/compute: Emit DEALLOC_STATE on cayman after dispatching a compute shader.</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,191 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.0.4 Release Notes / (March 12, 2014)</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.0.4 is a bug fix release which fixes bugs found since the 10.0.3 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.0.4 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
5a3c5b90776ec8a9fcd777c99e0607e2 MesaLib-10.0.4.tar.gz
|
||||
8b148869d2620b0720c8a8d2b7eb3e38 MesaLib-10.0.4.tar.bz2
|
||||
da2418d25bfbc273660af7e755fb367e MesaLib-10.0.4.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71870">Bug 71870</a> - Metro: Last Light rendering issues</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72895">Bug 72895</a> - Missing trees in flightgear 2.12.1 with mesa 10.0.1</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74251">Bug 74251</a> - Segfault in st_finalize_texture with Texture Buffer</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74723">Bug 74723</a> - main/shaderapi.c:407: detach_shader: Assertion `shProg->Shaders[j]->Type == 0x8B31 || shProg->Shaders[j]->Type == 0x8B30' failed.</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>The full set of changes can be viewed by using the following git command:</p>
|
||||
|
||||
<pre>
|
||||
git log mesa-10.0.3..mesa-10.0.4
|
||||
</pre>
|
||||
|
||||
<p>Anuj Phogat (4):</p>
|
||||
<ul>
|
||||
<li>mesa: Generate correct error code in glDrawBuffers()</li>
|
||||
<li>mesa: Add GL_TEXTURE_CUBE_MAP_ARRAY to legal_get_tex_level_parameter_target()</li>
|
||||
<li>glsl: Fix condition to generate shader link error</li>
|
||||
<li>i965: Fix the region's pitch condition to use blitter</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (8):</p>
|
||||
<ul>
|
||||
<li>r200: move driContextSetFlags(ctx) call after ctx var is initialized</li>
|
||||
<li>radeon: move driContextSetFlags(ctx) call after ctx var is initialized</li>
|
||||
<li>gallium/auxiliary/indices: replace free() with FREE()</li>
|
||||
<li>draw: fix incorrect color of flat-shaded clipped lines</li>
|
||||
<li>st/mesa: avoid sw fallback for getting/decompressing textures</li>
|
||||
<li>mesa: update assertion in detach_shader() for geom shaders</li>
|
||||
<li>mesa: do depth/stencil format conversion in glGetTexImage</li>
|
||||
<li>softpipe: use 64-bit arithmetic in softpipe_resource_layout()</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (4):</p>
|
||||
<ul>
|
||||
<li>docs: Add md5sums for 10.0.3 release</li>
|
||||
<li>main: Avoid double-free of shader Label</li>
|
||||
<li>get-pick-list: Update to only find patches nominated for the 10.0 branch</li>
|
||||
<li>Update version to 10.0.4</li>
|
||||
</ul>
|
||||
|
||||
<p>Chris Forbes (1):</p>
|
||||
<ul>
|
||||
<li>i965: Validate (and resolve) all the bound textures.</li>
|
||||
</ul>
|
||||
|
||||
<p>Christian König (1):</p>
|
||||
<ul>
|
||||
<li>radeon/uvd: fix feedback buffer handling v2</li>
|
||||
</ul>
|
||||
|
||||
<p>Daniel Kurtz (1):</p>
|
||||
<ul>
|
||||
<li>glsl: Add locking to builtin_builder singleton</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (3):</p>
|
||||
<ul>
|
||||
<li>dri/nouveau: Pass the API into _mesa_initialize_context</li>
|
||||
<li>nv50: correctly calculate the number of vertical blocks during transfer map</li>
|
||||
<li>dri/i9*5: correctly calculate the amount of system memory</li>
|
||||
</ul>
|
||||
|
||||
<p>Fredrik Höglund (3):</p>
|
||||
<ul>
|
||||
<li>mesa: Preserve the NewArrays state when copying a VAO</li>
|
||||
<li>glx: Fix the default values for GLXFBConfig attributes</li>
|
||||
<li>glx: Fix the GLXFBConfig attrib sort priorities</li>
|
||||
</ul>
|
||||
|
||||
<p>Hans (2):</p>
|
||||
<ul>
|
||||
<li>util: don't define isfinite(), isnan() for MSVC >= 1800</li>
|
||||
<li>mesa: don't define c99 math functions for MSVC >= 1800</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (6):</p>
|
||||
<ul>
|
||||
<li>meta: Release resources used by decompress_texture_image</li>
|
||||
<li>meta: Release resources used by _mesa_meta_DrawPixels</li>
|
||||
<li>meta: Fallback to software for GetTexImage of compressed GL_TEXTURE_CUBE_MAP_ARRAY</li>
|
||||
<li>meta: Consistenly use non-Apple VAO functions</li>
|
||||
<li>glcpp: Only warn for macro names containing __</li>
|
||||
<li>glsl: Only warn for macro names containing __</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (3):</p>
|
||||
<ul>
|
||||
<li>nv30: report 8 maximum inputs</li>
|
||||
<li>nouveau/video: make sure that firmware is present when checking caps</li>
|
||||
<li>nouveau: fix chipset checks for nv1a by using the oclass instead</li>
|
||||
</ul>
|
||||
|
||||
<p>Julien Cristau (1):</p>
|
||||
<ul>
|
||||
<li>glx/dri2: fix build failure on HURD</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (2):</p>
|
||||
<ul>
|
||||
<li>glsl: Don't lose precision qualifiers when encountering "centroid".</li>
|
||||
<li>i965: Create a hardware context before initializing state module.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kusanagi Kouichi (1):</p>
|
||||
<ul>
|
||||
<li>targets/vdpau: Always use c++ to link</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (1):</p>
|
||||
<ul>
|
||||
<li>st/mesa: fix crash when a shader uses a TBO and it's not bound</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (1):</p>
|
||||
<ul>
|
||||
<li>glsl: Initialize ubo_binding_mask flags to zero.</li>
|
||||
</ul>
|
||||
|
||||
<p>Paul Berry (2):</p>
|
||||
<ul>
|
||||
<li>glsl: Make condition_to_hir() callable from outside ast_iteration_statement.</li>
|
||||
<li>glsl: Fix continue statements in do-while loops.</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (1):</p>
|
||||
<ul>
|
||||
<li>r600g/compute: PIPE_CAP_COMPUTE should be false for pre-evergreen GPUs</li>
|
||||
</ul>
|
||||
|
||||
<p>Topi Pohjolainen (1):</p>
|
||||
<ul>
|
||||
<li>i965/blorp: do not use unnecessary hw-blending support</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,173 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.0.5 Release Notes / April 18, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.0.5 is a bug fix release which fixes bugs found since the 10.0.4 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.0.5 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
db606aadd0fe321f3664099677d159bc MesaLib-10.0.5.tar.gz
|
||||
e6009ccd8898d7104bb325b6af9ec354 MesaLib-10.0.5.tar.bz2
|
||||
c8ab9e502542bf32299a4df85b0b704d MesaLib-10.0.5.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=58660">Bug 58660</a> - CAYMAN broken with HyperZ on</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=64471">Bug 64471</a> - Radeon HD6570 lockup in Brütal Legend with HyperZ</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=66352">Bug 66352</a> - GPU lockup in L4D2 on TURKS with HyperZ</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68799">Bug 68799</a> - [APITRACE] Hyper-Z lockup with Falcon BMS 4.32u6 on CAYMAN</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71547">Bug 71547</a> - compilation failure :#error "SSE4.1 instruction set not enabled"</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=72685">Bug 72685</a> - [radeonsi hyperz] Artifacts in Unigine Sanctuary</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=73088">Bug 73088</a> - [HyperZ] Juniper (6770): Gone Home / Unigine Heaven 4.0 lock up system after several minutes of use</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74428">Bug 74428</a> - hyperz causes gpu hang in Counter-strike: Source</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74803">Bug 74803</a> - [r600g] HyperZ broken on RV630 (Cogs shadows are broken)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74863">Bug 74863</a> - [r600g] HyperZ broken on RV770 and CYPRESS (Left 4 Dead 2 trees corruption) bisected!</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74892">Bug 74892</a> - HyperZ GPU lockup with radeonsi 7970M PITCAIRN and Distance Alpha game</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74988">Bug 74988</a> - Buffer overrun (segfault) decompressing ETC2 texture in GLBenchmark 3.0 Manhattan</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=75279">Bug 75279</a> - XCloseDisplay() takes one minute around nouveau_dri.so, freezing Firefox startup</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=77102">Bug 77102</a> - gallium nouveau has no profile in vdpau and libva</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=77207">Bug 77207</a> - [ivb/hsw] batch overwritten with garbage</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>The full set of changes can be viewed by using the following git command:</p>
|
||||
|
||||
<pre>
|
||||
git log mesa-10.0.4..mesa-10.0.5
|
||||
</pre>
|
||||
|
||||
<p>Alex Deucher (1):</p>
|
||||
<ul>
|
||||
<li>radeon: reverse DBG_NO_HYPERZ logic</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (9):</p>
|
||||
<ul>
|
||||
<li>mesa: add unpacking code for MESA_FORMAT_Z32_FLOAT_S8X24_UINT</li>
|
||||
<li>mesa: fix copy & paste bugs in pack_ubyte_SARGB8()</li>
|
||||
<li>mesa: fix copy & paste bugs in pack_ubyte_SRGB8()</li>
|
||||
<li>mesa: fix unpack_Z32_FLOAT_X24S8() / unpack_Z32_FLOAT() mix-up</li>
|
||||
<li>st/mesa: add null pointer checking in query object functions</li>
|
||||
<li>mesa: fix glMultiDrawArrays inside a display list</li>
|
||||
<li>cso: fix sampler view count in cso_set_sampler_views()</li>
|
||||
<li>svga: replace sampler assertion with conditional</li>
|
||||
<li>svga: move LIST_INITHEAD(dirty_buffers) earlier in svga_context_create()</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (3):</p>
|
||||
<ul>
|
||||
<li>docs: Add md5sums for the 10.0.4 release.</li>
|
||||
<li>Ignore patches which don't apply.</li>
|
||||
<li>Update version to 10.0.5</li>
|
||||
</ul>
|
||||
|
||||
<p>Christian König (2):</p>
|
||||
<ul>
|
||||
<li>st/mesa: recreate sampler view on context change v3</li>
|
||||
<li>st/mesa: fix sampler view handling with shared textures v4</li>
|
||||
</ul>
|
||||
|
||||
<p>Courtney Goeltzenleuchter (1):</p>
|
||||
<ul>
|
||||
<li>mesa: add bounds checking to eliminate buffer overrun</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (2):</p>
|
||||
<ul>
|
||||
<li>mesa: return v.value_int64 when the requested type is TYPE_INT64</li>
|
||||
<li>glx: drop obsolete _XUnlock_Mutex in __glXInitialize error path</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>i965: Fix buffer overruns in MSAA MCS buffer clearing.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (6):</p>
|
||||
<ul>
|
||||
<li>nouveau: fix fence waiting logic in screen destroy</li>
|
||||
<li>nv50: adjust blit_3d handling of ms output textures</li>
|
||||
<li>mesa/main: condition GL_DEPTH_STENCIL on ARB_depth_texture</li>
|
||||
<li>nouveau: add forgotten GL_COMPRESSED_INTENSITY to texture format list</li>
|
||||
<li>nouveau: there may not have been a texture if the fbo was incomplete</li>
|
||||
<li>nouveau: fix firmware check on nvd7/nvd9</li>
|
||||
</ul>
|
||||
|
||||
<p>Johannes Nixdorf (1):</p>
|
||||
<ul>
|
||||
<li>configure.ac: fix the detection of expat with pkg-config</li>
|
||||
</ul>
|
||||
|
||||
<p>Jonathan Gray (1):</p>
|
||||
<ul>
|
||||
<li>gallium: add endian detection for OpenBSD</li>
|
||||
</ul>
|
||||
|
||||
<p>José Fonseca (1):</p>
|
||||
<ul>
|
||||
<li>draw: Duplicate TGSI tokens in draw_pipe_pstipple module.</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Wrap SSE4.1 code in #ifdef __SSE4_1__.</li>
|
||||
</ul>
|
||||
|
||||
<p>Paul Berry (1):</p>
|
||||
<ul>
|
||||
<li>i965/gen7: Prefer vertical alignment of 4 when possible.</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,146 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.0 Release Notes / (November 30th, 2013)</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.0 is a new development release.
|
||||
People who are concerned with stability and reliability should stick
|
||||
with a previous release or wait for Mesa 10.0.1.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.0 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
b38626b96c664db67a534d7859682436 MesaLib-10.0.0.tar.gz
|
||||
f3fe55d9735bea158bbe97ed9a0da819 MesaLib-10.0.0.tar.bz2
|
||||
c6ee1ce51e3bf35947d2978b872daf51 MesaLib-10.0.0.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
|
||||
<p>
|
||||
Note: some of the new features are only available with certain drivers.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>GL_AMD_seamless_cubemap_per_texture on i965.</li>
|
||||
<li>GL_ARB_conservative_depth on i965.</li>
|
||||
<li>GL_ARB_texture_gather on i965.</li>
|
||||
<li>GL_ARB_texture_query_levels on i965.</li>
|
||||
<li>GL_ARB_texture_mirror_clamp_to_edge.</li>
|
||||
<li>GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, and GL_ARB_transform_feedback_instanced on i965/Gen7 (with appropriate kernel support).</li>
|
||||
<li>GL_ARB_sample_shading on i965.</li>
|
||||
<li>GL_ARB_shader_atomic_counters on i965.</li>
|
||||
<li>GL_ARB_vertex_attrib_binding</li>
|
||||
<li>GL_ARB_vertex_type_10f_11f_11f_rev on i965 and r600g</li>
|
||||
<li>GL_KHR_debug</li>
|
||||
<li>GLX_MESA_query_renderer</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>Attempts have been made to <b>not</b> include bugs fixed in previous 9.2
|
||||
releases or bugs that were regressions during 10.0 development. This list is
|
||||
likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=47755">Bug 47755</a> - [glsl-compiler] no error checking when Interpolation qualifier for built-in variable is different in vertex and fragment shader</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=52171">Bug 52171</a> - [gallium/r600/clover] Simple benchmarks failed to run</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=53077">Bug 53077</a> - [IVB] Output error with msaa when both of framebuffer and source color's alpha are not 1</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=54867">Bug 54867</a> - bug in r300 compiler</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=60929">Bug 60929</a> - [r600-llvm] mono games with opengl are blocking on start</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=62142">Bug 62142</a> - Mesa/demo mipmap_limits upside down with running by SOFTWARE</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=62698">Bug 62698</a> - [bisected] WebGL demo "Consumed": texstate.c:628: update_texture_state: Assertion „__builtin_popcount(enabledTargets) == 1“ failed.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=64225">Bug 64225</a> - bfgminer --scyte generates Segmentation Fault on Northern Island</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=64226">Bug 64226</a> - python-opencl package generate segmentation fault at pipe_r600.so</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=64261">Bug 64261</a> - [SNB Bisected]Ogles3conform GL3Tests_color_buffer_float_color_buffer_float_clamp_fixed.test fail</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=66213">Bug 66213</a> - Certain Mesa Demos Rendering Inverted (vertically)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=66806">Bug 66806</a> - [softpipe] glxgears floating point exception</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=67921">Bug 67921</a> - [bisected commit 883987] crosscompiling fails with util/u_cpu_detect.c:247:4: error: 'asm' undeclared (first use in this function)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68162">Bug 68162</a> - [radeonsi] texture rendering is broken in Source-Engine games</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68451">Bug 68451</a> - Texture flicker in native Dota2 in mesa 9.2.0rc1</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68503">Bug 68503</a> - Graphical glitches in Serious Sam 3 when SB is enabled</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68792">Bug 68792</a> - Problems during playback of h264 files using UVD and VLC on AMD E-350 CPU</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68845">Bug 68845</a> - VDPAU/UVD regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=69078">Bug 69078</a> - Modern Warfare (1, 2 and 3) broken in Wine on SNB</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=69321">Bug 69321</a> - starting openCL crashes/boots system</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70042">Bug 70042</a> - Major texture flickering in Dota 2 (r600g on HD 6950)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70088">Bug 70088</a> - Glamor on r600g crashes Xserver</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70123">Bug 70123</a> - Freeze caused by 'winsys/radeon: remove cs_queue_empty' commit</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70327">Bug 70327</a> - Casting floating point variable to integer not working properly while constant gets converted properly</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70891">Bug 70891</a> - CL_INVALID_BUILD_OPTIONS results in CL_INVALID_DEVICE when asking for build log</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70913">Bug 70913</a> - [PIGLIT,radeonsi] crash in "spec/EXT_framebuffer_multisample/sample-alpha-to-coverage 4 depth" (buffer overflow)</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71022">Bug 71022</a> - configure: error: Expat required for DRI.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71110">Bug 71110</a> - xorg_driver.c:1030:2: error: too many arguments to function ‘DamageUnregister’</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71172">Bug 71172</a> - Segfault when running glxinfo. NV25GL [Quadro4 900 XGL]</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71512">Bug 71512</a> - dlopen.h:54: undefined reference to `dlopen'</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71870">Bug 71870</a> - Metro: Last Light rendering issues</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<ul>
|
||||
<li>Removed X.Org state tracker (unmaintained and broken)</li>
|
||||
<li>Removed the video-accel r300 targets</li>
|
||||
<li>Removed the video-accel softpipe targets</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,254 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.1.1 Release Notes / April 18, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.1.1 is a bug fix release which fixes bugs found since the 10.1 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.1.1 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
96e63674ccfa98e7ec6eb4fee3f770c3 MesaLib-10.1.1.tar.gz
|
||||
1fde7ed079df7aeb9b6a744ca033de8d MesaLib-10.1.1.tar.bz2
|
||||
e64d0a562638664b13d2edf22321df59 MesaLib-10.1.1.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71547">Bug 71547</a> - compilation failure :#error "SSE4.1 instruction set not enabled"</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74868">Bug 74868</a> - r600g: Diablo III Crashes After a few minutes</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74988">Bug 74988</a> - Buffer overrun (segfault) decompressing ETC2 texture in GLBenchmark 3.0 Manhattan</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=75279">Bug 75279</a> - XCloseDisplay() takes one minute around nouveau_dri.so, freezing Firefox startup</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=75543">Bug 75543</a> - OSMesa Gallium OSMesaMakeCurrent</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=75660">Bug 75660</a> - u_inlines.h:277:pipe_buffer_map_range: Assertion `length' failed.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=76323">Bug 76323</a> - GLSL compiler ignores layout(binding=N) on uniform blocks</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=76377">Bug 76377</a> - DRI3 should only be enabled on Linux due to a udev dependency</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=76749">Bug 76749</a> - [HSW] DOTA world lighting has no effect</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=77102">Bug 77102</a> - gallium nouveau has no profile in vdpau and libva</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=77207">Bug 77207</a> - [ivb/hsw] batch overwritten with garbage</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Aaron Watry (1):</p>
|
||||
<ul>
|
||||
<li>gallium/util: Fix memory leak</li>
|
||||
</ul>
|
||||
|
||||
<p>Alexander von Gluck IV (1):</p>
|
||||
<ul>
|
||||
<li>haiku: Fix build through scons corrections and viewport fixes</li>
|
||||
</ul>
|
||||
|
||||
<p>Anuj Phogat (2):</p>
|
||||
<ul>
|
||||
<li>mesa: Set initial internal format of a texture to GL_RGBA</li>
|
||||
<li>mesa: Allow GL_DEPTH_COMPONENT and GL_DEPTH_STENCIL combinations in glTexImage{123}D()</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (12):</p>
|
||||
<ul>
|
||||
<li>softpipe: use 64-bit arithmetic in softpipe_resource_layout()</li>
|
||||
<li>mesa: don't call ctx->Driver.ClearBufferSubData() if size==0</li>
|
||||
<li>st/osmesa: check buffer size when searching for buffers</li>
|
||||
<li>mesa: fix copy & paste bugs in pack_ubyte_SARGB8()</li>
|
||||
<li>mesa: fix copy & paste bugs in pack_ubyte_SRGB8()</li>
|
||||
<li>c11/threads: don't include assert.h if the assert macro is already defined</li>
|
||||
<li>mesa: fix unpack_Z32_FLOAT_X24S8() / unpack_Z32_FLOAT() mix-up</li>
|
||||
<li>st/mesa: add null pointer checking in query object functions</li>
|
||||
<li>mesa: fix glMultiDrawArrays inside a display list</li>
|
||||
<li>cso: fix sampler view count in cso_set_sampler_views()</li>
|
||||
<li>svga: replace sampler assertion with conditional</li>
|
||||
<li>svga: move LIST_INITHEAD(dirty_buffers) earlier in svga_context_create()</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (3):</p>
|
||||
<ul>
|
||||
<li>cherry-ignore: Ignore a few patches</li>
|
||||
<li>glsl: Allow explicit binding on atomics again</li>
|
||||
<li>Update VERSION to 10.1.1</li>
|
||||
</ul>
|
||||
|
||||
<p>Chia-I Wu (1):</p>
|
||||
<ul>
|
||||
<li>i965/vec4: fix record clearing in copy propagation</li>
|
||||
</ul>
|
||||
|
||||
<p>Christian König (2):</p>
|
||||
<ul>
|
||||
<li>st/mesa: recreate sampler view on context change v3</li>
|
||||
<li>st/mesa: fix sampler view handling with shared textures v4</li>
|
||||
</ul>
|
||||
|
||||
<p>Courtney Goeltzenleuchter (1):</p>
|
||||
<ul>
|
||||
<li>mesa: add bounds checking to eliminate buffer overrun</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (5):</p>
|
||||
<ul>
|
||||
<li>nv50: add missing brackets when handling the samplers array</li>
|
||||
<li>mesa: return v.value_int64 when the requested type is TYPE_INT64</li>
|
||||
<li>configure: enable dri3 only for linux</li>
|
||||
<li>glx: drop obsolete _XUnlock_Mutex in __glXInitialize error path</li>
|
||||
<li>configure: cleanup libudev handling</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>i965: Fix buffer overruns in MSAA MCS buffer clearing.</li>
|
||||
</ul>
|
||||
|
||||
<p>Hans (2):</p>
|
||||
<ul>
|
||||
<li>util: don't define isfinite(), isnan() for MSVC >= 1800</li>
|
||||
<li>mesa: don't define c99 math functions for MSVC >= 1800</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (7):</p>
|
||||
<ul>
|
||||
<li>linker: Split set_uniform_binding into separate functions for blocks and samplers</li>
|
||||
<li>linker: Various trivial clean-ups in set_sampler_binding</li>
|
||||
<li>linker: Fold set_uniform_binding into call site</li>
|
||||
<li>linker: Clean up "unused parameter" warnings</li>
|
||||
<li>linker: Set block bindings based on UniformBlocks rather than UniformStorage</li>
|
||||
<li>linker: Set binding for all elements of UBO array</li>
|
||||
<li>glsl: Propagate explicit binding information from the AST all the way to the linker</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (8):</p>
|
||||
<ul>
|
||||
<li>nouveau: fix fence waiting logic in screen destroy</li>
|
||||
<li>nv50: adjust blit_3d handling of ms output textures</li>
|
||||
<li>loader: add special logic to distinguish nouveau from nouveau_vieux</li>
|
||||
<li>mesa/main: condition GL_DEPTH_STENCIL on ARB_depth_texture</li>
|
||||
<li>nouveau: add forgotten GL_COMPRESSED_INTENSITY to texture format list</li>
|
||||
<li>nouveau: there may not have been a texture if the fbo was incomplete</li>
|
||||
<li>nvc0/ir: move sample id to second source arg to fix sampler2DMS</li>
|
||||
<li>nouveau: fix firmware check on nvd7/nvd9</li>
|
||||
</ul>
|
||||
|
||||
<p>Johannes Nixdorf (1):</p>
|
||||
<ul>
|
||||
<li>configure.ac: fix the detection of expat with pkg-config</li>
|
||||
</ul>
|
||||
|
||||
<p>Jonathan Gray (7):</p>
|
||||
<ul>
|
||||
<li>gallium: add endian detection for OpenBSD</li>
|
||||
<li>loader: use 0 instead of FALSE which isn't defined</li>
|
||||
<li>loader: don't limit the non-udev path to only android</li>
|
||||
<li>megadriver_stub.c: don't use _GNU_SOURCE to gate the compat code</li>
|
||||
<li>egl/dri2: don't require libudev to build drm/wayland platforms</li>
|
||||
<li>egl/dri2: use drm macros to construct device name</li>
|
||||
<li>configure: don't require libudev for gbm or egl drm/wayland</li>
|
||||
</ul>
|
||||
|
||||
<p>José Fonseca (4):</p>
|
||||
<ul>
|
||||
<li>c11/threads: Fix nano to milisecond conversion.</li>
|
||||
<li>mapi/u_thread: Use GetCurrentThreadId</li>
|
||||
<li>c11/threads: Don't implement thrd_current on Windows.</li>
|
||||
<li>draw: Duplicate TGSI tokens in draw_pipe_pstipple module.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (4):</p>
|
||||
<ul>
|
||||
<li>i965/fs: Fix register comparisons in saturate propagation.</li>
|
||||
<li>glsl: Fix lack of i2u in lower_ubo_reference.</li>
|
||||
<li>i965: Stop advertising GL_MESA_ycbcr_texture.</li>
|
||||
<li>glsl: Try vectorizing when seeing a repeated assignment to a channel.</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (13):</p>
|
||||
<ul>
|
||||
<li>r600g: fix texelFetchOffset GLSL functions</li>
|
||||
<li>r600g: fix blitting the last 2 mipmap levels for Evergreen</li>
|
||||
<li>mesa: fix the format of glEdgeFlagPointer</li>
|
||||
<li>r600g,radeonsi: fix MAX_TEXTURE_3D_LEVELS and MAX_TEXTURE_ARRAY_LAYERS limits</li>
|
||||
<li>st/mesa: fix per-vertex edge flags and GLSL support (v2)</li>
|
||||
<li>mesa: mark GL_RGB9_E5 as not color-renderable</li>
|
||||
<li>mesa: fix texture border handling for cube arrays</li>
|
||||
<li>mesa: allow generating mipmaps for cube arrays</li>
|
||||
<li>mesa: fix software fallback for generating mipmaps for cube arrays</li>
|
||||
<li>mesa: fix software fallback for generating mipmaps for 3D textures</li>
|
||||
<li>st/mesa: fix generating mipmaps for cube arrays</li>
|
||||
<li>st/mesa: drop the lowering of quad strips to triangle strips</li>
|
||||
<li>r600g: implement edge flags</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (4):</p>
|
||||
<ul>
|
||||
<li>mesa: Wrap SSE4.1 code in #ifdef __SSE4_1__.</li>
|
||||
<li>i965/fs: Fix off-by-one in saturate propagation.</li>
|
||||
<li>i965/fs: Don't propagate saturate modifiers into partial writes.</li>
|
||||
<li>i965/fs: Don't propagate saturation modifiers if there are source modifiers.</li>
|
||||
</ul>
|
||||
|
||||
<p>Michel Dänzer (1):</p>
|
||||
<ul>
|
||||
<li>r600g: Don't leak bytecode on shader compile failure</li>
|
||||
</ul>
|
||||
|
||||
<p>Mike Stroyan (1):</p>
|
||||
<ul>
|
||||
<li>i965: Avoid dependency hints on math opcodes</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Hellstrom (5):</p>
|
||||
<ul>
|
||||
<li>winsys/svga: Replace the query mm buffer pool with a slab pool v3</li>
|
||||
<li>winsys/svga: Update the vmwgfx_drm.h header to latest version from kernel</li>
|
||||
<li>winsys/svga: Fix prime surface references also for guest-backed surfaces</li>
|
||||
<li>st/xa: Bind destination before setting new state</li>
|
||||
<li>st/xa: Make sure unused samplers are set to NULL</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (1):</p>
|
||||
<ul>
|
||||
<li>configure: Use LLVM shared libraries by default</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,75 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.1 Release Notes / March 4, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.1 is a new development release.
|
||||
People who are concerned with stability and reliability should stick
|
||||
with a previous release or wait for Mesa 10.1.1.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.1 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
3ec43f79dbcd9aa2a4a27bf1f51655b6 MesaLib-10.1.0.tar.bz2
|
||||
08e796ec7122aa299d32d4f67a254315 MesaLib-10.1.0.tar.gz
|
||||
bd365356543f4b38e57c1ddf7a317c40 MesaLib-10.1.0.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
|
||||
<p>
|
||||
Note: some of the new features are only available with certain drivers.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>GL_ARB_draw_indirect on i965.</li>
|
||||
<li>GL_ARB_clear_buffer_object</li>
|
||||
<li>GL_ARB_viewport_array on i965.</li>
|
||||
<li>GL_ARB_map_buffer_alignment on all drivers that did not previously support
|
||||
it.</li>
|
||||
<li>GL_AMD_shader_trinary_minmax.</li>
|
||||
<li>GL_EXT_framebuffer_blit on r200 and radeon.</li>
|
||||
<li>Reduced memory usage for display lists.</li>
|
||||
<li>OpenGL 3.3 support on nv50, nvc0, r600 and radeonsi</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
TBD.
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<ul>
|
||||
<li>Removed support for the GL_MESA_texture_array extension. This extension
|
||||
enabled the use of texture array with fixed-function and assembly fragment
|
||||
shaders. No applications are known to use this extension.</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,61 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.1 Release Notes / June 6, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.1 is a bug fix release which fixes bugs found since the 10.1 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.1 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
96f892dae2d0bb14ac9c2113f586c909 MesaLib-10.2.1.tar.gz
|
||||
093f9b5d077e5f6061dcd7b01b7aa51a MesaLib-10.2.1.tar.bz2
|
||||
6ab76c1608e5deed1eb8b54c62d7a48a MesaLib-10.2.1.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>
|
||||
Mesa 10.2 had a build problem in the radeonsi driver due to an error resolving
|
||||
conflicts in a patch cherry-pick from master. The build error is fixed.
|
||||
</p>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Ian Romanick (3):</p>
|
||||
<ul>
|
||||
<li>docs: Add MD5 checksum, etc. for 10.1 release</li>
|
||||
<li>radeonsi: Fix build error introduced in 5ab9a9c</li>
|
||||
<li>Bump version to 10.2.1</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,181 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.2 Release Notes / June 24, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.2 is a bug fix release which fixes bugs found since the 10.2.1 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.2 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
38c4a40364000f89cddaa1694f6f3cfb444981d1110238ce603093585477399c MesaLib-10.2.2.tar.bz2
|
||||
2af2ec8b4db624c352e961eefbcce6c8d1f86d44c5542f6f378c50e1b958d453 MesaLib-10.2.2.tar.gz
|
||||
d4c0372da59367a344d62ebcdf5cf61039c9cae6925f40f2dab8f8d95cf22da9 MesaLib-10.2.2.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=54372">Bug 54372</a> - GLX_INTEL_swap_event crashes driver when swapping window buffers</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=66452">Bug 66452</a> - JUNIPER UVD accelerated playback of WMV3 streams does not work</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=74005">Bug 74005</a> - [i965 Bisected]Piglit/glx_glx-make-glxdrawable-current fails</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=77865">Bug 77865</a> - [BDW] Many Ogles3conform framebuffer_blit cases fail</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=78581">Bug 78581</a> - OpenCL: clBuildProgram prints error messages directly rather than storing them</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=79029">Bug 79029</a> - INTEL_DEBUG=shader_time is full of lies</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=79729">Bug 79729</a> - [i965] glClear on a multisample texture doesn't work</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=79907">Bug 79907</a> - Mesa 10.2.1 --enable-vdpau default=auto broken</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=80115">Bug 80115</a> - MESA_META_DRAW_BUFFERS induced GL_INVALID_VALUE errors</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Adrian Negreanu (8):</p>
|
||||
<ul>
|
||||
<li>add megadriver_stub_FILES</li>
|
||||
<li>android: adapt to the megadriver mechanism</li>
|
||||
<li>android: add libloader to libGLES_mesa and libmesa_egl_dri2</li>
|
||||
<li>android: add src/gallium/auxiliary as include path for libmesa_dricore</li>
|
||||
<li>android, egl: add correct drm include for libmesa_egl_dri2</li>
|
||||
<li>android, egl: typo dri2_fallback_pixmap_surface -> dri2_fallback_create_pixmap_surface</li>
|
||||
<li>android, mesa_gen_matypes: pull in timespec POSIX definition</li>
|
||||
<li>android, dricore: undefined reference to _mesa_streaming_load_memcpy</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (1):</p>
|
||||
<ul>
|
||||
<li>Update VERSION to 10.2.2</li>
|
||||
</ul>
|
||||
|
||||
<p>Daniel Manjarres (1):</p>
|
||||
<ul>
|
||||
<li>glx: Don't crash on swap event for a Window (non-GLXWindow)</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (3):</p>
|
||||
<ul>
|
||||
<li>targets/xa: limit the amount of exported symbols</li>
|
||||
<li>configure: error out when building opencl without LLVM</li>
|
||||
<li>configure: correctly autodetect xvmc/vdpau/omx</li>
|
||||
</ul>
|
||||
|
||||
<p>Grigori Goronzy (1):</p>
|
||||
<ul>
|
||||
<li>radeon/uvd: disable VC-1 simple/main on UVD 2.x</li>
|
||||
</ul>
|
||||
|
||||
<p>Iago Toral Quiroga (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Copy Geom.UsesEndPrimitive when cloning a geometry program.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (3):</p>
|
||||
<ul>
|
||||
<li>docs: Add initial 10.2.1 release notes</li>
|
||||
<li>docs: Add MD5 checksum, etc. for 10.2.1 release</li>
|
||||
<li>meta: Respect the driver's maximum number of draw buffers</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (7):</p>
|
||||
<ul>
|
||||
<li>gk110/ir: emit saturate flag on fadd when needed</li>
|
||||
<li>gk110/ir: fix emitting constbuf file index</li>
|
||||
<li>gk110/ir: fix bfind emission</li>
|
||||
<li>nv50: make sure to mark first scissor dirty after blit</li>
|
||||
<li>nv30: plug some memory leaks on screen destroy and shader compile</li>
|
||||
<li>nv30: avoid dangling references to deleted contexts</li>
|
||||
<li>nv30: hack to avoid errors on unexpected color/zeta combinations</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (1):</p>
|
||||
<ul>
|
||||
<li>meta_blit: properly compute texture width for the CopyTexSubImage fallback</li>
|
||||
</ul>
|
||||
|
||||
<p>José Fonseca (1):</p>
|
||||
<ul>
|
||||
<li>mesa/main: Prevent sefgault on glGetIntegerv(GL_ATOMIC_COUNTER_BUFFER_BINDING).</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (9):</p>
|
||||
<ul>
|
||||
<li>i965: Don't use the head sentinel as an fs_inst in Gen4 workaround code.</li>
|
||||
<li>i965: Invalidate live intervals when inserting Gen4 SEND workarounds.</li>
|
||||
<li>i965/vec4: Fix dead code elimination for VGRFs of size > 1.</li>
|
||||
<li>i965: Add missing MOCS setup for 3DSTATE_INDEX_BUFFER on Broadwell.</li>
|
||||
<li>i965: Drop Broadwell perf_debugs about missing MOCS that aren't missing.</li>
|
||||
<li>i965: Add missing newlines to a few perf_debug messages.</li>
|
||||
<li>i965/vec4: Use the sampler for pull constant loads on Broadwell.</li>
|
||||
<li>i965: Use 8x4 aligned rectangles for HiZ operations on Broadwell.</li>
|
||||
<li>i965: Save meta stencil blit programs in the context.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kristian Høgsberg (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Remove glClear optimization based on drawable size</li>
|
||||
</ul>
|
||||
|
||||
<p>Michel Dänzer (1):</p>
|
||||
<ul>
|
||||
<li>configure: Only check for OpenCL without LLVM when the latter is certain</li>
|
||||
</ul>
|
||||
|
||||
<p>Neil Roberts (1):</p>
|
||||
<ul>
|
||||
<li>i965: Set the fast clear color value for texture surfaces</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (2):</p>
|
||||
<ul>
|
||||
<li>clover: Prevent Clang from printing number of errors and warnings to stderr.</li>
|
||||
<li>clover: Don't use llvm's global context</li>
|
||||
</ul>
|
||||
|
||||
<p>Ville Syrjälä (1):</p>
|
||||
<ul>
|
||||
<li>i915: Fix gen2 texblend setup</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,130 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.3 Release Notes / July 7, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.3 is a bug fix release which fixes bugs found since the 10.2.2 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.3 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
e482a96170c98b17d6aba0d6e4dda4b9a2e61c39587bb64ac38cadfa4aba4aeb MesaLib-10.2.3.tar.bz2
|
||||
96cffacaa1c52ae659b3b0f91be2eebf5528b748934256751261fb79ea3d6636 MesaLib-10.2.3.tar.gz
|
||||
82cab6ff14c8038ee39842dbdea0d447a78d119efd8d702d1497bc7c246434e9 MesaLib-10.2.3.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=76223">Bug 76223</a> - </li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=79823">Bug 79823</a> - </li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=80015">Bug 80015</a> - </li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Aaron Watry (1):</p>
|
||||
<ul>
|
||||
<li>radeon/llvm: Allocate space for kernel metadata operands</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (2):</p>
|
||||
<ul>
|
||||
<li>docs: Add sha256 sums for the 10.2.2 release</li>
|
||||
<li>cherry-ignore: Add a patch that's been rejected</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (4):</p>
|
||||
<ul>
|
||||
<li>nouveau: dup fd before passing it to device</li>
|
||||
<li>nv50: disable dedicated ubo upload method</li>
|
||||
<li>nv50: do an explicit flush on draw when there are persistent buffers</li>
|
||||
<li>nvc0: add a memory barrier when there are persistent UBOs</li>
|
||||
</ul>
|
||||
|
||||
<p>Jasper St. Pierre (1):</p>
|
||||
<ul>
|
||||
<li>glxext: Send the Drawable's ID in the GLX_BufferSwapComplete event</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (3):</p>
|
||||
<ul>
|
||||
<li>i965: Don't emit SURFACE_STATEs for gather workarounds on Broadwell.</li>
|
||||
<li>i965: Include marketing names for Broadwell GPUs.</li>
|
||||
<li>i965/disasm: Fix INTEL_DEBUG=fs on Broadwell for ARB_fp applications.</li>
|
||||
</ul>
|
||||
|
||||
<p>Michel Dänzer (1):</p>
|
||||
<ul>
|
||||
<li>radeon/llvm: Use the llvm.rsq.clamped intrinsic for RSQ</li>
|
||||
</ul>
|
||||
|
||||
<p>Rob Clark (9):</p>
|
||||
<ul>
|
||||
<li>xa: fix segfault</li>
|
||||
<li>freedreno: use OUT_RELOCW when buffer is written</li>
|
||||
<li>freedreno/a3xx: fix depth/stencil GMEM positioning</li>
|
||||
<li>freedreno/a3xx: fix depth/stencil gmem restore</li>
|
||||
<li>freedreno/a3xx: fix blend opcode</li>
|
||||
<li>freedreno: few caps fixes</li>
|
||||
<li>freedreno/a3xx: texture fixes</li>
|
||||
<li>freedreno: fix for null textures</li>
|
||||
<li>freedreno/a3xx: vtx formats</li>
|
||||
</ul>
|
||||
|
||||
<p>Roland Scheidegger (1):</p>
|
||||
<ul>
|
||||
<li>draw: (trivial) fix clamping of viewport index</li>
|
||||
</ul>
|
||||
|
||||
<p>Takashi Iwai (1):</p>
|
||||
<ul>
|
||||
<li>llvmpipe: Fix zero-division in llvmpipe_texture_layout()</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Hellstrom (1):</p>
|
||||
<ul>
|
||||
<li>st/xa: Don't close the drm fd on failure v2</li>
|
||||
</ul>
|
||||
|
||||
<p>Tobias Klausmann (1):</p>
|
||||
<ul>
|
||||
<li>nv50/ir: allow gl_ViewportIndex to work on non-provoking vertices</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,127 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.4 Release Notes / July 18, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.4 is a bug fix release which fixes bugs found since the 10.2.3 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.4 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
06a2341244eb85c283f59f70161e06ded106f835ed9b6be1ef0243bd9344811a MesaLib-10.2.4.tar.bz2
|
||||
33e3c8b4343503e7d7d17416c670438860a2fd99ec93ea3327f73c3abe33b5e4 MesaLib-10.2.4.tar.gz
|
||||
e26791a4a62a61b82e506e6ba031812d09697d1a831e8239af67e5722a8ee538 MesaLib-10.2.4.zip
|
||||
</pre>
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=81157">Bug 81157</a> - [BDW]Piglit some spec_glsl-1.50_execution_built-in-functions* cases fail</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Abdiel Janulgue (3):</p>
|
||||
<ul>
|
||||
<li>i965/fs: Refactor check for potential copy propagated instructions.</li>
|
||||
<li>i965/fs: skip copy-propate for logical instructions with negated src entries</li>
|
||||
<li>i965/vec4: skip copy-propate for logical instructions with negated src entries</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (3):</p>
|
||||
<ul>
|
||||
<li>mesa: fix geometry shader memory leaks</li>
|
||||
<li>st/mesa: fix geometry shader memory leak</li>
|
||||
<li>gallium/u_blitter: fix some shader memory leaks</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (2):</p>
|
||||
<ul>
|
||||
<li>docs: Add sha256 checksums for the 10.2.3 release</li>
|
||||
<li>Update VERSION to 10.2.4</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>i965: Generalize the pixel_x/y workaround for all UW types.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (4):</p>
|
||||
<ul>
|
||||
<li>nv50/ir: retrieve shadow compare from first arg</li>
|
||||
<li>nv50/ir: ignore bias for samplerCubeShadow on nv50</li>
|
||||
<li>nvc0/ir: do quadops on the right texture coordinates for TXD</li>
|
||||
<li>nvc0/ir: use manual TXD when offsets are involved</li>
|
||||
</ul>
|
||||
|
||||
<p>Jordan Justen (1):</p>
|
||||
<ul>
|
||||
<li>i965: Add auxiliary surface field #defines for Broadwell.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (9):</p>
|
||||
<ul>
|
||||
<li>i965: Don't copy propagate abs into Broadwell logic instructions.</li>
|
||||
<li>i965: Set execution size to 8 for instructions with force_sechalf set.</li>
|
||||
<li>i965/fs: Set force_uncompressed and force_sechalf on samplepos setup.</li>
|
||||
<li>i965/fs: Use WE_all for gl_SampleID header register munging.</li>
|
||||
<li>i965: Add plumbing for Broadwell's auxiliary surface support.</li>
|
||||
<li>i965: Drop SINT workaround for CMS layout on Broadwell.</li>
|
||||
<li>i965: Hook up the MCS buffers in SURFACE_STATE on Broadwell.</li>
|
||||
<li>i965: Add 2x MSAA support to the MCS allocation function.</li>
|
||||
<li>i965: Enable compressed multisample support (CMS) on Broadwell.</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (4):</p>
|
||||
<ul>
|
||||
<li>gallium: fix u_default_transfer_inline_write for textures</li>
|
||||
<li>st/mesa: fix samplerCubeShadow with bias</li>
|
||||
<li>radeonsi: fix samplerCubeShadow with bias</li>
|
||||
<li>radeonsi: add support for TXB2</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (8):</p>
|
||||
<ul>
|
||||
<li>i965/vec4: Don't return void from a void function.</li>
|
||||
<li>i965/vec4: Don't fix_math_operand() on Gen >= 8.</li>
|
||||
<li>i965/fs: Don't fix_math_operand() on Gen >= 8.</li>
|
||||
<li>i965/fs: Make try_constant_propagate() static.</li>
|
||||
<li>i965/fs: Constant propagate into 2-src math instructions on Gen8.</li>
|
||||
<li>i965/vec4: Constant propagate into 2-src math instructions on Gen8.</li>
|
||||
<li>i965/fs: Don't use brw_imm_* unnecessarily.</li>
|
||||
<li>i965/fs: Set correct number of regs_written for MCS fetches.</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,188 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.5 Release Notes / August 2, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.5 is a bug fix release which fixes bugs found since the 10.2.4 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.5 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
b4459f0bf7f4a3c8fb78ece3c9d2eac3d0e5bf38cb470f2a72705e744bd0310d MesaLib-10.2.5.tar.bz2
|
||||
7b4dd0cb683f8c7dc48a3e7a315742bed58ddcd7b756c462aca4177bd1acdc79 MesaLib-10.2.5.tar.gz
|
||||
6180565914fb238dd77ccdaff96b6155d9a6e1b3e981ebbf6a6851301b384fed MesaLib-10.2.5.zip
|
||||
</pre>
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=80991">Bug 80991</a> - [BDW]Piglit spec_ARB_sample_shading_builtin-gl-sample-mask_2 fails</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Abdiel Janulgue (3):</p>
|
||||
<ul>
|
||||
<li>i965/fs: Refactor check for potential copy propagated instructions.</li>
|
||||
<li>i965/fs: skip copy-propate for logical instructions with negated src entries</li>
|
||||
<li>i965/vec4: skip copy-propate for logical instructions with negated src entries</li>
|
||||
</ul>
|
||||
|
||||
<p>Adel Gadllah (1):</p>
|
||||
<ul>
|
||||
<li>i915: Fix up intelInitScreen2 for DRI3</li>
|
||||
</ul>
|
||||
|
||||
<p>Anuj Phogat (2):</p>
|
||||
<ul>
|
||||
<li>i965: Fix z_offset computation in intel_miptree_unmap_depthstencil()</li>
|
||||
<li>mesa: Don't use memcpy() in _mesa_texstore() for float depth texture data</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (3):</p>
|
||||
<ul>
|
||||
<li>mesa: fix geometry shader memory leaks</li>
|
||||
<li>st/mesa: fix geometry shader memory leak</li>
|
||||
<li>gallium/u_blitter: fix some shader memory leaks</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (6):</p>
|
||||
<ul>
|
||||
<li>docs: Add sha256 checksums for the 10.2.3 release</li>
|
||||
<li>Update VERSION to 10.2.4</li>
|
||||
<li>Add release notes for 10.2.4</li>
|
||||
<li>docs: Add SHA256 checksums for the 10.2.4 release</li>
|
||||
<li>cherry-ignore: Ignore a few patches picked in the previous stable release</li>
|
||||
<li>Update version to 10.2.5</li>
|
||||
</ul>
|
||||
|
||||
<p>Christian König (1):</p>
|
||||
<ul>
|
||||
<li>radeonsi: fix order of r600_need_dma_space and r600_context_bo_reloc</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>i965: Generalize the pixel_x/y workaround for all UW types.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (2):</p>
|
||||
<ul>
|
||||
<li>mesa: Don't allow GL_TEXTURE_BORDER queries outside compat profile</li>
|
||||
<li>mesa: Don't allow GL_TEXTURE_{LUMINANCE,INTENSITY}_* queries outside compat profile</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (5):</p>
|
||||
<ul>
|
||||
<li>nv50/ir: retrieve shadow compare from first arg</li>
|
||||
<li>nv50/ir: ignore bias for samplerCubeShadow on nv50</li>
|
||||
<li>nvc0/ir: do quadops on the right texture coordinates for TXD</li>
|
||||
<li>nvc0/ir: use manual TXD when offsets are involved</li>
|
||||
<li>nvc0: make sure that the local memory allocation is aligned to 0x10</li>
|
||||
</ul>
|
||||
|
||||
<p>Jason Ekstrand (2):</p>
|
||||
<ul>
|
||||
<li>main/format_pack: Fix a wrong datatype in pack_ubyte_R8G8_UNORM</li>
|
||||
<li>main/get_hash_params: Add GL_SAMPLE_SHADING_ARB</li>
|
||||
</ul>
|
||||
|
||||
<p>Jordan Justen (1):</p>
|
||||
<ul>
|
||||
<li>i965: Add auxiliary surface field #defines for Broadwell.</li>
|
||||
</ul>
|
||||
|
||||
<p>José Fonseca (1):</p>
|
||||
<ul>
|
||||
<li>st/wgl: Clamp wglChoosePixelFormatARB's output nNumFormats to nMaxFormats.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (13):</p>
|
||||
<ul>
|
||||
<li>i965: Don't copy propagate abs into Broadwell logic instructions.</li>
|
||||
<li>i965: Set execution size to 8 for instructions with force_sechalf set.</li>
|
||||
<li>i965/fs: Set force_uncompressed and force_sechalf on samplepos setup.</li>
|
||||
<li>i965/fs: Use WE_all for gl_SampleID header register munging.</li>
|
||||
<li>i965: Add plumbing for Broadwell's auxiliary surface support.</li>
|
||||
<li>i965: Drop SINT workaround for CMS layout on Broadwell.</li>
|
||||
<li>i965: Hook up the MCS buffers in SURFACE_STATE on Broadwell.</li>
|
||||
<li>i965: Add 2x MSAA support to the MCS allocation function.</li>
|
||||
<li>i965: Enable compressed multisample support (CMS) on Broadwell.</li>
|
||||
<li>i965: Add missing persample_shading field to brw_wm_debug_recompile.</li>
|
||||
<li>i965/fs: Fix gl_SampleID for 2x MSAA and SIMD16 mode.</li>
|
||||
<li>i965/fs: Fix gl_SampleMask handling for SIMD16 on Gen8+.</li>
|
||||
<li>i965/fs: Set LastRT on the final FB write on Broadwell.</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (14):</p>
|
||||
<ul>
|
||||
<li>gallium: fix u_default_transfer_inline_write for textures</li>
|
||||
<li>st/mesa: fix samplerCubeShadow with bias</li>
|
||||
<li>radeonsi: fix samplerCubeShadow with bias</li>
|
||||
<li>radeonsi: add support for TXB2</li>
|
||||
<li>r600g: switch SNORM conversion to DX and GLES behavior</li>
|
||||
<li>radeonsi: fix CMASK and HTILE calculations for Hawaii</li>
|
||||
<li>gallium/util: add a helper for calculating primitive count from vertex count</li>
|
||||
<li>radeonsi: fix a hang with instancing on Hawaii</li>
|
||||
<li>radeonsi: fix a hang with streamout on Hawaii</li>
|
||||
<li>winsys/radeon: fix vram_size overflow with Hawaii</li>
|
||||
<li>radeonsi: fix occlusion queries on Hawaii</li>
|
||||
<li>r600g,radeonsi: switch all occurences of array_size to util_max_layer</li>
|
||||
<li>radeonsi: fix build because of lack of draw_indirect infrastructure in 10.2</li>
|
||||
<li>radeonsi: use DRAW_PREAMBLE on CIK</li>
|
||||
</ul>
|
||||
|
||||
<p>Matt Turner (8):</p>
|
||||
<ul>
|
||||
<li>i965/vec4: Don't return void from a void function.</li>
|
||||
<li>i965/vec4: Don't fix_math_operand() on Gen >= 8.</li>
|
||||
<li>i965/fs: Don't fix_math_operand() on Gen >= 8.</li>
|
||||
<li>i965/fs: Make try_constant_propagate() static.</li>
|
||||
<li>i965/fs: Constant propagate into 2-src math instructions on Gen8.</li>
|
||||
<li>i965/vec4: Constant propagate into 2-src math instructions on Gen8.</li>
|
||||
<li>i965/fs: Don't use brw_imm_* unnecessarily.</li>
|
||||
<li>i965/fs: Set correct number of regs_written for MCS fetches.</li>
|
||||
</ul>
|
||||
|
||||
<p>Thorsten Glaser (1):</p>
|
||||
<ul>
|
||||
<li>nv50: fix build failure on m68k due to invalid struct alignment assumptions</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (1):</p>
|
||||
<ul>
|
||||
<li>clover: Call end_query before getting timestamp result v2</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,118 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.6 Release Notes / August 19, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.6 is a bug fix release which fixes bugs found since the 10.2.5 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.6 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
193314d2adba98e43697d726739ac46b4299aae324fa1821aa226890c28ac806 MesaLib-10.2.6.tar.bz2
|
||||
f7a45a5977b485eb95ac024205c584a0c112fe3951c2313c797579bb16a7a448 MesaLib-10.2.6.tar.gz
|
||||
6d086d6fcda8f317adfaaae40011decf2f2e2dc80819c4a7a77c76f73512e8d8 MesaLib-10.2.6.zip
|
||||
</pre>
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=81450">Bug 81450</a> - [BDW]Piglit spec_glsl-1.30_execution_tex-miplevel-selection_textureGrad_1DArray cases intel_do_flush_locked failed</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Anuj Phogat (15):</p>
|
||||
<ul>
|
||||
<li>mesa: Fix error condition for valid texture targets in glTexStorage* functions</li>
|
||||
<li>mesa: Turn target_can_be_compressed() in to a utility function</li>
|
||||
<li>mesa: Add error condition for using compressed internalformat in glTexStorage3D()</li>
|
||||
<li>mesa: Fix condition for using compressed internalformat in glCompressedTexImage3D()</li>
|
||||
<li>mesa: Add utility function _mesa_is_enum_format_snorm()</li>
|
||||
<li>mesa: Don't allow snorm internal formats in glCopyTexImage*() in GLES3</li>
|
||||
<li>mesa: Add a helper function _mesa_is_enum_format_unsized()</li>
|
||||
<li>mesa: Add a gles3 error condition for sized internalformat in glCopyTexImage*()</li>
|
||||
<li>mesa: Add gles3 error condition for GL_RGBA10_A2 buffer format in glCopyTexImage*()</li>
|
||||
<li>mesa: Add utility function _mesa_is_enum_format_unorm()</li>
|
||||
<li>mesa: Add gles3 condition for normalized internal formats in glCopyTexImage*()</li>
|
||||
<li>mesa: Allow GL_TEXTURE_CUBE_MAP target with compressed internal formats</li>
|
||||
<li>meta: Use _mesa_get_format_bits() to get the GL_RED_BITS</li>
|
||||
<li>egl: Fix OpenGL ES version checks in _eglParseContextAttribList()</li>
|
||||
<li>meta: Fix datatype computation in get_temp_image_type()</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (1):</p>
|
||||
<ul>
|
||||
<li>mesa: fix assertion in _mesa_drawbuffers()</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (2):</p>
|
||||
<ul>
|
||||
<li>docs: Add sha256 sums to the 10.2.5 release notes</li>
|
||||
<li>Update VERSION to 10.2.6</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (1):</p>
|
||||
<ul>
|
||||
<li>mesa/st: only convert AND(a, NOT(b)) into MAD when not using native integers</li>
|
||||
</ul>
|
||||
|
||||
<p>Jordan Justen (1):</p>
|
||||
<ul>
|
||||
<li>i965/miptree: Layout 1D Array as 2D Array with height of 1</li>
|
||||
</ul>
|
||||
|
||||
<p>Maarten Lankhorst (1):</p>
|
||||
<ul>
|
||||
<li>configure.ac: Do not require llvm on x32</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (4):</p>
|
||||
<ul>
|
||||
<li>st/mesa: fix blit-based partial TexSubImage for 1D arrays</li>
|
||||
<li>radeon,r200: fix buffer validation after CS flush</li>
|
||||
<li>radeonsi: fix a hang with instancing in Unigine Heaven/Valley on Hawaii</li>
|
||||
<li>radeonsi: fix CMASK and HTILE allocation on Tahiti</li>
|
||||
</ul>
|
||||
|
||||
<p>Pali Rohár (1):</p>
|
||||
<ul>
|
||||
<li>configure: check for dladdr via AC_CHECK_FUNC/AC_CHECK_LIB</li>
|
||||
</ul>
|
||||
|
||||
<p>Roland Scheidegger (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: fix up out-of-bounds level when using conformant out-of-bound behavior</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,211 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.7 Release Notes / September 06, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.7 is a bug fix release which fixes bugs found since the 10.2.6 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.7 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
cb67dfaabf88acba29aa2cf0dd58ee17b21ebf9594f8d1226c41794da8de3e9d MesaLib-10.2.7.tar.gz
|
||||
27b958063a4c002071f14ed45c7d2a1ee52cd85e4ac8876e8a1c273495a7d43f MesaLib-10.2.7.tar.bz2
|
||||
a2796a2d5bbbc2edd22857ecc267cba68dfe5d0296f5d84ba7510877b216cc40 MesaLib-10.2.7.zip
|
||||
</pre>
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36193">Bug 36193</a> - [i965] brw_eu_emit.c:182: validate_reg: Assertion `execsize >= width' failed.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=66184">Bug 66184</a> - src/mesa/state_tracker/st_glsl_to_tgsi.cpp:3216:simplify_cmp: Assertion `inst->dst.index < 4096' failed.</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70441">Bug 70441</a> - [Gen4-5 clip] Piglit spec_OpenGL_1.1_polygon-offset hits (execsize >= width) assertion</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=76188">Bug 76188</a> - EGL_EXT_image_dma_buf_import fd ownership is incorrect</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=76789">Bug 76789</a> - [radeonsi] si_descriptors.c requires -std=gnu99 or -fms-extensions</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=82139">Bug 82139</a> - [r600g, bisected] multiple ubo piglit regressions</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=82255">Bug 82255</a> - [VP2] Chroma planes are vertically stretched during VDPAU playback</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=82671">Bug 82671</a> - [r600g-evergreen][compute]Empty kernel execution causes crash</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=82709">Bug 82709</a> - OpenCL not working on radeon hainan</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=82814">Bug 82814</a> - glDrawBuffers(0, NULL) segfaults in _mesa_drawbuffers</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=83079">Bug 83079</a> - [NVC0] Dota 2 (Linux native and Wine) crash with Nouveau Drivers</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=83355">Bug 83355</a> - FTBFS: src/mesa/program/program_lexer.l:122:64: error: unknown type name 'YYSTYPE'</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Adam Jackson (1):</p>
|
||||
<ul>
|
||||
<li>radeonsi: Don't use anonymous struct trick in atom tracking</li>
|
||||
</ul>
|
||||
|
||||
<p>Alex Deucher (2):</p>
|
||||
<ul>
|
||||
<li>radeonsi: add new CIK pci ids</li>
|
||||
<li>radeonsi: add new SI pci ids</li>
|
||||
</ul>
|
||||
|
||||
<p>Andreas Boll (1):</p>
|
||||
<ul>
|
||||
<li>winsys/radeon: fix nop packet padding for hawaii</li>
|
||||
</ul>
|
||||
|
||||
<p>Anuj Phogat (1):</p>
|
||||
<ul>
|
||||
<li>i965: Bail on vec4 copy propagation for scratch writes with source modifiers</li>
|
||||
</ul>
|
||||
|
||||
<p>Brian Paul (1):</p>
|
||||
<ul>
|
||||
<li>mesa: fix NULL pointer deref bug in _mesa_drawbuffers()</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (2):</p>
|
||||
<ul>
|
||||
<li>docs: Add sha256 sums for the 10.2.6 release</li>
|
||||
<li>Makefile: Switch from md5sums to sha256sums</li>
|
||||
</ul>
|
||||
|
||||
<p>Dave Airlie (1):</p>
|
||||
<ul>
|
||||
<li>i965: add missing parens in vec4 visitor</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (17):</p>
|
||||
<ul>
|
||||
<li>configure.ac: bail out if building gallium_gbm without gallium_egl</li>
|
||||
<li>android: gallium/nouveau: fix include folders, link against libstlport</li>
|
||||
<li>android: egl/main: fixup the nouveau build</li>
|
||||
<li>automake: gallium/freedreno: drop spurious include dirs</li>
|
||||
<li>android: gallium/freedreno: add preliminary build</li>
|
||||
<li>android: egl/main: add/enable freedreno</li>
|
||||
<li>android: gallium/auxiliary: drop log2/log2f redefitions</li>
|
||||
<li>android: drop HAL_PIXEL_FORMAT_RGBA_{5551,4444}</li>
|
||||
<li>android: glsl: the stlport over the limited Android STL</li>
|
||||
<li>android: dri/i915: do not build an 'empty' driver</li>
|
||||
<li>cherry-ignore: remove patch that lacking previous dependencies</li>
|
||||
<li>cherry-ignore: PIPE_SHADER_CAP_MAX_CONST_BUFFER_SIZE is not it 10.2</li>
|
||||
<li>cherry-ignore: drop whitespace fix</li>
|
||||
<li>cherry-ignore: reject a15088338eb</li>
|
||||
<li>get-pick-list.sh: Require explicit "10.2" for nominating stable patches</li>
|
||||
<li>mesa: fix make tarballs</li>
|
||||
<li>Update VERSION to 10.2.7</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Handle uninitialized textures like other textures in get_tex_level_parameter_image</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (9):</p>
|
||||
<ul>
|
||||
<li>nouveau: make sure to invalidate any vbo state as well</li>
|
||||
<li>nouveau: don't keep stale pointer to free'd data</li>
|
||||
<li>nvc0/ir: avoid infinite recursion when finding first uses of tex</li>
|
||||
<li>nv50: zero out unbound samplers</li>
|
||||
<li>nvc0: don't make 1d staging textures linear</li>
|
||||
<li>nv50/ir: avoid creating instructions that can't be emitted</li>
|
||||
<li>nv50: set the miptree address when clearing bo's in vp2 init</li>
|
||||
<li>nv50: mt address may not be the underlying bo's start address</li>
|
||||
<li>nv50: attach the buffer bo to the miptree structures</li>
|
||||
</ul>
|
||||
|
||||
<p>Jan Vesely (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: Fix build with latest LLVM</li>
|
||||
</ul>
|
||||
|
||||
<p>José Fonseca (1):</p>
|
||||
<ul>
|
||||
<li>mesa: Move declaration to top of block.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (3):</p>
|
||||
<ul>
|
||||
<li>i965/vec4: Set NoMask for GS_OPCODE_SET_VERTEX_COUNT on Gen8+.</li>
|
||||
<li>i965/vec4: Respect ir->force_writemask_all in Gen8 code generation.</li>
|
||||
<li>i965/clip: Fix brw_clip_unfilled.c/compute_offset's assembly.</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (3):</p>
|
||||
<ul>
|
||||
<li>r600g: fix constant buffer fetches</li>
|
||||
<li>radeonsi: save scissor state and sample mask for u_blitter</li>
|
||||
<li>glsl_to_tgsi: allocate and enlarge arrays for temporaries on demand</li>
|
||||
</ul>
|
||||
|
||||
<p>Paulo Sergio Travaglia (2):</p>
|
||||
<ul>
|
||||
<li>android: gallium/radeon: attempt to fix the android build</li>
|
||||
<li>android: egl/main: resolve radeon linking issues</li>
|
||||
</ul>
|
||||
|
||||
<p>Pekka Paalanen (1):</p>
|
||||
<ul>
|
||||
<li>egl_dri2: fix EXT_image_dma_buf_import fds</li>
|
||||
</ul>
|
||||
|
||||
<p>Robert Bragg (1):</p>
|
||||
<ul>
|
||||
<li>meta: save and restore swizzle for _GenerateMipmap</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (7):</p>
|
||||
<ul>
|
||||
<li>radeon/compute: Fix reported values for MAX_GLOBAL_SIZE and MAX_MEM_ALLOC_SIZE</li>
|
||||
<li>radeonsi/compute: Update reference counts for buffers in si_set_global_binding()</li>
|
||||
<li>radeonsi/compute: Call si_pm4_free_state() after emitting compute state</li>
|
||||
<li>clover: Flush the command queue in clReleaseCommandQueue()</li>
|
||||
<li>radeon: Add work-around for missing Hainan support in clang < 3.6 v2</li>
|
||||
<li>pipe-loader: Fix memory leak v2</li>
|
||||
<li>r600g/compute: Don't initialize vertex_buffer_state masks to 0x2</li>
|
||||
</ul>
|
||||
|
||||
<p>Vinson Lee (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: Fix build with LLVM >= 3.6 r215967.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,130 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.8 Release Notes / September 19, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.8 is a bug fix release which fixes bugs found since the 10.2.7 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.8 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
4c5a25ccaf1a9734bbd10d62a1420cc8fd35a1060ce679f2fc846769a25fbeec MesaLib-10.2.8.tar.gz
|
||||
1ef9ad3f241788d454f2ff8c9d65b6849dfc31c8fe91f70fd2930b81c8af1398 MesaLib-10.2.8.tar.bz2
|
||||
d26218da3b44734b1d555267b4c63c48803c4c8b14d2bc53071be57014da37fa MesaLib-10.2.8.zip
|
||||
</pre>
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=77493">Bug 77493</a> - lp_test_arit fails with llvm >= llvm-3.5svn r206094</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=82539">Bug 82539</a> - vmw_screen_dri.lo In file included from vmw_screen_dri.c:41: vmwgfx_drm.h:32:17: error: drm.h: No such file or directory</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=82882">Bug 82882</a> - [swrast] piglit glsl-fs-uniform-bool-1 regression</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=83432">Bug 83432</a> - r600_query.c:269:r600_emit_query_end: Assertion `ctx->num_pipelinestat_queries > 0' failed [Gallium HUD]</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=83567">Bug 83567</a> - Mesa 10.2.6 does not compile with llvm 3.5</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=83735">Bug 83735</a> - [mesa-10.2.x] broken with llvm-3.5 and old CPUs</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
<p>Aaron Watry (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: Fix build after LLVM commit 211259</li>
|
||||
</ul>
|
||||
|
||||
<p>Christoph Bumiller (2):</p>
|
||||
<ul>
|
||||
<li>nv50/ir/util: fix BitSet issues</li>
|
||||
<li>nvc0/ir: clarify recursion fix to finding first tex uses</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (3):</p>
|
||||
<ul>
|
||||
<li>docs: Add sha256 sums for the 10.2.7 release</li>
|
||||
<li>configure: bail out if building svga without libdrm</li>
|
||||
<li>Update VERSION to 10.2.8</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (4):</p>
|
||||
<ul>
|
||||
<li>nv50/ir: avoid array overrun when checking for supported mods</li>
|
||||
<li>nouveau: only enable the depth test if there actually is a depth buffer</li>
|
||||
<li>nouveau: only enable stencil func if the visual has stencil bits</li>
|
||||
<li>nouveau: change internal variables to avoid conflicts with macro args</li>
|
||||
</ul>
|
||||
|
||||
<p>Jonathan Gray (1):</p>
|
||||
<ul>
|
||||
<li>configure.ac: strip _GNU_SOURCE from llvm-config output</li>
|
||||
</ul>
|
||||
|
||||
<p>José Fonseca (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: Disable workaround for PR12833 on LLVM 3.2+.</li>
|
||||
</ul>
|
||||
|
||||
<p>Maarten Lankhorst (4):</p>
|
||||
<ul>
|
||||
<li>nouveau: re-allocate bo's on overflow</li>
|
||||
<li>nouveau: fix MPEG4 hw decoding</li>
|
||||
<li>nouveau: rework reference frame handling</li>
|
||||
<li>nouveau: remove unneeded assert</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (3):</p>
|
||||
<ul>
|
||||
<li>r600g,radeonsi: make sure there's enough CS space before resuming queries</li>
|
||||
<li>mesa: set UniformBooleanTrue = 1.0f by default</li>
|
||||
<li>st/mesa: use 1.0f as boolean true on drivers without integer support</li>
|
||||
</ul>
|
||||
|
||||
<p>Richard Sandiford (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: Fix uses of 2^24</li>
|
||||
</ul>
|
||||
|
||||
<p>Roland Scheidegger (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: set mcpu when initializing llvm execution engine</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Hellstrom (1):</p>
|
||||
<ul>
|
||||
<li>winsys/svga: Fix incorrect type usage in IOCTL v2</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,101 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2.9 Release Notes / October 12, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2.9 is a bug fix release which fixes bugs found since the 10.2.8 release.
|
||||
This is the final planned release for the 10.2 branch.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2.9 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
<h2>SHA256 checksums</h2>
|
||||
<pre>
|
||||
f8d62857eed8f604a57710c58a8ffcfb8dab2dc4977ec27c956c7c4fd14032f6 MesaLib-10.2.9.tar.gz
|
||||
f6031f8b7113a92325b60635c504c510490eebb2e707119bbff7bd86aa34657d MesaLib-10.2.9.tar.bz2
|
||||
11c0ef4f3308fc29d9f15a77fd8f4842a946fce9e830250a1c95b171a446171a MesaLib-10.2.9.zip
|
||||
</pre>
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=79462">Bug 79462</a> - [NVC0/Codegen] Shader compilation falis in spill logic</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=83570">Bug 83570</a> - Glyphy demo throws unhandled Integer division by zero exception</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
<p>Andreas Pokorny (2):</p>
|
||||
<ul>
|
||||
<li>egl/drm: expose KHR_image_pixmap extension</li>
|
||||
<li>i915: Fix black buffers when importing prime fds</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (2):</p>
|
||||
<ul>
|
||||
<li>docs: Add sha256 sums for the 10.2.8 release</li>
|
||||
<li>Update VERSION to 10.2.9</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (1):</p>
|
||||
<ul>
|
||||
<li>nv50/ir: avoid deleting pseudo instructions too early</li>
|
||||
</ul>
|
||||
|
||||
<p>Marek Olšák (3):</p>
|
||||
<ul>
|
||||
<li>radeonsi: release GS rings at context destruction</li>
|
||||
<li>radeonsi: properly destroy the GS copy shader and scratch_bo for compute</li>
|
||||
<li>st/dri: remove GALLIUM_MSAA and __GL_FSAA_MODE environment variables</li>
|
||||
</ul>
|
||||
|
||||
<p>Roland Scheidegger (1):</p>
|
||||
<ul>
|
||||
<li>gallivm: fix idiv</li>
|
||||
</ul>
|
||||
|
||||
<p>Thomas Hellstrom (1):</p>
|
||||
<ul>
|
||||
<li>st/xa: Fix regression in xa_yuv_planar_blit()</li>
|
||||
</ul>
|
||||
|
||||
<p>Tom Stellard (1):</p>
|
||||
<ul>
|
||||
<li>configure.ac: Compute LLVM_VERSION_PATCH using llvm-config</li>
|
||||
</ul>
|
||||
|
||||
<p>rconde (1):</p>
|
||||
<ul>
|
||||
<li>gallivm,tgsi: fix idiv by zero crash</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,95 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 10.2 Release Notes / June 6, 2014</h1>
|
||||
|
||||
<p>
|
||||
Mesa 10.2 is a new development release.
|
||||
People who are concerned with stability and reliability should stick
|
||||
with a previous release or wait for Mesa 10.2.1.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 10.2 implements the OpenGL 3.3 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.3. OpenGL
|
||||
3.3 is <strong>only</strong> available if requested at context creation
|
||||
because compatibility contexts are not supported.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
c87bfb6dd5cbcf1fdef42e5ccd972581 MesaLib-10.2.0.tar.gz
|
||||
7aaba90bd7169a94ae2fe83febdec963 MesaLib-10.2.0.tar.bz2
|
||||
58b203aca15dadc25ab4d1126db1052b MesaLib-10.2.0.zip
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
|
||||
<p>
|
||||
Note: some of the new features are only available with certain drivers.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>GL_ARB_buffer_storage on i965, nv30, nv50, nvc0, r300, r600, and radeonsi</li>
|
||||
<li>GL_ARB_multi_bind on all drivers</li>
|
||||
<li>GL_ARB_sample_shading on nv50 (GT21x only), nvc0</li>
|
||||
<li>GL_ARB_separate_shader_objects (desktop OpenGL) and
|
||||
GL_EXT_separate_shader_objects (OpenGL ES 2.0 and 3.0) on all drivers</li>
|
||||
<li>GL_ARB_stencil_texturing on i965/gen8+</li>
|
||||
<li>GL_ARB_texture_cube_map_array on nv50 (GT21x only)</li>
|
||||
<li>GL_ARB_texture_gather on nv50 (GT21x only), nvc0</li>
|
||||
<li>GL_ARB_texture_query_lod on nv50 (GT21x only), nvc0</li>
|
||||
<li>GL_ARB_texture_view on i965/gen7</li>
|
||||
<li>GL_ARB_vertex_type_10f_11f_11f_rev on nv50, nvc0, radeonsi</li>
|
||||
<li>GL_ARB_viewport_array on nv50, r600</li>
|
||||
<li>GL_INTEL_performance_query on i965/gen5+</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
TBD.
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<ul>
|
||||
<li>Renamed <i>--with-llvm-shared-libs</i> to <i>--enable-llvm-shared-libs</i></li>
|
||||
<p>
|
||||
The option is used to control how mesa is linked against LLVM, and now
|
||||
defaults to enabled (shared linking).
|
||||
</p>
|
||||
|
||||
<li>Split <i>libxatracker.so</i> into a standalone library which can be used
|
||||
with any gallium driver.</li>
|
||||
<p>
|
||||
Previously the library was linked statically against vmware's virtual gpu
|
||||
driver(svga), whereas now it loads a shared pipe_*.so driver. Provide the
|
||||
following options during configure, if you would like support for svga driver
|
||||
<i>--enable-xa --with-gallium-drivers=svga</i>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Note: The files are installed in $(libdir)/gallium-pipe/ and the interface
|
||||
between them and libxatracker.so is <strong>not</strong> stable.
|
||||
</p>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -1,168 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Mesa Release Notes</title>
|
||||
<link rel="stylesheet" type="text/css" href="../mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="../contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa 9.1.7 Release Notes / October 4, 2013</h1>
|
||||
|
||||
<p>
|
||||
Mesa 9.1.7 is a bug fix release which fixes bugs found since the 9.1.6 release.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 9.1 implements the OpenGL 3.1 API, but the version reported by
|
||||
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
|
||||
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 3.1. OpenGL
|
||||
3.1 is <strong>only</strong> available if requested at context creation
|
||||
because GL_ARB_compatibility is not supported.
|
||||
</p>
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
9e4abf7b7a6db762012c3c9917a8e8c7 MesaLib-9.1.7.tar.bz2
|
||||
f1d4d479d6ce12b9566fdb379960a912 MesaLib-9.1.7.tar.gz
|
||||
abd612bfc5dd478d04fcc630dd7672f2 MesaLib-9.1.7.zip
|
||||
</pre>
|
||||
|
||||
<h2>New features</h2>
|
||||
<p>None.</p>
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
|
||||
<p>This list is likely incomplete.</p>
|
||||
|
||||
<ul>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=55503">Bug 55503</a> - Constant vertex attributes broken</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=61635">Bug 61635</a> - glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE,...) does not work</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=65958">Bug 65958</a> - GPU Lockup on Trinity 7500G</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=66292">Bug 66292</a> - [SNB/IVB/HSW Bisected]Ogles3conform GL3Tests_depth24_depth24_basic.test fail</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=67548">Bug 67548</a> - glGetAttribLocation seems to be broken</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68195">Bug 68195</a> - piglit tests vs-struct-pad and fs-struct-pad both fail</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68250">Bug 68250</a> - Automatic mipmap generation with texture compression produces borders that fade to black</li>
|
||||
|
||||
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=69525">Bug 69525</a> - [GM45, bisected] Piglit tex-shadow2drect fails</li>
|
||||
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Changes</h2>
|
||||
|
||||
<p>Alex Deucher (2):</p>
|
||||
<ul>
|
||||
<li>r600g: disable GPUVM by default</li>
|
||||
<li>radeon/winsys: pad IBs to a multiple of 8 DWs</li>
|
||||
</ul>
|
||||
|
||||
<p>Andreas Boll (2):</p>
|
||||
<ul>
|
||||
<li>docs: Fix a typo in the 9.1.6 release notes</li>
|
||||
<li>mesa: Fix MESA_PATCH version</li>
|
||||
</ul>
|
||||
|
||||
<p>Anuj Phogat (1):</p>
|
||||
<ul>
|
||||
<li>meta: Fix blitting a framebuffer with renderbuffer attachment</li>
|
||||
</ul>
|
||||
|
||||
<p>Carl Worth (5):</p>
|
||||
<ul>
|
||||
<li>docs: Add 9.1.6 release md5sums</li>
|
||||
<li>Use -Bsymbolic when linking libEGL.so</li>
|
||||
<li>Update get-pick-list to look specifically for "9.1" in NOTE</li>
|
||||
<li>cherry-ignore: Ignore last two patches in current get-pick-list output</li>
|
||||
<li>Bump version to 9.1.7</li>
|
||||
</ul>
|
||||
|
||||
<p>Chris Forbes (1):</p>
|
||||
<ul>
|
||||
<li>i965/fs: Gen4: Zero out extra coordinates when using shadow compare</li>
|
||||
</ul>
|
||||
|
||||
<p>Emil Velikov (2):</p>
|
||||
<ul>
|
||||
<li>nv50: handle pure integer vertex attributes</li>
|
||||
<li>nouveau: initialise the nouveau_transfer maps</li>
|
||||
</ul>
|
||||
|
||||
<p>Eric Anholt (1):</p>
|
||||
<ul>
|
||||
<li>i965/gen4: Fix fragment program rectangle texture shadow compares.</li>
|
||||
</ul>
|
||||
|
||||
<p>Ian Romanick (11):</p>
|
||||
<ul>
|
||||
<li>mesa: Remove stray debug printfs in attachment completeness code</li>
|
||||
<li>mesa: Validate the layer selection of an array texture too</li>
|
||||
<li>mesa/vbo: Fix handling of attribute 0 in non-compatibilty contexts</li>
|
||||
<li>glsl: Add new overload of program_resource_visitor::visit_field method</li>
|
||||
<li>glsl: Use alignment of container record for its first field</li>
|
||||
<li>mesa: Remove all traces of GL_OES_matrix_get</li>
|
||||
<li>mesa: Don't call driver RenderTexture for really broken textures</li>
|
||||
<li>mesa: Don't call driver RenderTexture for invalid zoffset</li>
|
||||
<li>mesa: Generate a renderbuffer wrapper even if the texture has no image</li>
|
||||
<li>glsl: Move and refine test for unsized arrays in GLSL ES</li>
|
||||
<li>mesa: Don't return any data for GL_SHADER_BINARY_FORMATS</li>
|
||||
</ul>
|
||||
|
||||
<p>Ilia Mirkin (2):</p>
|
||||
<ul>
|
||||
<li>nv30: U8_USCALED only works for size 4</li>
|
||||
<li>nv30: remove no-longer-used formats from table</li>
|
||||
</ul>
|
||||
|
||||
<p>Joakim Sindholt (1):</p>
|
||||
<ul>
|
||||
<li>nvc0: fix blitctx memory leak</li>
|
||||
</ul>
|
||||
|
||||
<p>Johannes Obermayr (1):</p>
|
||||
<ul>
|
||||
<li>st/gbm: Add $(WAYLAND_CFLAGS) for HAVE_EGL_PLATFORM_WAYLAND.</li>
|
||||
</ul>
|
||||
|
||||
<p>Kenneth Graunke (1):</p>
|
||||
<ul>
|
||||
<li>meta: Set correct viewport and projection in decompress_texture_image.</li>
|
||||
</ul>
|
||||
|
||||
<p>Maarten Lankhorst (1):</p>
|
||||
<ul>
|
||||
<li>nvc0: restore viewport after blit</li>
|
||||
</ul>
|
||||
|
||||
<p>Rico Schüller (1):</p>
|
||||
<ul>
|
||||
<li>glx: Initialize OpenGL version to 1.0</li>
|
||||
</ul>
|
||||
|
||||
<p>Tiziano Bacocco (1):</p>
|
||||
<ul>
|
||||
<li>nvc0/ir: fix use after free in texture barrier insertion pass</li>
|
||||
</ul>
|
||||
|
||||
<p>Torsten Duwe (1):</p>
|
||||
<ul>
|
||||
<li>wayland-egl.pc requires wayland-client.pc.</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -31,6 +31,9 @@ because GL_ARB_compatibility is not supported.
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
df801a975045150790e10e2ccf32193f MesaLib-9.2.2.tar.gz
|
||||
20887f8020db7d1736a01ae9cd5d8c38 MesaLib-9.2.2.tar.bz2
|
||||
1676f4f1b157c838d077dadd31ba6c84 MesaLib-9.2.2.zip
|
||||
</pre>
|
||||
|
||||
|
||||
|
@@ -156,7 +156,7 @@ each time you do a pull.
|
||||
</p>
|
||||
<li>Small changes to master
|
||||
<p>
|
||||
If you are an experienced git user working on substantial modifications,
|
||||
If you are an experienced git user working on substancial modifications,
|
||||
you are probably
|
||||
working on a separate branch and would rebase your branch prior to
|
||||
merging with master.
|
||||
|
@@ -67,7 +67,7 @@ Example: export MESA_GLSL=dump,nopt
|
||||
<h2 id="support">GLSL Version</h2>
|
||||
|
||||
<p>
|
||||
The GLSL compiler currently supports version 3.30 of the shading language.
|
||||
The GLSL compiler currently supports version 1.40 of the shading language.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -234,7 +234,7 @@ This option is only relevant if EmitHighLevelInstructions is set.
|
||||
|
||||
<dt>EmitComments</dt>
|
||||
<dd>
|
||||
If set, instructions will be annotated with comments to help with debugging.
|
||||
If set, instructions will be annoted with comments to help with debugging.
|
||||
Extra NOP instructions will also be inserted.
|
||||
</dd>
|
||||
</dl>
|
||||
|
@@ -59,6 +59,7 @@ each directory.
|
||||
<li><b>osmesa</b> - off-screen software driver
|
||||
<li>XXX more
|
||||
</ul>
|
||||
<li><b>es</b> - OpenGL ES overlay, parallelly buildable with the core Mesa
|
||||
<li><b>math</b> - vertex array translation and transformation code
|
||||
(not used with Gallium)
|
||||
<li><b>program</b> - Vertex/fragment shader and GLSL compiler code
|
||||
@@ -123,7 +124,7 @@ each directory.
|
||||
Currently there's run-time code generation for x86/SSE, PowerPC
|
||||
and Cell SPU.
|
||||
<li><b>tgsi</b> - TG Shader Infrastructure. Code for encoding,
|
||||
manipulating and interpreting GPU programs.
|
||||
manipulating and interpretting GPU programs.
|
||||
<li><b>translate</b> - module for translating vertex data from one format
|
||||
to another.
|
||||
<li><b>util</b> - assorted utilities for arithmetic, hashing, surface
|
||||
@@ -134,6 +135,7 @@ each directory.
|
||||
<li><b>clover</b> - OpenCL state tracker
|
||||
<li><b>dri</b> - Meta state tracker for DRI drivers
|
||||
<li><b>egl</b> - Meta state tracker for EGL drivers
|
||||
<li><b>es</b> - OpenGL ES 1.x and 2.x state trackers
|
||||
<li><b>glx</b> - Meta state tracker for GLX
|
||||
<li><b>vdpau</b> - VDPAU state tracker
|
||||
<li><b>vega</b> - OpenVG 1.x state tracker
|
||||
|
@@ -1,138 +0,0 @@
|
||||
Name
|
||||
|
||||
EXT_shader_integer_mix
|
||||
|
||||
Name Strings
|
||||
|
||||
GL_EXT_shader_integer_mix
|
||||
|
||||
Contact
|
||||
|
||||
Matt Turner (matt.turner 'at' intel.com)
|
||||
|
||||
Contributors
|
||||
|
||||
Matt Turner, Intel
|
||||
Ian Romanick, Intel
|
||||
|
||||
Status
|
||||
|
||||
Shipping
|
||||
|
||||
Version
|
||||
|
||||
Last Modified Date: 09/12/2013
|
||||
Author Revision: 6
|
||||
|
||||
Number
|
||||
|
||||
TBD
|
||||
|
||||
Dependencies
|
||||
|
||||
OpenGL 3.0 or OpenGL ES 3.0 is required. This extension interacts with
|
||||
GL_ARB_ES3_compatibility.
|
||||
|
||||
This extension is written against the OpenGL 4.4 (core) specification
|
||||
and the GLSL 4.40 specification.
|
||||
|
||||
Overview
|
||||
|
||||
GLSL 1.30 (and GLSL ES 3.00) expanded the mix() built-in function to
|
||||
operate on a boolean third argument that does not interpolate but
|
||||
selects. This extension extends mix() to select between int, uint,
|
||||
and bool components.
|
||||
|
||||
New Procedures and Functions
|
||||
|
||||
None.
|
||||
|
||||
New Tokens
|
||||
|
||||
None.
|
||||
|
||||
Additions to Chapter 8 of the GLSL 4.40 Specification (Built-in Functions)
|
||||
|
||||
Modify Section 8.3, Common Functions
|
||||
|
||||
Additions to the table listing common built-in functions:
|
||||
|
||||
Syntax Description
|
||||
--------------------------- --------------------------------------------------
|
||||
genIType mix(genIType x, Selects which vector each returned component comes
|
||||
genIType y, from. For a component of a that is false, the
|
||||
genBType a) corresponding component of x is returned. For a
|
||||
genUType mix(genUType x, component of a that is true, the corresponding
|
||||
genUType y, component of y is returned.
|
||||
genBType a)
|
||||
genBType mix(genBType x,
|
||||
genBType y,
|
||||
genBType a)
|
||||
|
||||
Additions to the AGL/GLX/WGL Specifications
|
||||
|
||||
None.
|
||||
|
||||
Modifications to The OpenGL Shading Language Specification, Version 4.40
|
||||
|
||||
Including the following line in a shader can be used to control the
|
||||
language features described in this extension:
|
||||
|
||||
#extension GL_EXT_shader_integer_mix : <behavior>
|
||||
|
||||
where <behavior> is as specified in section 3.3.
|
||||
|
||||
New preprocessor #defines are added to the OpenGL Shading Language:
|
||||
|
||||
#define GL_EXT_shader_integer_mix 1
|
||||
|
||||
Interactions with ARB_ES3_compatibility
|
||||
|
||||
On desktop implementations that support ARB_ES3_compatibility,
|
||||
GL_EXT_shader_integer_mix can be enabled (and the new functions
|
||||
used) in shaders declared with '#version 300 es'.
|
||||
|
||||
GLX Protocol
|
||||
|
||||
None.
|
||||
|
||||
Errors
|
||||
|
||||
None.
|
||||
|
||||
New State
|
||||
|
||||
None.
|
||||
|
||||
New Implementation Dependent State
|
||||
|
||||
None.
|
||||
|
||||
Issues
|
||||
|
||||
1) Should we allow linear interpolation of integers via a non-boolean
|
||||
third component?
|
||||
|
||||
RESOLVED: No.
|
||||
|
||||
2) Should we allow mix() to select between boolean components?
|
||||
|
||||
RESOLVED: Yes. Implementing the same functionality using casts would be
|
||||
possible but ugly.
|
||||
|
||||
Revision History
|
||||
|
||||
Rev. Date Author Changes
|
||||
---- -------- -------- ---------------------------------------------
|
||||
6 09/12/2013 idr After discussions in Khronos, change vendor
|
||||
prefix to EXT.
|
||||
|
||||
5 09/09/2013 idr Add ARB_ES3_compatibility interaction.
|
||||
|
||||
4 09/06/2013 mattst88 Allow extension on OpenGL ES 3.0.
|
||||
|
||||
3 08/28/2013 mattst88 Add #extension/#define changes.
|
||||
|
||||
2 08/26/2013 mattst88 Change vendor prefix to MESA. Add mix() that
|
||||
selects between boolean components.
|
||||
1 08/26/2013 mattst88 Initial revision
|
@@ -1,125 +0,0 @@
|
||||
Name
|
||||
|
||||
MESA_configless_context
|
||||
|
||||
Name Strings
|
||||
|
||||
EGL_MESA_configless_context
|
||||
|
||||
Contact
|
||||
|
||||
Neil Roberts <neil.s.roberts@intel.com>
|
||||
|
||||
Status
|
||||
|
||||
Proposal
|
||||
|
||||
Version
|
||||
|
||||
Version 1, February 28, 2014
|
||||
|
||||
Number
|
||||
|
||||
EGL Extension #not assigned
|
||||
|
||||
Dependencies
|
||||
|
||||
Requires EGL 1.4 or later. This extension is written against the
|
||||
wording of the EGL 1.4 specification.
|
||||
|
||||
Overview
|
||||
|
||||
This extension provides a means to use a single context to render to
|
||||
multiple surfaces which have different EGLConfigs. Without this extension
|
||||
the EGLConfig for every surface used by the context must be compatible
|
||||
with the one used by the context. The only way to render to surfaces with
|
||||
different formats would be to create multiple contexts but this is
|
||||
inefficient with modern GPUs where this restriction is unnecessary.
|
||||
|
||||
IP Status
|
||||
|
||||
Open-source; freely implementable.
|
||||
|
||||
New Procedures and Functions
|
||||
|
||||
None.
|
||||
|
||||
New Tokens
|
||||
|
||||
Accepted as <config> in eglCreateContext
|
||||
|
||||
EGL_NO_CONFIG_MESA ((EGLConfig)0)
|
||||
|
||||
Additions to the EGL Specification section "2.2 Rendering Contexts and Drawing
|
||||
Surfaces"
|
||||
|
||||
Add the following to the 3rd paragraph:
|
||||
|
||||
"EGLContexts can also optionally be created with respect to an EGLConfig
|
||||
depending on the parameters used at creation time. If a config is provided
|
||||
then additional restrictions apply on what surfaces can be used with the
|
||||
context."
|
||||
|
||||
Replace the last sentence of the 6th paragraph with:
|
||||
|
||||
"In order for a context to be compatible with a surface they both must have
|
||||
been created with respect to the same EGLDisplay. If the context was
|
||||
created without respect to an EGLConfig then there are no further
|
||||
constraints. Otherwise they are only compatible if:"
|
||||
|
||||
Remove the last bullet point in the list of constraints.
|
||||
|
||||
Additions to the EGL Specification section "3.7.1 Creating Rendering Contexts"
|
||||
|
||||
Replace the paragraph starting "If config is not a valid EGLConfig..."
|
||||
with
|
||||
|
||||
"The config argument can either be a valid EGLConfig or EGL_NO_CONFIG_MESA.
|
||||
If it is neither of these then an EGL_BAD_CONFIG error is generated. If a
|
||||
valid config is passed then the error will also be generated if the config
|
||||
does not support the requested client API (this includes requesting
|
||||
creation of an OpenGL ES 1.x context when the EGL_RENDERABLE_TYPE
|
||||
attribute of config does not contain EGL_OPENGL_ES_BIT, or creation of an
|
||||
OpenGL ES 2.x context when the attribute does not contain
|
||||
EGL_OPENGL_ES2_BIT).
|
||||
|
||||
Passing EGL_NO_CONFIG_MESA will create a configless context. When a
|
||||
configless context is used with the OpenGL API it can be assumed that the
|
||||
initial values of the context's state will be decided when the context is
|
||||
first made current. In particular this means that the decision of whether
|
||||
to use GL_BACK or GL_FRONT for the initial value of the first output in
|
||||
glDrawBuffers will be decided based on the config of the draw surface when
|
||||
it is first bound."
|
||||
|
||||
Additions to the EGL Specification section "3.7.3 Binding Contexts and
|
||||
Drawables"
|
||||
|
||||
Replace the first bullet point with the following:
|
||||
|
||||
"* If draw or read are not compatible with ctx as described in section 2.2,
|
||||
then an EGL_BAD_MATCH error is generated."
|
||||
|
||||
Add a second bullet point after that:
|
||||
|
||||
"* If draw and read are not compatible with each other as described in
|
||||
section 2.2, then an EGL_BAD_MATCH error is generated."
|
||||
|
||||
Issues
|
||||
|
||||
1. What happens when an OpenGL context with a double-buffered surface and
|
||||
draw buffer set to GL_BACK is made current with a single-buffered
|
||||
surface?
|
||||
|
||||
NOT RESOLVED: There are a few options here. An implementation can
|
||||
raise an error, change the drawbuffer state to GL_FRONT or just do
|
||||
nothing, expecting the application to set GL_FRONT drawbuffer before
|
||||
drawing. However, this extension deliberately does not specify any
|
||||
required behavior in this corner case and applications should avoid
|
||||
mixing single- and double-buffered surfaces with configless contexts.
|
||||
|
||||
Future extensions may specify required behavior in this case.
|
||||
|
||||
Revision History
|
||||
|
||||
Version 1, February 28, 2014
|
||||
Initial draft (Neil Roberts)
|
@@ -1,410 +0,0 @@
|
||||
Name
|
||||
|
||||
MESA_query_renderer
|
||||
|
||||
Name Strings
|
||||
|
||||
GLX_MESA_query_renderer
|
||||
|
||||
Contact
|
||||
|
||||
Ian Romanick <ian.d.romanick@intel.com>
|
||||
|
||||
IP Status
|
||||
|
||||
No known IP claims.
|
||||
|
||||
Status
|
||||
|
||||
Shipping as of Mesa 10.0
|
||||
|
||||
Version
|
||||
|
||||
Version 8, 14-February-2014
|
||||
|
||||
Number
|
||||
|
||||
TBD.
|
||||
|
||||
Dependencies
|
||||
|
||||
GLX 1.4 is required.
|
||||
|
||||
GLX_ARB_create_context and GLX_ARB_create_context_profile are required.
|
||||
|
||||
This extension interacts with GLX_EXT_create_context_es2_profile and
|
||||
GLX_EXT_create_context_es_profile.
|
||||
|
||||
Overview
|
||||
|
||||
In many situations, applications want to detect characteristics of a
|
||||
rendering device before creating a context for that device. Information
|
||||
gathered at this stage may guide choices the application makes about
|
||||
color depth, number of samples per-pixel, texture quality, and so on.
|
||||
In addition, versions of supported APIs and implementation API
|
||||
preference may also guide start-up decisions made by the application.
|
||||
For example, one implementation may prefer vertex data be supplied using
|
||||
methods only available in a compatibility profile, but another
|
||||
implementation may only support the desired version in a core profile.
|
||||
|
||||
There are also cases where more than one renderer may be available per
|
||||
display. For example, there is typically a hardware implementation and
|
||||
a software based implementation. There are cases where an application
|
||||
may want to pick one over the other. One such situation is when the
|
||||
software implementation supports more features than the hardware
|
||||
implementation. Another situation is when a particular version of the
|
||||
hardware implementation is blacklisted due to known bugs.
|
||||
|
||||
This extension provides a mechanism for the application to query all of
|
||||
the available renderers for a particular display and screen. In
|
||||
addition, this extension provides a mechanism for applications to create
|
||||
contexts with respect to a specific renderer.
|
||||
|
||||
New Procedures and Functions
|
||||
|
||||
Bool glXQueryRendererIntegerMESA(Display *dpy, int screen,
|
||||
int renderer, int attribute,
|
||||
unsigned int *value);
|
||||
Bool glXQueryCurrentRendererIntegerMESA(int attribute, unsigned int *value);
|
||||
|
||||
const char *glXQueryRendererStringMESA(Display *dpy, int screen,
|
||||
int renderer, int attribute);
|
||||
|
||||
const char *glXQueryCurrentRendererStringMESA(int attribute);
|
||||
|
||||
New Tokens
|
||||
|
||||
Accepted as an <attribute> in glXQueryRendererIntegerMESA and
|
||||
glXQueryCurrentRendererIntegerMESA:
|
||||
|
||||
GLX_RENDERER_VENDOR_ID_MESA 0x8183
|
||||
GLX_RENDERER_DEVICE_ID_MESA 0x8184
|
||||
GLX_RENDERER_VERSION_MESA 0x8185
|
||||
GLX_RENDERER_ACCELERATED_MESA 0x8186
|
||||
GLX_RENDERER_VIDEO_MEMORY_MESA 0x8187
|
||||
GLX_RENDERER_UNIFIED_MEMORY_ARCHITECTURE_MESA 0x8188
|
||||
GLX_RENDERER_PREFERRED_PROFILE_MESA 0x8189
|
||||
GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA 0x818A
|
||||
GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA 0x818B
|
||||
GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA 0x818C
|
||||
GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA 0x818D
|
||||
|
||||
Accepted as an <attribute> in glXQueryRendererStringMESA and
|
||||
glXQueryCurrentRendererStringMESA:
|
||||
|
||||
GLX_RENDERER_VENDOR_ID_MESA
|
||||
GLX_RENDERER_DEVICE_ID_MESA
|
||||
|
||||
Accepted as an attribute name in <*attrib_list> in
|
||||
glXCreateContextAttribsARB:
|
||||
|
||||
GLX_RENDERER_ID_MESA 0x818E
|
||||
|
||||
Additions to the OpenGL / WGL Specifications
|
||||
|
||||
None. This specification is written for GLX.
|
||||
|
||||
Additions to the GLX 1.4 Specification
|
||||
|
||||
[Add the following to Section X.Y.Z of the GLX Specification]
|
||||
|
||||
To obtain information about the available renderers for a particular
|
||||
display and screen,
|
||||
|
||||
Bool glXQueryRendererIntegerMESA(Display *dpy, int screen, int renderer,
|
||||
int attribute, unsigned int *value);
|
||||
|
||||
can be used. The value for <attribute> will be returned in one or more
|
||||
integers specified by <value>. The values, data sizes, and descriptions
|
||||
of each renderer attribute are listed in the table below.
|
||||
|
||||
GLX renderer attribute number description
|
||||
of values
|
||||
---------------------- --------- -----------
|
||||
GLX_RENDERER_VENDOR_ID_MESA 1 PCI ID of the device vendor
|
||||
GLX_RENDERER_DEVICE_ID_MESA 1 PCI ID of the device
|
||||
GLX_RENDERER_VERSION_MESA 3 Major, minor, and patch level of
|
||||
the renderer implementation
|
||||
GLX_RENDERER_ACCELERATED_MESA 1 Boolean indicating whether or
|
||||
not the renderer is hardware
|
||||
accelerated
|
||||
GLX_RENDERER_VIDEO_MEMORY_MESA 1 Number of megabytes of video
|
||||
memory available to the renderer
|
||||
GLX_RENDERER_UNIFIED_MEMORY_ARCHITECTURE_MESA
|
||||
1 Boolean indicating whether or
|
||||
not the renderer uses a unified
|
||||
memory architecture or has
|
||||
separate "on-card" and GART
|
||||
memory.
|
||||
GLX_RENDERER_PREFERRED_PROFILE_MESA
|
||||
1 Bitmask of the preferred context
|
||||
profile for this renderer. This
|
||||
value is suitable to be supplied
|
||||
with the
|
||||
GLX_CONTEXT_PROFILE_MASK_ARB
|
||||
attribute to
|
||||
glXCreateContextAttribsARB
|
||||
GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA
|
||||
2 Maximum core profile major and
|
||||
minor version supported by the
|
||||
renderer
|
||||
GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA
|
||||
2 Maximum compatibility profile
|
||||
major and minor version
|
||||
supported by the renderer
|
||||
GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA
|
||||
2 Maximum OpenGL ES 1.x
|
||||
major and minor version
|
||||
supported by the renderer
|
||||
GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA
|
||||
2 Maximum OpenGL ES 2.x or 3.x
|
||||
major and minor version
|
||||
supported by the renderer
|
||||
|
||||
In the table, boolean attributes will have either the value 0 or 1.
|
||||
|
||||
GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA,
|
||||
GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA,
|
||||
GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA, and
|
||||
GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA each return <0, 0> in
|
||||
*value if no version of that profile is supported.
|
||||
|
||||
GLX_RENDERER_VENDOR_ID_MESA and GLX_RENDERER_DEVICE_ID_MESA may return
|
||||
0xFFFFFFFF if the device does not have a PCI ID (because it is not a PCI
|
||||
device) or if the PCI ID is not available. In this case the application
|
||||
should rely on the string query instead.
|
||||
|
||||
If <attribute> is not a recognized value, False is returned, but no GLX
|
||||
error is generated. Otherwise, True is returned.
|
||||
|
||||
String versions of some attributes may also be queried using
|
||||
|
||||
const char *glXQueryRendererStringMESA(Display *dpy, int screen,
|
||||
int renderer, int attribute);
|
||||
|
||||
The value for <attribute> will be returned in one or more
|
||||
integers specified by <value>. The values, data sizes, and descriptions
|
||||
of each renderer attribute are listed in the table below.
|
||||
|
||||
GLX renderer attribute description
|
||||
---------------------- -----------
|
||||
GLX_RENDERER_VENDOR_ID_MESA Name of the renderer provider. This may
|
||||
differ from the vendor name of the
|
||||
underlying hardware.
|
||||
GLX_RENDERER_DEVICE_ID_MESA Name of the renderer. This may differ from
|
||||
the name of the underlying hardware (e.g.,
|
||||
for a software renderer).
|
||||
|
||||
If <attribute> is not a recognized value, NULL is returned, but no GLX
|
||||
error is generated.
|
||||
|
||||
The string returned for GLX_RENDERER_VENDOR_ID_MESA will have the same
|
||||
format as the string that would be returned by glGetString of GL_VENDOR.
|
||||
It may, however, have a different value.
|
||||
|
||||
The string returned for GLX_RENDERER_DEVICE_ID_MESA will have the same
|
||||
format as the string that would be returned by glGetString of GL_RENDERER.
|
||||
It may, however, have a different value.
|
||||
|
||||
|
||||
[Add to section section 3.3.7 "Rendering Contexts"]
|
||||
|
||||
The attribute name GLX_RENDERER_ID_MESA specified the index of the render
|
||||
against which the context should be created. The default value of
|
||||
GLX_RENDERER_ID_MESA is 0.
|
||||
|
||||
|
||||
[Add to list of errors for glXCreateContextAttribsARB in section section
|
||||
3.3.7 "Rendering Contexts"]
|
||||
|
||||
* If the value of GLX_RENDERER_ID_MESA specifies a non-existent
|
||||
renderer, BadMatch is generated.
|
||||
|
||||
Dependencies on GLX_EXT_create_context_es_profile and
|
||||
GLX_EXT_create_context_es2_profile
|
||||
|
||||
If neither extension is supported, remove all mention of
|
||||
GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA from the spec.
|
||||
|
||||
If GLX_EXT_create_context_es_profile is not supported, remove all mention of
|
||||
GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA from the spec.
|
||||
|
||||
Issues
|
||||
|
||||
1) How should the difference between on-card and GART memory be exposed?
|
||||
|
||||
UNRESOLVED.
|
||||
|
||||
2) How should memory limitations of unified memory architecture (UMA)
|
||||
systems be exposed?
|
||||
|
||||
UNRESOLVED. Some hardware has different per-process and global
|
||||
limits for memory that can be accessed within a single draw call.
|
||||
|
||||
3) How should the renderer's API preference be advertised?
|
||||
|
||||
UNRESOLVED. The common case for desktop renderers is to prefer
|
||||
either core or compatibility. However, some renderers may actually
|
||||
prefer an ES context. This leaves the application in a tough spot
|
||||
if it can only support core or compatibility and the renderer says it
|
||||
wants ES.
|
||||
|
||||
4) Should OpenGL ES 2.0 and OpenGL ES 3.0 be treated separately?
|
||||
|
||||
RESOLVED. No. OpenGL ES 3.0 is backwards compatible with OpenGL ES
|
||||
2.0. Applications can detect OpenGL ES 3.0 support by querying
|
||||
GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA.
|
||||
|
||||
5) How can applications tell the difference between different hardware
|
||||
renderers for the same device? For example, whether the renderer is the
|
||||
open-source driver or the closed-source driver.
|
||||
|
||||
RESOLVED. Assuming this extension is ever implemented outside Mesa,
|
||||
applications can query GLX_RENDERER_VENDOR_ID_MESA from
|
||||
glXQueryRendererStringMESA. This will almost certainly return
|
||||
different strings for open-source and closed-source drivers.
|
||||
|
||||
6) What is the value of GLX_RENDERER_UNIFIED_MEMORY_ARCHITECTURE_MESA for
|
||||
software renderers?
|
||||
|
||||
UNRESOLVED. Video (display) memory and texture memory is not unified
|
||||
for software implementations, so it seems reasonable for this to be
|
||||
False.
|
||||
|
||||
7) How does an application determine the number of available renderers?
|
||||
|
||||
UNRESOLVED.
|
||||
|
||||
8) What happens if a fbconfig is used to create context on a renderer
|
||||
that cannot support it? For example, if a multisampled config is used
|
||||
with a software renderer that does not support multisampling.
|
||||
|
||||
RESOLVED. The language for glXCreateContextAttribsARB already covers
|
||||
this case. Context creation will fail, and BadMatch is generated.
|
||||
|
||||
9) In addition to being able to query the supported versions, should
|
||||
applications also be able to query the supported extensions?
|
||||
|
||||
RESOLVED. No. Desktop OpenGL core profiles and OpenGL ES 3.0 have
|
||||
moved away from the monolithic string returned by glGetString of
|
||||
GL_EXTENSIONS. Providing the newer indexed query would require adding
|
||||
a lot of extra infrastructure, and it would probably provide little
|
||||
benefit to applications.
|
||||
|
||||
10) What combination of values for GLX_RENDERER_PREFERRED_PROFILE_MESA,
|
||||
GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA, and
|
||||
GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA should be returned
|
||||
for a renderer that only supports OpenGL 3.1 without the
|
||||
GL_ARB_compatibility extension?
|
||||
|
||||
RESOLVED. The renderer will return GLX_CONTEXT_CORE_PROFILE_BIT_ARB
|
||||
for GLX_RENDERER_PREFERRED_PROFILE_MESA.
|
||||
|
||||
Further, the renderer will return <3,0> for
|
||||
GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA because OpenGL
|
||||
3.1 without GL_ARB_compatibility is not backwards compatible with
|
||||
previous versions of OpenGL. The render will return <3,1> for
|
||||
GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA indicating that support
|
||||
for OpenGL 3.1 is available.
|
||||
|
||||
Even though there is no OpenGL 3.1 core profile, the values
|
||||
returned for GLX_RENDERER_PREFERRED_PROFILE_MESA and
|
||||
GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA can be supplied
|
||||
with the GLX_CONTEXT_PROFILE_MASK_ARB and
|
||||
GLX_CONTEXT_{MAJOR,MINOR}_VERSION_ARB attributes of
|
||||
glXCreateContextAttribsARB without error. If the requested
|
||||
OpenGL version is less than 3.2, the
|
||||
GLX_CONTEXT_PROFILE_MASK_ARB attribute is ignored by
|
||||
glXCreateContextAttribsARB.
|
||||
|
||||
11) How can application learn about multi-GPU (e.g., SLI, CrossFireX,
|
||||
etc.) configurations?
|
||||
|
||||
UNRESOLVED. Based on ISV feedback, this is important information to
|
||||
provide to the application. Given the variety of possible hardware
|
||||
configurations (e.g., Hybrid CrossFireX) and different rendering
|
||||
modes (e.g., split-frame rendering vs. alternate-frame rendering),
|
||||
it's not clear how this information can be communicated.
|
||||
|
||||
It is likely that this will be left to a layered extension.
|
||||
|
||||
12) Should capability queries similar to those in
|
||||
GL_ARB_internalformat_query or GL_ARB_internalformat_query2 be added?
|
||||
|
||||
RESOLVED. No. With the possible exception of the texture size
|
||||
queries, it seems unlikely that applications would ever use this
|
||||
information before creating a context.
|
||||
|
||||
13) Existing GL extensions (e.g., GL_ATI_meminfo and
|
||||
GL_NVX_gpu_memory_info) allow easy queries after context creation. With
|
||||
this extension it is a bit of a pain for a portable application to query
|
||||
the information after context creation.
|
||||
|
||||
RESOLVED. Add versions of the queries that implicitly take the
|
||||
display, screen, and renderer from the currently bound context.
|
||||
|
||||
14) Why not make the queries from issue #13 GL functions (instead of GLX)?
|
||||
|
||||
RESOLVED. It is fairly compelling for the post-creation queries to
|
||||
just use glGetInteger and glGetString. However, the GL enums and
|
||||
the GLX enums would have different names and would almost certainly
|
||||
have different values. It seems like this would cause more problems
|
||||
than it would solve.
|
||||
|
||||
15) Should the string queries be required to return the same values as
|
||||
glGetString(GL_VENDOR) and glGetString(GL_RENDERER)?
|
||||
|
||||
UNRESOLVED. This may be useful for applications that already do
|
||||
device detection based on these strings.
|
||||
|
||||
16) What type should the value parameter of glXQueryRendererIntegerMESA
|
||||
and glXQueryCurrentRendererIntegerMESA be?
|
||||
|
||||
UNRESOLVED. Other similar GLX query functions just use int or
|
||||
unsigned int, so that's what this extension uses for now. However,
|
||||
an expeclitly sized value, such as uint32_t or uint64_t, seems
|
||||
preferable.
|
||||
|
||||
17) What about SoCs and other systems that don't have PCI?
|
||||
|
||||
RESOLVED. The GLX_RENDERER_VENDOR_ID_MESA and
|
||||
GLX_RENDERER_DEVICE_ID_MESA integer queries may return 0xFFFFFFFF if a
|
||||
PCI ID either does not exist or is not available. Implementations
|
||||
should make every attempt to return as much information as is
|
||||
possible. For example, if the implementation is running on a non-PCI
|
||||
SoC with a Qualcomm GPU, GLX_RENDERER_VENDOR_ID_MESA should return
|
||||
0x5143, but GLX_RENDERER_DEVICE_ID_MESA will return 0xFFFFFFFF.
|
||||
|
||||
Revision History
|
||||
|
||||
Version 1, 2012/08/27 - Initial version
|
||||
|
||||
Version 2, 2012/09/04 - Specify behavior of implementations that
|
||||
do not support certain profiles.
|
||||
Change wording of issue #8 to be more
|
||||
clear.
|
||||
Make some wording changes to issue #10 to
|
||||
clarify the resolution a bit.
|
||||
|
||||
Version 3, 2012/09/23 - Add issue #11 regarding multi-GPU systems.
|
||||
|
||||
Version 4, 2013/02/01 - Add issue #12 regarding texture / renderbuffer
|
||||
format queries.
|
||||
|
||||
Version 5, 2013/02/14 - Add issues #13 and #14 regarding simpler queires
|
||||
after the context is created and made current.
|
||||
Add issue #15 regarding the string query.
|
||||
Add issue #16 regarding the value type returned
|
||||
by the Integer functions.
|
||||
|
||||
Version 6, 2013/10/25 - Fix a typo. Update the list of functions to
|
||||
which the new enums can be passed. The "Current"
|
||||
versions were previously missing.
|
||||
|
||||
Version 7, 2013/11/07 - Fix a couple more typos. Add issue #17 regarding
|
||||
the PCI queries on systems that don't have PCI.
|
||||
|
||||
Version 8, 2014/02/14 - Fix a couple typos. GLX_RENDER_ID_MESA should
|
||||
read GLX_RENDERER_ID_MESA. The VENDOR/DEVICE_ID
|
||||
example given in issue #17 should be 0x5143 and
|
||||
0xFFFFFFFF respectively.
|
@@ -16,7 +16,7 @@ IP Status
|
||||
|
||||
Status
|
||||
|
||||
DEPRECATED - Support removed in Mesa 10.1.
|
||||
Shipping in Mesa 7.1
|
||||
|
||||
Version
|
||||
|
||||
|
@@ -17,7 +17,7 @@ Status
|
||||
|
||||
Version
|
||||
|
||||
Version 5, July 16, 2013
|
||||
Version 1, March 1, 2011
|
||||
|
||||
Number
|
||||
|
||||
@@ -57,7 +57,7 @@ New Procedures and Functions
|
||||
struct wl_display *display);
|
||||
|
||||
EGLBoolean eglQueryWaylandBufferWL(EGLDisplay dpy,
|
||||
struct wl_resource *buffer,
|
||||
struct wl_buffer *buffer,
|
||||
EGLint attribute, EGLint *value);
|
||||
|
||||
New Tokens
|
||||
@@ -76,11 +76,6 @@ New Tokens
|
||||
EGL_TEXTURE_Y_UV_WL 0x31D8
|
||||
EGL_TEXTURE_Y_XUXV_WL 0x31D9
|
||||
|
||||
Accepted in the <attribute> parameter of eglQueryWaylandBufferWL:
|
||||
|
||||
EGL_TEXTURE_FORMAT 0x3080
|
||||
EGL_WAYLAND_Y_INVERTED_WL 0x31DB
|
||||
|
||||
|
||||
Additions to the EGL 1.4 Specification:
|
||||
|
||||
@@ -162,16 +157,6 @@ Additions to the EGL 1.4 Specification:
|
||||
Further, eglQueryWaylandBufferWL accepts attributes EGL_WIDTH and
|
||||
EGL_HEIGHT to query the width and height of the wl_buffer.
|
||||
|
||||
Also, eglQueryWaylandBufferWL may accept
|
||||
EGL_WAYLAND_Y_INVERTED_WL attribute to query orientation of
|
||||
wl_buffer. If EGL_WAYLAND_Y_INVERTED_WL is supported
|
||||
eglQueryWaylandBufferWL returns EGL_TRUE and value is a boolean
|
||||
that tells if wl_buffer is y-inverted or not. If
|
||||
EGL_WAYLAND_Y_INVERTED_WL is not supported
|
||||
eglQueryWaylandBufferWL returns EGL_FALSE, in that case
|
||||
wl_buffer should be treated as if value of
|
||||
EGL_WAYLAND_Y_INVERTED_WL was EGL_TRUE.
|
||||
|
||||
Issues
|
||||
|
||||
Revision History
|
||||
@@ -188,10 +173,3 @@ Revision History
|
||||
Use EGL_TEXTURE_FORMAT, EGL_TEXTURE_RGB, and EGL_TEXTURE_RGBA,
|
||||
and just define the new YUV texture formats. Add support for
|
||||
EGL_WIDTH and EGL_HEIGHT in the query attributes (Kristian Høgsberg)
|
||||
Version 5, July 16, 2013
|
||||
Change eglQueryWaylandBufferWL to take a resource pointer to the
|
||||
buffer instead of a pointer to a struct wl_buffer, as the latter has
|
||||
been deprecated. (Ander Conselvan de Oliveira)
|
||||
Version 6, September 16, 2013
|
||||
Add EGL_WAYLAND_Y_INVERTED_WL attribute to allow specifying
|
||||
wl_buffer's orientation.
|
||||
|
@@ -1,101 +0,0 @@
|
||||
Name
|
||||
|
||||
WL_create_wayland_buffer_from_image
|
||||
|
||||
Name Strings
|
||||
|
||||
EGL_WL_create_wayland_buffer_from_image
|
||||
|
||||
Contributors
|
||||
|
||||
Neil Roberts
|
||||
Axel Davy
|
||||
Daniel Stone
|
||||
|
||||
Contact
|
||||
|
||||
Neil Roberts <neil.s.roberts@intel.com>
|
||||
|
||||
Status
|
||||
|
||||
Proposal
|
||||
|
||||
Version
|
||||
|
||||
Version 2, October 25, 2013
|
||||
|
||||
Number
|
||||
|
||||
EGL Extension #not assigned
|
||||
|
||||
Dependencies
|
||||
|
||||
Requires EGL 1.4 or later. This extension is written against the
|
||||
wording of the EGL 1.4 specification.
|
||||
|
||||
EGL_KHR_base_image is required.
|
||||
|
||||
Overview
|
||||
|
||||
This extension provides an entry point to create a wl_buffer which shares
|
||||
its contents with a given EGLImage. The expected use case for this is in a
|
||||
nested Wayland compositor which is using subsurfaces to present buffers
|
||||
from its clients. Using this extension it can attach the client buffers
|
||||
directly to the subsurface without having to blit the contents into an
|
||||
intermediate buffer. The compositing can then be done in the parent
|
||||
compositor.
|
||||
|
||||
The nested compositor can create an EGLImage from a client buffer resource
|
||||
using the existing WL_bind_wayland_display extension. It should also be
|
||||
possible to create buffers using other types of images although there is
|
||||
no expected use case for that.
|
||||
|
||||
IP Status
|
||||
|
||||
Open-source; freely implementable.
|
||||
|
||||
New Procedures and Functions
|
||||
|
||||
struct wl_buffer *eglCreateWaylandBufferFromImageWL(EGLDisplay dpy,
|
||||
EGLImageKHR image);
|
||||
|
||||
New Tokens
|
||||
|
||||
None.
|
||||
|
||||
Additions to the EGL 1.4 Specification:
|
||||
|
||||
To create a client-side wl_buffer from an EGLImage call
|
||||
|
||||
struct wl_buffer *eglCreateWaylandBufferFromImageWL(EGLDisplay dpy,
|
||||
EGLImageKHR image);
|
||||
|
||||
The returned buffer will share the contents with the given EGLImage. Any
|
||||
updates to the image will also be updated in the wl_buffer. Typically the
|
||||
EGLImage will be generated in a nested Wayland compositor using a buffer
|
||||
resource from a client via the EGL_WL_bind_wayland_display extension.
|
||||
|
||||
If there was an error then the function will return NULL. In particular it
|
||||
will generate EGL_BAD_MATCH if the implementation is not able to represent
|
||||
the image as a wl_buffer. The possible reasons for this error are
|
||||
implementation-dependant but may include problems such as an unsupported
|
||||
format or tiling mode or that the buffer is in memory that is inaccessible
|
||||
to the GPU that the given EGLDisplay is using.
|
||||
|
||||
Issues
|
||||
|
||||
1) Under what circumstances can the EGL_BAD_MATCH error be generated? Does
|
||||
this include for example unsupported tiling modes?
|
||||
|
||||
RESOLVED: Yes, the EGL_BAD_MATCH error can be generated for any reason
|
||||
which prevents the implementation from representing the image as a
|
||||
wl_buffer. For example, these problems can be but are not limited to
|
||||
unsupported tiling modes, inaccessible memory or an unsupported pixel
|
||||
format.
|
||||
|
||||
Revision History
|
||||
|
||||
Version 1, September 6, 2013
|
||||
Initial draft (Neil Roberts)
|
||||
Version 2, October 25, 2013
|
||||
Added a note about more possible reasons for returning EGL_BAD_FORMAT.
|
@@ -14,7 +14,7 @@
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Acknowledgements</h1>
|
||||
<h1>Acknowledgments</h1>
|
||||
|
||||
|
||||
The following individuals and groups are to be acknowledged for their
|
||||
|
@@ -27,10 +27,9 @@ MacOS are all supported.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Most modern Linux distros include the SVGA3D driver so end users shouldn't
|
||||
be concerned with this information.
|
||||
But if your distro lacks the driver or you want to update to the latest code
|
||||
these instructions explain what to do.
|
||||
End users shouldn't have to go through all these steps once the driver is
|
||||
included in newer Linux distributions.
|
||||
Fedora 18 and Ubuntu 12.10 include the VMware guest GL driver, for example.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -54,13 +53,6 @@ The components involved in this include:
|
||||
<li>Mesa/gallium OpenGL driver: "svga"
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
All of these components reside in the guest Linux virtual machine.
|
||||
On the host, all you're doing is running VMware
|
||||
<a href="http://www.vmware.com/products/workstation/">Workstation</a> or
|
||||
<a href="http://www.vmware.com/products/fusion/">Fusion</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>Prerequisites</h2>
|
||||
|
||||
@@ -142,7 +134,7 @@ As before, if you're on a 32-bit system, you should skip the --libdir
|
||||
configure option.
|
||||
<pre>
|
||||
cd $TOP/mesa
|
||||
./autogen.sh --prefix=/usr --libdir=/usr/lib64 --with-gallium-drivers=svga --with-dri-drivers= --enable-xa --disable-dri3
|
||||
./autogen.sh --prefix=/usr --libdir=/usr/lib64 --with-gallium-drivers=svga --with-dri-drivers= --enable-xa
|
||||
make
|
||||
sudo make install
|
||||
</pre>
|
||||
|
@@ -107,7 +107,7 @@ for your application.
|
||||
<p>
|
||||
When using Mesa directly or with GLX, it's up to the application
|
||||
writer to create a window with an appropriate colormap. The GLUT
|
||||
toolkit tries to minimize colormap <em>flashing</em> by sharing
|
||||
toolkit tris to minimize colormap <em>flashing</em> by sharing
|
||||
colormaps when possible. Specifically, if the visual and depth of the
|
||||
window matches that of the root window, the root window's colormap
|
||||
will be shared by the Mesa window. Otherwise, a new, private colormap
|
||||
|
1
doxygen/.gitignore
vendored
1
doxygen/.gitignore
vendored
@@ -8,7 +8,6 @@ gallium
|
||||
gbm
|
||||
glapi
|
||||
glsl
|
||||
i965
|
||||
main
|
||||
math
|
||||
math_subset
|
||||
|
@@ -17,8 +17,7 @@ FULL = \
|
||||
swrast_setup.doxy \
|
||||
tnl.doxy \
|
||||
tnl_dd.doxy \
|
||||
gbm.doxy \
|
||||
i965.doxy
|
||||
gbm.doxy
|
||||
|
||||
full: $(FULL:.doxy=.tag)
|
||||
$(foreach FILE,$(FULL),doxygen $(FILE);)
|
||||
|
@@ -73,6 +73,7 @@ FILE_PATTERNS = \
|
||||
fog.h \
|
||||
get.h \
|
||||
glheader.h \
|
||||
glthread.h \
|
||||
hash.[ch] \
|
||||
hint.h \
|
||||
histogram.h \
|
||||
|
@@ -15,6 +15,5 @@
|
||||
<a class="qindex" href="../swrast_setup/index.html">swrast_setup</a> |
|
||||
<a class="qindex" href="../tnl/index.html">tnl</a> |
|
||||
<a class="qindex" href="../tnl_dd/index.html">tnl_dd</a> |
|
||||
<a class="qindex" href="../gbm/index.html">gbm</a> |
|
||||
<a class="qindex" href="../i965/index.html">i965</a>
|
||||
<a class="qindex" href="../gbm/index.html">gbm</a>
|
||||
</div>
|
||||
|
@@ -1,50 +0,0 @@
|
||||
# Doxyfile 0.1
|
||||
|
||||
@INCLUDE = common.doxy
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# General configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
PROJECT_NAME = "Intel i965 Driver"
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration options related to the input files
|
||||
#---------------------------------------------------------------------------
|
||||
INPUT = ../src/mesa/drivers/dri/i965
|
||||
FILE_PATTERNS = *.c *.cpp *.h
|
||||
RECURSIVE = NO
|
||||
EXCLUDE =
|
||||
EXCLUDE_PATTERNS =
|
||||
EXAMPLE_PATH =
|
||||
EXAMPLE_PATTERNS =
|
||||
EXAMPLE_RECURSIVE = NO
|
||||
IMAGE_PATH =
|
||||
INPUT_FILTER =
|
||||
FILTER_SOURCE_FILES = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration options related to the HTML output
|
||||
#---------------------------------------------------------------------------
|
||||
HTML_OUTPUT = i965
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration options related to the preprocessor
|
||||
#---------------------------------------------------------------------------
|
||||
ENABLE_PREPROCESSING = YES
|
||||
MACRO_EXPANSION = NO
|
||||
EXPAND_ONLY_PREDEF = NO
|
||||
SEARCH_INCLUDES = YES
|
||||
INCLUDE_PATH = ../include/
|
||||
INCLUDE_FILE_PATTERNS =
|
||||
PREDEFINED =
|
||||
EXPAND_AS_DEFINED =
|
||||
SKIP_FUNCTION_MACROS = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration::additions related to external references
|
||||
#---------------------------------------------------------------------------
|
||||
TAGFILES = glsl.tag=../glsl \
|
||||
main.tag=../main \
|
||||
math.tag=../math \
|
||||
swrast.tag=../swrast \
|
||||
swrast_setup.tag=../swrast_setup \
|
||||
tnl.tag=../tnl \
|
||||
tnl_dd.tag=../tnl_dd \
|
||||
vbo.tag=vbo
|
||||
GENERATE_TAGFILE = i965.tag
|
@@ -34,7 +34,7 @@ SEARCH_INCLUDES = YES
|
||||
INCLUDE_PATH = ../include/
|
||||
INCLUDE_FILE_PATTERNS =
|
||||
PREDEFINED =
|
||||
EXPAND_AS_DEFINED =
|
||||
EXPAND_AS_DEFINED = _glthread_DECLARE_STATIC_MUTEX
|
||||
SKIP_FUNCTION_MACROS = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration::addtions related to external references
|
||||
|
364
include/CL/cl.h
364
include/CL/cl.h
@@ -1,5 +1,5 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008 - 2012 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2010 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
@@ -21,6 +21,8 @@
|
||||
* MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
******************************************************************************/
|
||||
|
||||
/* $Revision: 11985 $ on $Date: 2010-07-15 11:16:06 -0700 (Thu, 15 Jul 2010) $ */
|
||||
|
||||
#ifndef __OPENCL_CL_H
|
||||
#define __OPENCL_CL_H
|
||||
|
||||
@@ -56,10 +58,8 @@ typedef cl_uint cl_device_mem_cache_type;
|
||||
typedef cl_uint cl_device_local_mem_type;
|
||||
typedef cl_bitfield cl_device_exec_capabilities;
|
||||
typedef cl_bitfield cl_command_queue_properties;
|
||||
typedef intptr_t cl_device_partition_property;
|
||||
typedef cl_bitfield cl_device_affinity_domain;
|
||||
|
||||
typedef intptr_t cl_context_properties;
|
||||
typedef intptr_t cl_context_properties;
|
||||
typedef cl_uint cl_context_info;
|
||||
typedef cl_uint cl_command_queue_info;
|
||||
typedef cl_uint cl_channel_order;
|
||||
@@ -67,7 +67,6 @@ typedef cl_uint cl_channel_type;
|
||||
typedef cl_bitfield cl_mem_flags;
|
||||
typedef cl_uint cl_mem_object_type;
|
||||
typedef cl_uint cl_mem_info;
|
||||
typedef cl_bitfield cl_mem_migration_flags;
|
||||
typedef cl_uint cl_image_info;
|
||||
typedef cl_uint cl_buffer_create_type;
|
||||
typedef cl_uint cl_addressing_mode;
|
||||
@@ -76,43 +75,24 @@ typedef cl_uint cl_sampler_info;
|
||||
typedef cl_bitfield cl_map_flags;
|
||||
typedef cl_uint cl_program_info;
|
||||
typedef cl_uint cl_program_build_info;
|
||||
typedef cl_uint cl_program_binary_type;
|
||||
typedef cl_int cl_build_status;
|
||||
typedef cl_uint cl_kernel_info;
|
||||
typedef cl_uint cl_kernel_arg_info;
|
||||
typedef cl_uint cl_kernel_arg_address_qualifier;
|
||||
typedef cl_uint cl_kernel_arg_access_qualifier;
|
||||
typedef cl_bitfield cl_kernel_arg_type_qualifier;
|
||||
typedef cl_uint cl_kernel_work_group_info;
|
||||
typedef cl_uint cl_event_info;
|
||||
typedef cl_uint cl_command_type;
|
||||
typedef cl_uint cl_profiling_info;
|
||||
|
||||
|
||||
typedef struct _cl_image_format {
|
||||
cl_channel_order image_channel_order;
|
||||
cl_channel_type image_channel_data_type;
|
||||
} cl_image_format;
|
||||
|
||||
typedef struct _cl_image_desc {
|
||||
cl_mem_object_type image_type;
|
||||
size_t image_width;
|
||||
size_t image_height;
|
||||
size_t image_depth;
|
||||
size_t image_array_size;
|
||||
size_t image_row_pitch;
|
||||
size_t image_slice_pitch;
|
||||
cl_uint num_mip_levels;
|
||||
cl_uint num_samples;
|
||||
cl_mem buffer;
|
||||
} cl_image_desc;
|
||||
|
||||
typedef struct _cl_buffer_region {
|
||||
size_t origin;
|
||||
size_t size;
|
||||
} cl_buffer_region;
|
||||
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
/* Error Codes */
|
||||
@@ -131,11 +111,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_MAP_FAILURE -12
|
||||
#define CL_MISALIGNED_SUB_BUFFER_OFFSET -13
|
||||
#define CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST -14
|
||||
#define CL_COMPILE_PROGRAM_FAILURE -15
|
||||
#define CL_LINKER_NOT_AVAILABLE -16
|
||||
#define CL_LINK_PROGRAM_FAILURE -17
|
||||
#define CL_DEVICE_PARTITION_FAILED -18
|
||||
#define CL_KERNEL_ARG_INFO_NOT_AVAILABLE -19
|
||||
|
||||
#define CL_INVALID_VALUE -30
|
||||
#define CL_INVALID_DEVICE_TYPE -31
|
||||
@@ -172,21 +147,14 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_INVALID_MIP_LEVEL -62
|
||||
#define CL_INVALID_GLOBAL_WORK_SIZE -63
|
||||
#define CL_INVALID_PROPERTY -64
|
||||
#define CL_INVALID_IMAGE_DESCRIPTOR -65
|
||||
#define CL_INVALID_COMPILER_OPTIONS -66
|
||||
#define CL_INVALID_LINKER_OPTIONS -67
|
||||
#define CL_INVALID_DEVICE_PARTITION_COUNT -68
|
||||
|
||||
/* OpenCL Version */
|
||||
#define CL_VERSION_1_0 1
|
||||
#define CL_VERSION_1_1 1
|
||||
#define CL_VERSION_1_2 1
|
||||
|
||||
/* cl_bool */
|
||||
#define CL_FALSE 0
|
||||
#define CL_TRUE 1
|
||||
#define CL_BLOCKING CL_TRUE
|
||||
#define CL_NON_BLOCKING CL_FALSE
|
||||
|
||||
/* cl_platform_info */
|
||||
#define CL_PLATFORM_PROFILE 0x0900
|
||||
@@ -200,7 +168,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_DEVICE_TYPE_CPU (1 << 1)
|
||||
#define CL_DEVICE_TYPE_GPU (1 << 2)
|
||||
#define CL_DEVICE_TYPE_ACCELERATOR (1 << 3)
|
||||
#define CL_DEVICE_TYPE_CUSTOM (1 << 4)
|
||||
#define CL_DEVICE_TYPE_ALL 0xFFFFFFFF
|
||||
|
||||
/* cl_device_info */
|
||||
@@ -254,7 +221,7 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_DEVICE_VERSION 0x102F
|
||||
#define CL_DEVICE_EXTENSIONS 0x1030
|
||||
#define CL_DEVICE_PLATFORM 0x1031
|
||||
#define CL_DEVICE_DOUBLE_FP_CONFIG 0x1032
|
||||
/* 0x1032 reserved for CL_DEVICE_DOUBLE_FP_CONFIG */
|
||||
/* 0x1033 reserved for CL_DEVICE_HALF_FP_CONFIG */
|
||||
#define CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF 0x1034
|
||||
#define CL_DEVICE_HOST_UNIFIED_MEMORY 0x1035
|
||||
@@ -266,20 +233,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE 0x103B
|
||||
#define CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF 0x103C
|
||||
#define CL_DEVICE_OPENCL_C_VERSION 0x103D
|
||||
#define CL_DEVICE_LINKER_AVAILABLE 0x103E
|
||||
#define CL_DEVICE_BUILT_IN_KERNELS 0x103F
|
||||
#define CL_DEVICE_IMAGE_MAX_BUFFER_SIZE 0x1040
|
||||
#define CL_DEVICE_IMAGE_MAX_ARRAY_SIZE 0x1041
|
||||
#define CL_DEVICE_PARENT_DEVICE 0x1042
|
||||
#define CL_DEVICE_PARTITION_MAX_SUB_DEVICES 0x1043
|
||||
#define CL_DEVICE_PARTITION_PROPERTIES 0x1044
|
||||
#define CL_DEVICE_PARTITION_AFFINITY_DOMAIN 0x1045
|
||||
#define CL_DEVICE_PARTITION_TYPE 0x1046
|
||||
#define CL_DEVICE_REFERENCE_COUNT 0x1047
|
||||
#define CL_DEVICE_PREFERRED_INTEROP_USER_SYNC 0x1048
|
||||
#define CL_DEVICE_PRINTF_BUFFER_SIZE 0x1049
|
||||
#define CL_DEVICE_IMAGE_PITCH_ALIGNMENT 0x104A
|
||||
#define CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT 0x104B
|
||||
|
||||
/* cl_device_fp_config - bitfield */
|
||||
#define CL_FP_DENORM (1 << 0)
|
||||
@@ -289,7 +242,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_FP_ROUND_TO_INF (1 << 4)
|
||||
#define CL_FP_FMA (1 << 5)
|
||||
#define CL_FP_SOFT_FLOAT (1 << 6)
|
||||
#define CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT (1 << 7)
|
||||
|
||||
/* cl_device_mem_cache_type */
|
||||
#define CL_NONE 0x0
|
||||
@@ -314,23 +266,8 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_CONTEXT_PROPERTIES 0x1082
|
||||
#define CL_CONTEXT_NUM_DEVICES 0x1083
|
||||
|
||||
/* cl_context_properties */
|
||||
/* cl_context_info + cl_context_properties */
|
||||
#define CL_CONTEXT_PLATFORM 0x1084
|
||||
#define CL_CONTEXT_INTEROP_USER_SYNC 0x1085
|
||||
|
||||
/* cl_device_partition_property */
|
||||
#define CL_DEVICE_PARTITION_EQUALLY 0x1086
|
||||
#define CL_DEVICE_PARTITION_BY_COUNTS 0x1087
|
||||
#define CL_DEVICE_PARTITION_BY_COUNTS_LIST_END 0x0
|
||||
#define CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN 0x1088
|
||||
|
||||
/* cl_device_affinity_domain */
|
||||
#define CL_DEVICE_AFFINITY_DOMAIN_NUMA (1 << 0)
|
||||
#define CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE (1 << 1)
|
||||
#define CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE (1 << 2)
|
||||
#define CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE (1 << 3)
|
||||
#define CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE (1 << 4)
|
||||
#define CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE (1 << 5)
|
||||
|
||||
/* cl_command_queue_info */
|
||||
#define CL_QUEUE_CONTEXT 0x1090
|
||||
@@ -345,14 +282,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_MEM_USE_HOST_PTR (1 << 3)
|
||||
#define CL_MEM_ALLOC_HOST_PTR (1 << 4)
|
||||
#define CL_MEM_COPY_HOST_PTR (1 << 5)
|
||||
/* reserved (1 << 6) */
|
||||
#define CL_MEM_HOST_WRITE_ONLY (1 << 7)
|
||||
#define CL_MEM_HOST_READ_ONLY (1 << 8)
|
||||
#define CL_MEM_HOST_NO_ACCESS (1 << 9)
|
||||
|
||||
/* cl_mem_migration_flags - bitfield */
|
||||
#define CL_MIGRATE_MEM_OBJECT_HOST (1 << 0)
|
||||
#define CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED (1 << 1)
|
||||
|
||||
/* cl_channel_order */
|
||||
#define CL_R 0x10B0
|
||||
@@ -368,8 +297,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_Rx 0x10BA
|
||||
#define CL_RGx 0x10BB
|
||||
#define CL_RGBx 0x10BC
|
||||
#define CL_DEPTH 0x10BD
|
||||
#define CL_DEPTH_STENCIL 0x10BE
|
||||
|
||||
/* cl_channel_type */
|
||||
#define CL_SNORM_INT8 0x10D0
|
||||
@@ -387,16 +314,11 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_UNSIGNED_INT32 0x10DC
|
||||
#define CL_HALF_FLOAT 0x10DD
|
||||
#define CL_FLOAT 0x10DE
|
||||
#define CL_UNORM_INT24 0x10DF
|
||||
|
||||
/* cl_mem_object_type */
|
||||
#define CL_MEM_OBJECT_BUFFER 0x10F0
|
||||
#define CL_MEM_OBJECT_IMAGE2D 0x10F1
|
||||
#define CL_MEM_OBJECT_IMAGE3D 0x10F2
|
||||
#define CL_MEM_OBJECT_IMAGE2D_ARRAY 0x10F3
|
||||
#define CL_MEM_OBJECT_IMAGE1D 0x10F4
|
||||
#define CL_MEM_OBJECT_IMAGE1D_ARRAY 0x10F5
|
||||
#define CL_MEM_OBJECT_IMAGE1D_BUFFER 0x10F6
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_TYPE 0x1100
|
||||
@@ -417,10 +339,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_IMAGE_WIDTH 0x1114
|
||||
#define CL_IMAGE_HEIGHT 0x1115
|
||||
#define CL_IMAGE_DEPTH 0x1116
|
||||
#define CL_IMAGE_ARRAY_SIZE 0x1117
|
||||
#define CL_IMAGE_BUFFER 0x1118
|
||||
#define CL_IMAGE_NUM_MIP_LEVELS 0x1119
|
||||
#define CL_IMAGE_NUM_SAMPLES 0x111A
|
||||
|
||||
/* cl_addressing_mode */
|
||||
#define CL_ADDRESS_NONE 0x1130
|
||||
@@ -443,7 +361,6 @@ typedef struct _cl_buffer_region {
|
||||
/* cl_map_flags - bitfield */
|
||||
#define CL_MAP_READ (1 << 0)
|
||||
#define CL_MAP_WRITE (1 << 1)
|
||||
#define CL_MAP_WRITE_INVALIDATE_REGION (1 << 2)
|
||||
|
||||
/* cl_program_info */
|
||||
#define CL_PROGRAM_REFERENCE_COUNT 0x1160
|
||||
@@ -453,20 +370,11 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_PROGRAM_SOURCE 0x1164
|
||||
#define CL_PROGRAM_BINARY_SIZES 0x1165
|
||||
#define CL_PROGRAM_BINARIES 0x1166
|
||||
#define CL_PROGRAM_NUM_KERNELS 0x1167
|
||||
#define CL_PROGRAM_KERNEL_NAMES 0x1168
|
||||
|
||||
/* cl_program_build_info */
|
||||
#define CL_PROGRAM_BUILD_STATUS 0x1181
|
||||
#define CL_PROGRAM_BUILD_OPTIONS 0x1182
|
||||
#define CL_PROGRAM_BUILD_LOG 0x1183
|
||||
#define CL_PROGRAM_BINARY_TYPE 0x1184
|
||||
|
||||
/* cl_program_binary_type */
|
||||
#define CL_PROGRAM_BINARY_TYPE_NONE 0x0
|
||||
#define CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT 0x1
|
||||
#define CL_PROGRAM_BINARY_TYPE_LIBRARY 0x2
|
||||
#define CL_PROGRAM_BINARY_TYPE_EXECUTABLE 0x4
|
||||
|
||||
/* cl_build_status */
|
||||
#define CL_BUILD_SUCCESS 0
|
||||
@@ -480,32 +388,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_KERNEL_REFERENCE_COUNT 0x1192
|
||||
#define CL_KERNEL_CONTEXT 0x1193
|
||||
#define CL_KERNEL_PROGRAM 0x1194
|
||||
#define CL_KERNEL_ATTRIBUTES 0x1195
|
||||
|
||||
/* cl_kernel_arg_info */
|
||||
#define CL_KERNEL_ARG_ADDRESS_QUALIFIER 0x1196
|
||||
#define CL_KERNEL_ARG_ACCESS_QUALIFIER 0x1197
|
||||
#define CL_KERNEL_ARG_TYPE_NAME 0x1198
|
||||
#define CL_KERNEL_ARG_TYPE_QUALIFIER 0x1199
|
||||
#define CL_KERNEL_ARG_NAME 0x119A
|
||||
|
||||
/* cl_kernel_arg_address_qualifier */
|
||||
#define CL_KERNEL_ARG_ADDRESS_GLOBAL 0x119B
|
||||
#define CL_KERNEL_ARG_ADDRESS_LOCAL 0x119C
|
||||
#define CL_KERNEL_ARG_ADDRESS_CONSTANT 0x119D
|
||||
#define CL_KERNEL_ARG_ADDRESS_PRIVATE 0x119E
|
||||
|
||||
/* cl_kernel_arg_access_qualifier */
|
||||
#define CL_KERNEL_ARG_ACCESS_READ_ONLY 0x11A0
|
||||
#define CL_KERNEL_ARG_ACCESS_WRITE_ONLY 0x11A1
|
||||
#define CL_KERNEL_ARG_ACCESS_READ_WRITE 0x11A2
|
||||
#define CL_KERNEL_ARG_ACCESS_NONE 0x11A3
|
||||
|
||||
/* cl_kernel_arg_type_qualifer */
|
||||
#define CL_KERNEL_ARG_TYPE_NONE 0
|
||||
#define CL_KERNEL_ARG_TYPE_CONST (1 << 0)
|
||||
#define CL_KERNEL_ARG_TYPE_RESTRICT (1 << 1)
|
||||
#define CL_KERNEL_ARG_TYPE_VOLATILE (1 << 2)
|
||||
|
||||
/* cl_kernel_work_group_info */
|
||||
#define CL_KERNEL_WORK_GROUP_SIZE 0x11B0
|
||||
@@ -513,7 +395,6 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_KERNEL_LOCAL_MEM_SIZE 0x11B2
|
||||
#define CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE 0x11B3
|
||||
#define CL_KERNEL_PRIVATE_MEM_SIZE 0x11B4
|
||||
#define CL_KERNEL_GLOBAL_WORK_SIZE 0x11B5
|
||||
|
||||
/* cl_event_info */
|
||||
#define CL_EVENT_COMMAND_QUEUE 0x11D0
|
||||
@@ -544,17 +425,13 @@ typedef struct _cl_buffer_region {
|
||||
#define CL_COMMAND_WRITE_BUFFER_RECT 0x1202
|
||||
#define CL_COMMAND_COPY_BUFFER_RECT 0x1203
|
||||
#define CL_COMMAND_USER 0x1204
|
||||
#define CL_COMMAND_BARRIER 0x1205
|
||||
#define CL_COMMAND_MIGRATE_MEM_OBJECTS 0x1206
|
||||
#define CL_COMMAND_FILL_BUFFER 0x1207
|
||||
#define CL_COMMAND_FILL_IMAGE 0x1208
|
||||
|
||||
/* command execution status */
|
||||
#define CL_COMPLETE 0x0
|
||||
#define CL_RUNNING 0x1
|
||||
#define CL_SUBMITTED 0x2
|
||||
#define CL_QUEUED 0x3
|
||||
|
||||
|
||||
/* cl_buffer_create_type */
|
||||
#define CL_BUFFER_CREATE_TYPE_REGION 0x1220
|
||||
|
||||
@@ -593,35 +470,22 @@ clGetDeviceInfo(cl_device_id /* device */,
|
||||
size_t /* param_value_size */,
|
||||
void * /* param_value */,
|
||||
size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clCreateSubDevices(cl_device_id /* in_device */,
|
||||
const cl_device_partition_property * /* properties */,
|
||||
cl_uint /* num_devices */,
|
||||
cl_device_id * /* out_devices */,
|
||||
cl_uint * /* num_devices_ret */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clRetainDevice(cl_device_id /* device */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clReleaseDevice(cl_device_id /* device */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
/* Context APIs */
|
||||
extern CL_API_ENTRY cl_context CL_API_CALL
|
||||
clCreateContext(const cl_context_properties * /* properties */,
|
||||
cl_uint /* num_devices */,
|
||||
const cl_device_id * /* devices */,
|
||||
cl_uint /* num_devices */,
|
||||
const cl_device_id * /* devices */,
|
||||
void (CL_CALLBACK * /* pfn_notify */)(const char *, const void *, size_t, void *),
|
||||
void * /* user_data */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
void * /* user_data */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_context CL_API_CALL
|
||||
clCreateContextFromType(const cl_context_properties * /* properties */,
|
||||
cl_device_type /* device_type */,
|
||||
cl_device_type /* device_type */,
|
||||
void (CL_CALLBACK * /* pfn_notify*/ )(const char *, const void *, size_t, void *),
|
||||
void * /* user_data */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
void * /* user_data */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clRetainContext(cl_context /* context */) CL_API_SUFFIX__VERSION_1_0;
|
||||
@@ -656,6 +520,25 @@ clGetCommandQueueInfo(cl_command_queue /* command_queue */,
|
||||
void * /* param_value */,
|
||||
size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_0_APIS
|
||||
#warning CL_USE_DEPRECATED_OPENCL_1_0_APIS is defined. These APIs are unsupported and untested in OpenCL 1.1!
|
||||
/*
|
||||
* WARNING:
|
||||
* This API introduces mutable state into the OpenCL implementation. It has been REMOVED
|
||||
* to better facilitate thread safety. The 1.0 API is not thread safe. It is not tested by the
|
||||
* OpenCL 1.1 conformance test, and consequently may not work or may not work dependably.
|
||||
* It is likely to be non-performant. Use of this API is not advised. Use at your own risk.
|
||||
*
|
||||
* Software developers previously relying on this API are instructed to set the command queue
|
||||
* properties when creating the queue, instead.
|
||||
*/
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clSetCommandQueueProperty(cl_command_queue /* command_queue */,
|
||||
cl_command_queue_properties /* properties */,
|
||||
cl_bool /* enable */,
|
||||
cl_command_queue_properties * /* old_properties */) CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED;
|
||||
#endif /* CL_USE_DEPRECATED_OPENCL_1_0_APIS */
|
||||
|
||||
/* Memory Object APIs */
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateBuffer(cl_context /* context */,
|
||||
@@ -672,12 +555,26 @@ clCreateSubBuffer(cl_mem /* buffer */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateImage(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
const cl_image_format * /* image_format */,
|
||||
const cl_image_desc * /* image_desc */,
|
||||
void * /* host_ptr */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_2;
|
||||
clCreateImage2D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
const cl_image_format * /* image_format */,
|
||||
size_t /* image_width */,
|
||||
size_t /* image_height */,
|
||||
size_t /* image_row_pitch */,
|
||||
void * /* host_ptr */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateImage3D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
const cl_image_format * /* image_format */,
|
||||
size_t /* image_width */,
|
||||
size_t /* image_height */,
|
||||
size_t /* image_depth */,
|
||||
size_t /* image_row_pitch */,
|
||||
size_t /* image_slice_pitch */,
|
||||
void * /* host_ptr */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clRetainMemObject(cl_mem /* memobj */) CL_API_SUFFIX__VERSION_1_0;
|
||||
@@ -712,7 +609,7 @@ clSetMemObjectDestructorCallback( cl_mem /* memobj */,
|
||||
void (CL_CALLBACK * /*pfn_notify*/)( cl_mem /* memobj */, void* /*user_data*/),
|
||||
void * /*user_data */ ) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
/* Sampler APIs */
|
||||
/* Sampler APIs */
|
||||
extern CL_API_ENTRY cl_sampler CL_API_CALL
|
||||
clCreateSampler(cl_context /* context */,
|
||||
cl_bool /* normalized_coords */,
|
||||
@@ -750,13 +647,6 @@ clCreateProgramWithBinary(cl_context /* context */,
|
||||
cl_int * /* binary_status */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_program CL_API_CALL
|
||||
clCreateProgramWithBuiltInKernels(cl_context /* context */,
|
||||
cl_uint /* num_devices */,
|
||||
const cl_device_id * /* device_list */,
|
||||
const char * /* kernel_names */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clRetainProgram(cl_program /* program */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
@@ -772,30 +662,7 @@ clBuildProgram(cl_program /* program */,
|
||||
void * /* user_data */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clCompileProgram(cl_program /* program */,
|
||||
cl_uint /* num_devices */,
|
||||
const cl_device_id * /* device_list */,
|
||||
const char * /* options */,
|
||||
cl_uint /* num_input_headers */,
|
||||
const cl_program * /* input_headers */,
|
||||
const char ** /* header_include_names */,
|
||||
void (CL_CALLBACK * /* pfn_notify */)(cl_program /* program */, void * /* user_data */),
|
||||
void * /* user_data */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_program CL_API_CALL
|
||||
clLinkProgram(cl_context /* context */,
|
||||
cl_uint /* num_devices */,
|
||||
const cl_device_id * /* device_list */,
|
||||
const char * /* options */,
|
||||
cl_uint /* num_input_programs */,
|
||||
const cl_program * /* input_programs */,
|
||||
void (CL_CALLBACK * /* pfn_notify */)(cl_program /* program */, void * /* user_data */),
|
||||
void * /* user_data */,
|
||||
cl_int * /* errcode_ret */ ) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clUnloadPlatformCompiler(cl_platform_id /* platform */) CL_API_SUFFIX__VERSION_1_2;
|
||||
clUnloadCompiler(void) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetProgramInfo(cl_program /* program */,
|
||||
@@ -843,14 +710,6 @@ clGetKernelInfo(cl_kernel /* kernel */,
|
||||
void * /* param_value */,
|
||||
size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetKernelArgInfo(cl_kernel /* kernel */,
|
||||
cl_uint /* arg_indx */,
|
||||
cl_kernel_arg_info /* param_name */,
|
||||
size_t /* param_value_size */,
|
||||
void * /* param_value */,
|
||||
size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetKernelWorkGroupInfo(cl_kernel /* kernel */,
|
||||
cl_device_id /* device */,
|
||||
@@ -859,7 +718,7 @@ clGetKernelWorkGroupInfo(cl_kernel /* kernel */,
|
||||
void * /* param_value */,
|
||||
size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
/* Event Object APIs */
|
||||
/* Event Object APIs */
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clWaitForEvents(cl_uint /* num_events */,
|
||||
const cl_event * /* event_list */) CL_API_SUFFIX__VERSION_1_0;
|
||||
@@ -891,7 +750,7 @@ clSetEventCallback( cl_event /* event */,
|
||||
void (CL_CALLBACK * /* pfn_notify */)(cl_event, cl_int, void *),
|
||||
void * /* user_data */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
/* Profiling APIs */
|
||||
/* Profiling APIs */
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetEventProfilingInfo(cl_event /* event */,
|
||||
cl_profiling_info /* param_name */,
|
||||
@@ -912,7 +771,7 @@ clEnqueueReadBuffer(cl_command_queue /* command_queue */,
|
||||
cl_mem /* buffer */,
|
||||
cl_bool /* blocking_read */,
|
||||
size_t /* offset */,
|
||||
size_t /* size */,
|
||||
size_t /* cb */,
|
||||
void * /* ptr */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
@@ -922,8 +781,8 @@ extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReadBufferRect(cl_command_queue /* command_queue */,
|
||||
cl_mem /* buffer */,
|
||||
cl_bool /* blocking_read */,
|
||||
const size_t * /* buffer_offset */,
|
||||
const size_t * /* host_offset */,
|
||||
const size_t * /* buffer_origin */,
|
||||
const size_t * /* host_origin */,
|
||||
const size_t * /* region */,
|
||||
size_t /* buffer_row_pitch */,
|
||||
size_t /* buffer_slice_pitch */,
|
||||
@@ -939,7 +798,7 @@ clEnqueueWriteBuffer(cl_command_queue /* command_queue */,
|
||||
cl_mem /* buffer */,
|
||||
cl_bool /* blocking_write */,
|
||||
size_t /* offset */,
|
||||
size_t /* size */,
|
||||
size_t /* cb */,
|
||||
const void * /* ptr */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
@@ -949,8 +808,8 @@ extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueWriteBufferRect(cl_command_queue /* command_queue */,
|
||||
cl_mem /* buffer */,
|
||||
cl_bool /* blocking_write */,
|
||||
const size_t * /* buffer_offset */,
|
||||
const size_t * /* host_offset */,
|
||||
const size_t * /* buffer_origin */,
|
||||
const size_t * /* host_origin */,
|
||||
const size_t * /* region */,
|
||||
size_t /* buffer_row_pitch */,
|
||||
size_t /* buffer_slice_pitch */,
|
||||
@@ -961,24 +820,13 @@ clEnqueueWriteBufferRect(cl_command_queue /* command_queue */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueFillBuffer(cl_command_queue /* command_queue */,
|
||||
cl_mem /* buffer */,
|
||||
const void * /* pattern */,
|
||||
size_t /* pattern_size */,
|
||||
size_t /* offset */,
|
||||
size_t /* size */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueCopyBuffer(cl_command_queue /* command_queue */,
|
||||
cl_mem /* src_buffer */,
|
||||
cl_mem /* dst_buffer */,
|
||||
size_t /* src_offset */,
|
||||
size_t /* dst_offset */,
|
||||
size_t /* size */,
|
||||
size_t /* cb */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
@@ -1024,16 +872,6 @@ clEnqueueWriteImage(cl_command_queue /* command_queue */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueFillImage(cl_command_queue /* command_queue */,
|
||||
cl_mem /* image */,
|
||||
const void * /* fill_color */,
|
||||
const size_t * /* origin[3] */,
|
||||
const size_t * /* region[3] */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueCopyImage(cl_command_queue /* command_queue */,
|
||||
cl_mem /* src_image */,
|
||||
@@ -1073,7 +911,7 @@ clEnqueueMapBuffer(cl_command_queue /* command_queue */,
|
||||
cl_bool /* blocking_map */,
|
||||
cl_map_flags /* map_flags */,
|
||||
size_t /* offset */,
|
||||
size_t /* size */,
|
||||
size_t /* cb */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */,
|
||||
@@ -1101,15 +939,6 @@ clEnqueueUnmapMemObject(cl_command_queue /* command_queue */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueMigrateMemObjects(cl_command_queue /* command_queue */,
|
||||
cl_uint /* num_mem_objects */,
|
||||
const cl_mem * /* mem_objects */,
|
||||
cl_mem_migration_flags /* flags */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueNDRangeKernel(cl_command_queue /* command_queue */,
|
||||
cl_kernel /* kernel */,
|
||||
@@ -1130,7 +959,7 @@ clEnqueueTask(cl_command_queue /* command_queue */,
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueNativeKernel(cl_command_queue /* command_queue */,
|
||||
void (CL_CALLBACK * /*user_func*/)(void *),
|
||||
void (*user_func)(void *),
|
||||
void * /* args */,
|
||||
size_t /* cb_args */,
|
||||
cl_uint /* num_mem_objects */,
|
||||
@@ -1141,17 +970,16 @@ clEnqueueNativeKernel(cl_command_queue /* command_queue */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueMarkerWithWaitList(cl_command_queue /* command_queue */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2;
|
||||
clEnqueueMarker(cl_command_queue /* command_queue */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueBarrierWithWaitList(cl_command_queue /* command_queue */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_2;
|
||||
clEnqueueWaitForEvents(cl_command_queue /* command_queue */,
|
||||
cl_uint /* num_events */,
|
||||
const cl_event * /* event_list */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueBarrier(cl_command_queue /* command_queue */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
/* Extension function access
|
||||
*
|
||||
@@ -1160,51 +988,7 @@ clEnqueueBarrierWithWaitList(cl_command_queue /* command_queue */,
|
||||
* check to make sure the address is not NULL, before using or
|
||||
* calling the returned function address.
|
||||
*/
|
||||
extern CL_API_ENTRY void * CL_API_CALL
|
||||
clGetExtensionFunctionAddressForPlatform(cl_platform_id /* platform */,
|
||||
const char * /* func_name */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
|
||||
/* Deprecated OpenCL 1.1 APIs */
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateImage2D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
const cl_image_format * /* image_format */,
|
||||
size_t /* image_width */,
|
||||
size_t /* image_height */,
|
||||
size_t /* image_row_pitch */,
|
||||
void * /* host_ptr */,
|
||||
cl_int * /* errcode_ret */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateImage3D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
const cl_image_format * /* image_format */,
|
||||
size_t /* image_width */,
|
||||
size_t /* image_height */,
|
||||
size_t /* image_depth */,
|
||||
size_t /* image_row_pitch */,
|
||||
size_t /* image_slice_pitch */,
|
||||
void * /* host_ptr */,
|
||||
cl_int * /* errcode_ret */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueMarker(cl_command_queue /* command_queue */,
|
||||
cl_event * /* event */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueWaitForEvents(cl_command_queue /* command_queue */,
|
||||
cl_uint /* num_events */,
|
||||
const cl_event * /* event_list */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clEnqueueBarrier(cl_command_queue /* command_queue */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_int CL_API_CALL
|
||||
clUnloadCompiler(void) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED void * CL_API_CALL
|
||||
clGetExtensionFunctionAddress(const char * /* func_name */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
extern CL_API_ENTRY void * CL_API_CALL clGetExtensionFunctionAddress(const char * /* func_name */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -1,126 +0,0 @@
|
||||
/**********************************************************************************
|
||||
* Copyright (c) 2008-2012 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
* "Materials"), to deal in the Materials without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
* permit persons to whom the Materials are furnished to do so, subject to
|
||||
* the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included
|
||||
* in all copies or substantial portions of the Materials.
|
||||
*
|
||||
* THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
* MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
**********************************************************************************/
|
||||
|
||||
/* $Revision: 11708 $ on $Date: 2010-06-13 23:36:24 -0700 (Sun, 13 Jun 2010) $ */
|
||||
|
||||
#ifndef __OPENCL_CL_D3D10_H
|
||||
#define __OPENCL_CL_D3D10_H
|
||||
|
||||
#include <d3d10.h>
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl_platform.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
* cl_khr_d3d10_sharing */
|
||||
#define cl_khr_d3d10_sharing 1
|
||||
|
||||
typedef cl_uint cl_d3d10_device_source_khr;
|
||||
typedef cl_uint cl_d3d10_device_set_khr;
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
/* Error Codes */
|
||||
#define CL_INVALID_D3D10_DEVICE_KHR -1002
|
||||
#define CL_INVALID_D3D10_RESOURCE_KHR -1003
|
||||
#define CL_D3D10_RESOURCE_ALREADY_ACQUIRED_KHR -1004
|
||||
#define CL_D3D10_RESOURCE_NOT_ACQUIRED_KHR -1005
|
||||
|
||||
/* cl_d3d10_device_source_nv */
|
||||
#define CL_D3D10_DEVICE_KHR 0x4010
|
||||
#define CL_D3D10_DXGI_ADAPTER_KHR 0x4011
|
||||
|
||||
/* cl_d3d10_device_set_nv */
|
||||
#define CL_PREFERRED_DEVICES_FOR_D3D10_KHR 0x4012
|
||||
#define CL_ALL_DEVICES_FOR_D3D10_KHR 0x4013
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_D3D10_DEVICE_KHR 0x4014
|
||||
#define CL_CONTEXT_D3D10_PREFER_SHARED_RESOURCES_KHR 0x402C
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_D3D10_RESOURCE_KHR 0x4015
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_D3D10_SUBRESOURCE_KHR 0x4016
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_D3D10_OBJECTS_KHR 0x4017
|
||||
#define CL_COMMAND_RELEASE_D3D10_OBJECTS_KHR 0x4018
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromD3D10KHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_d3d10_device_source_khr d3d_device_source,
|
||||
void * d3d_object,
|
||||
cl_d3d10_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id * devices,
|
||||
cl_uint * num_devices) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D10BufferKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Buffer * resource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D10Texture2DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture2D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D10Texture3DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture3D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireD3D10ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseD3D10ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_CL_D3D10_H */
|
||||
|
@@ -1,126 +0,0 @@
|
||||
/**********************************************************************************
|
||||
* Copyright (c) 2008-2012 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
* "Materials"), to deal in the Materials without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
* permit persons to whom the Materials are furnished to do so, subject to
|
||||
* the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included
|
||||
* in all copies or substantial portions of the Materials.
|
||||
*
|
||||
* THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
* MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
**********************************************************************************/
|
||||
|
||||
/* $Revision: 11708 $ on $Date: 2010-06-13 23:36:24 -0700 (Sun, 13 Jun 2010) $ */
|
||||
|
||||
#ifndef __OPENCL_CL_D3D11_H
|
||||
#define __OPENCL_CL_D3D11_H
|
||||
|
||||
#include <d3d11.h>
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl_platform.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
* cl_khr_d3d11_sharing */
|
||||
#define cl_khr_d3d11_sharing 1
|
||||
|
||||
typedef cl_uint cl_d3d11_device_source_khr;
|
||||
typedef cl_uint cl_d3d11_device_set_khr;
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
/* Error Codes */
|
||||
#define CL_INVALID_D3D11_DEVICE_KHR -1006
|
||||
#define CL_INVALID_D3D11_RESOURCE_KHR -1007
|
||||
#define CL_D3D11_RESOURCE_ALREADY_ACQUIRED_KHR -1008
|
||||
#define CL_D3D11_RESOURCE_NOT_ACQUIRED_KHR -1009
|
||||
|
||||
/* cl_d3d11_device_source */
|
||||
#define CL_D3D11_DEVICE_KHR 0x4019
|
||||
#define CL_D3D11_DXGI_ADAPTER_KHR 0x401A
|
||||
|
||||
/* cl_d3d11_device_set */
|
||||
#define CL_PREFERRED_DEVICES_FOR_D3D11_KHR 0x401B
|
||||
#define CL_ALL_DEVICES_FOR_D3D11_KHR 0x401C
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_D3D11_DEVICE_KHR 0x401D
|
||||
#define CL_CONTEXT_D3D11_PREFER_SHARED_RESOURCES_KHR 0x402D
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_D3D11_RESOURCE_KHR 0x401E
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_D3D11_SUBRESOURCE_KHR 0x401F
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_D3D11_OBJECTS_KHR 0x4020
|
||||
#define CL_COMMAND_RELEASE_D3D11_OBJECTS_KHR 0x4021
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromD3D11KHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_d3d11_device_source_khr d3d_device_source,
|
||||
void * d3d_object,
|
||||
cl_d3d11_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id * devices,
|
||||
cl_uint * num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D11BufferKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Buffer * resource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D11Texture2DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture2D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromD3D11Texture3DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture3D * resource,
|
||||
UINT subresource,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireD3D11ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseD3D11ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_CL_D3D11_H */
|
||||
|
@@ -1,127 +0,0 @@
|
||||
/**********************************************************************************
|
||||
* Copyright (c) 2008-2012 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
* "Materials"), to deal in the Materials without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
* permit persons to whom the Materials are furnished to do so, subject to
|
||||
* the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included
|
||||
* in all copies or substantial portions of the Materials.
|
||||
*
|
||||
* THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
* MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
**********************************************************************************/
|
||||
|
||||
/* $Revision: 11708 $ on $Date: 2010-06-13 23:36:24 -0700 (Sun, 13 Jun 2010) $ */
|
||||
|
||||
#ifndef __OPENCL_CL_DX9_MEDIA_SHARING_H
|
||||
#define __OPENCL_CL_DX9_MEDIA_SHARING_H
|
||||
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl_platform.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
/* cl_khr_dx9_media_sharing */
|
||||
#define cl_khr_dx9_media_sharing 1
|
||||
|
||||
typedef cl_uint cl_dx9_media_adapter_type_khr;
|
||||
typedef cl_uint cl_dx9_media_adapter_set_khr;
|
||||
|
||||
#if defined(_WIN32)
|
||||
#include <d3d9.h>
|
||||
typedef struct _cl_dx9_surface_info_khr
|
||||
{
|
||||
IDirect3DSurface9 *resource;
|
||||
HANDLE shared_handle;
|
||||
} cl_dx9_surface_info_khr;
|
||||
#endif
|
||||
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
/* Error Codes */
|
||||
#define CL_INVALID_DX9_MEDIA_ADAPTER_KHR -1010
|
||||
#define CL_INVALID_DX9_MEDIA_SURFACE_KHR -1011
|
||||
#define CL_DX9_MEDIA_SURFACE_ALREADY_ACQUIRED_KHR -1012
|
||||
#define CL_DX9_MEDIA_SURFACE_NOT_ACQUIRED_KHR -1013
|
||||
|
||||
/* cl_media_adapter_type_khr */
|
||||
#define CL_ADAPTER_D3D9_KHR 0x2020
|
||||
#define CL_ADAPTER_D3D9EX_KHR 0x2021
|
||||
#define CL_ADAPTER_DXVA_KHR 0x2022
|
||||
|
||||
/* cl_media_adapter_set_khr */
|
||||
#define CL_PREFERRED_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR 0x2023
|
||||
#define CL_ALL_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR 0x2024
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_ADAPTER_D3D9_KHR 0x2025
|
||||
#define CL_CONTEXT_ADAPTER_D3D9EX_KHR 0x2026
|
||||
#define CL_CONTEXT_ADAPTER_DXVA_KHR 0x2027
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_DX9_MEDIA_ADAPTER_TYPE_KHR 0x2028
|
||||
#define CL_MEM_DX9_MEDIA_SURFACE_INFO_KHR 0x2029
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_DX9_MEDIA_PLANE_KHR 0x202A
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_DX9_MEDIA_SURFACES_KHR 0x202B
|
||||
#define CL_COMMAND_RELEASE_DX9_MEDIA_SURFACES_KHR 0x202C
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetDeviceIDsFromDX9MediaAdapterKHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_uint num_media_adapters,
|
||||
cl_dx9_media_adapter_type_khr * media_adapter_type,
|
||||
void * media_adapters,
|
||||
cl_dx9_media_adapter_set_khr media_adapter_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id * devices,
|
||||
cl_uint * num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromDX9MediaSurfaceKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_dx9_media_adapter_type_khr adapter_type,
|
||||
void * surface_info,
|
||||
cl_uint plane,
|
||||
cl_int * errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireDX9MediaSurfacesKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseDX9MediaSurfacesKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_CL_DX9_MEDIA_SHARING_H */
|
||||
|
@@ -1,133 +0,0 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2010 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
* "Materials"), to deal in the Materials without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
* permit persons to whom the Materials are furnished to do so, subject to
|
||||
* the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included
|
||||
* in all copies or substantial portions of the Materials.
|
||||
*
|
||||
* THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
* MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef __OPENCL_CL_EGL_H
|
||||
#define __OPENCL_CL_EGL_H
|
||||
|
||||
#ifdef __APPLE__
|
||||
|
||||
#else
|
||||
#include <CL/cl.h>
|
||||
#include <EGL/egl.h>
|
||||
#include <EGL/eglext.h>
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
/* Command type for events created with clEnqueueAcquireEGLObjectsKHR */
|
||||
#define CL_COMMAND_EGL_FENCE_SYNC_OBJECT_KHR 0x202F
|
||||
#define CL_COMMAND_ACQUIRE_EGL_OBJECTS_KHR 0x202D
|
||||
#define CL_COMMAND_RELEASE_EGL_OBJECTS_KHR 0x202E
|
||||
|
||||
/* Error type for clCreateFromEGLImageKHR */
|
||||
#define CL_INVALID_EGL_OBJECT_KHR -1093
|
||||
#define CL_EGL_RESOURCE_NOT_ACQUIRED_KHR -1092
|
||||
|
||||
/* CLeglImageKHR is an opaque handle to an EGLImage */
|
||||
typedef void* CLeglImageKHR;
|
||||
|
||||
/* CLeglDisplayKHR is an opaque handle to an EGLDisplay */
|
||||
typedef void* CLeglDisplayKHR;
|
||||
|
||||
/* CLeglSyncKHR is an opaque handle to an EGLSync object */
|
||||
typedef void* CLeglSyncKHR;
|
||||
|
||||
/* properties passed to clCreateFromEGLImageKHR */
|
||||
typedef intptr_t cl_egl_image_properties_khr;
|
||||
|
||||
|
||||
#define cl_khr_egl_image 1
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromEGLImageKHR(cl_context /* context */,
|
||||
CLeglDisplayKHR /* egldisplay */,
|
||||
CLeglImageKHR /* eglimage */,
|
||||
cl_mem_flags /* flags */,
|
||||
const cl_egl_image_properties_khr * /* properties */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_mem (CL_API_CALL *clCreateFromEGLImageKHR_fn)(
|
||||
cl_context context,
|
||||
CLeglDisplayKHR egldisplay,
|
||||
CLeglImageKHR eglimage,
|
||||
cl_mem_flags flags,
|
||||
const cl_egl_image_properties_khr * properties,
|
||||
cl_int * errcode_ret);
|
||||
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireEGLObjectsKHR(cl_command_queue /* command_queue */,
|
||||
cl_uint /* num_objects */,
|
||||
const cl_mem * /* mem_objects */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueAcquireEGLObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event);
|
||||
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseEGLObjectsKHR(cl_command_queue /* command_queue */,
|
||||
cl_uint /* num_objects */,
|
||||
const cl_mem * /* mem_objects */,
|
||||
cl_uint /* num_events_in_wait_list */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clEnqueueReleaseEGLObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem * mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event * event_wait_list,
|
||||
cl_event * event);
|
||||
|
||||
|
||||
#define cl_khr_egl_event 1
|
||||
|
||||
extern CL_API_ENTRY cl_event CL_API_CALL
|
||||
clCreateEventFromEGLSyncKHR(cl_context /* context */,
|
||||
CLeglSyncKHR /* sync */,
|
||||
CLeglDisplayKHR /* display */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef CL_API_ENTRY cl_event (CL_API_CALL *clCreateEventFromEGLSyncKHR_fn)(
|
||||
cl_context context,
|
||||
CLeglSyncKHR sync,
|
||||
CLeglDisplayKHR display,
|
||||
cl_int * errcode_ret);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_CL_EGL_H */
|
@@ -1,5 +1,5 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2013 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2010 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
@@ -34,12 +34,15 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef __APPLE__
|
||||
#include <OpenCL/cl.h>
|
||||
#include <OpenCL/cl.h>
|
||||
#include <AvailabilityMacros.h>
|
||||
#else
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl.h>
|
||||
#endif
|
||||
|
||||
/* cl_khr_fp64 extension - no extension #define since it has no functions */
|
||||
#define CL_DEVICE_DOUBLE_FP_CONFIG 0x1032
|
||||
|
||||
/* cl_khr_fp16 extension - no extension #define since it has no functions */
|
||||
#define CL_DEVICE_HALF_FP_CONFIG 0x1033
|
||||
|
||||
@@ -61,7 +64,7 @@ extern "C" {
|
||||
* before using.
|
||||
*/
|
||||
#define cl_APPLE_SetMemObjectDestructor 1
|
||||
cl_int CL_API_ENTRY clSetMemObjectDestructorAPPLE( cl_mem /* memobj */,
|
||||
cl_int CL_API_ENTRY clSetMemObjectDestructorAPPLE( cl_mem /* memobj */,
|
||||
void (* /*pfn_notify*/)( cl_mem /* memobj */, void* /*user_data*/),
|
||||
void * /*user_data */ ) CL_EXT_SUFFIX__VERSION_1_0;
|
||||
|
||||
@@ -115,52 +118,6 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clIcdGetPlatformIDsKHR_fn)(
|
||||
cl_uint * /* num_platforms */);
|
||||
|
||||
|
||||
/* Extension: cl_khr_image2D_buffer
|
||||
*
|
||||
* This extension allows a 2D image to be created from a cl_mem buffer without a copy.
|
||||
* The type associated with a 2D image created from a buffer in an OpenCL program is image2d_t.
|
||||
* Both the sampler and sampler-less read_image built-in functions are supported for 2D images
|
||||
* and 2D images created from a buffer. Similarly, the write_image built-ins are also supported
|
||||
* for 2D images created from a buffer.
|
||||
*
|
||||
* When the 2D image from buffer is created, the client must specify the width,
|
||||
* height, image format (i.e. channel order and channel data type) and optionally the row pitch
|
||||
*
|
||||
* The pitch specified must be a multiple of CL_DEVICE_IMAGE_PITCH_ALIGNMENT pixels.
|
||||
* The base address of the buffer must be aligned to CL_DEVICE_IMAGE_BASE_ADDRESS_ALIGNMENT pixels.
|
||||
*/
|
||||
|
||||
/*************************************
|
||||
* cl_khr_initalize_memory extension *
|
||||
*************************************/
|
||||
|
||||
#define CL_CONTEXT_MEMORY_INITIALIZE_KHR 0x200E
|
||||
|
||||
|
||||
/**************************************
|
||||
* cl_khr_terminate_context extension *
|
||||
**************************************/
|
||||
|
||||
#define CL_DEVICE_TERMINATE_CAPABILITY_KHR 0x200F
|
||||
#define CL_CONTEXT_TERMINATE_KHR 0x2010
|
||||
|
||||
#define cl_khr_terminate_context 1
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL clTerminateContextKHR(cl_context /* context */) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clTerminateContextKHR_fn)(cl_context /* context */) CL_EXT_SUFFIX__VERSION_1_2;
|
||||
|
||||
|
||||
/*
|
||||
* Extension: cl_khr_spir
|
||||
*
|
||||
* This extension adds support to create an OpenCL program object from a
|
||||
* Standard Portable Intermediate Representation (SPIR) instance
|
||||
*/
|
||||
|
||||
#define CL_DEVICE_SPIR_VERSIONS 0x40E0
|
||||
#define CL_PROGRAM_BINARY_TYPE_INTERMEDIATE 0x40E1
|
||||
|
||||
|
||||
/******************************************
|
||||
* cl_nv_device_attribute_query extension *
|
||||
******************************************/
|
||||
@@ -173,16 +130,12 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clTerminateContextKHR_fn)(cl_context /
|
||||
#define CL_DEVICE_KERNEL_EXEC_TIMEOUT_NV 0x4005
|
||||
#define CL_DEVICE_INTEGRATED_MEMORY_NV 0x4006
|
||||
|
||||
|
||||
/*********************************
|
||||
* cl_amd_device_attribute_query *
|
||||
*********************************/
|
||||
#define CL_DEVICE_PROFILING_TIMER_OFFSET_AMD 0x4036
|
||||
|
||||
/*********************************
|
||||
* cl_arm_printf extension
|
||||
*********************************/
|
||||
#define CL_PRINTF_CALLBACK_ARM 0x40B0
|
||||
#define CL_PRINTF_BUFFERSIZE_ARM 0x40B1
|
||||
|
||||
#ifdef CL_VERSION_1_1
|
||||
/***********************************
|
||||
@@ -248,63 +201,7 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clTerminateContextKHR_fn)(cl_context /
|
||||
#define CL_PARTITION_BY_COUNTS_LIST_END_EXT ((cl_device_partition_property_ext) 0)
|
||||
#define CL_PARTITION_BY_NAMES_LIST_END_EXT ((cl_device_partition_property_ext) 0 - 1)
|
||||
|
||||
/*********************************
|
||||
* cl_qcom_ext_host_ptr extension
|
||||
*********************************/
|
||||
|
||||
#define CL_MEM_EXT_HOST_PTR_QCOM (1 << 29)
|
||||
|
||||
#define CL_DEVICE_EXT_MEM_PADDING_IN_BYTES_QCOM 0x40A0
|
||||
#define CL_DEVICE_PAGE_SIZE_QCOM 0x40A1
|
||||
#define CL_IMAGE_ROW_ALIGNMENT_QCOM 0x40A2
|
||||
#define CL_IMAGE_SLICE_ALIGNMENT_QCOM 0x40A3
|
||||
#define CL_MEM_HOST_UNCACHED_QCOM 0x40A4
|
||||
#define CL_MEM_HOST_WRITEBACK_QCOM 0x40A5
|
||||
#define CL_MEM_HOST_WRITETHROUGH_QCOM 0x40A6
|
||||
#define CL_MEM_HOST_WRITE_COMBINING_QCOM 0x40A7
|
||||
|
||||
typedef cl_uint cl_image_pitch_info_qcom;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceImageInfoQCOM(cl_device_id device,
|
||||
size_t image_width,
|
||||
size_t image_height,
|
||||
const cl_image_format *image_format,
|
||||
cl_image_pitch_info_qcom param_name,
|
||||
size_t param_value_size,
|
||||
void *param_value,
|
||||
size_t *param_value_size_ret);
|
||||
|
||||
typedef struct _cl_mem_ext_host_ptr
|
||||
{
|
||||
/* Type of external memory allocation. */
|
||||
/* Legal values will be defined in layered extensions. */
|
||||
cl_uint allocation_type;
|
||||
|
||||
/* Host cache policy for this external memory allocation. */
|
||||
cl_uint host_cache_policy;
|
||||
|
||||
} cl_mem_ext_host_ptr;
|
||||
|
||||
/*********************************
|
||||
* cl_qcom_ion_host_ptr extension
|
||||
*********************************/
|
||||
|
||||
#define CL_MEM_ION_HOST_PTR_QCOM 0x40A8
|
||||
|
||||
typedef struct _cl_mem_ion_host_ptr
|
||||
{
|
||||
/* Type of external memory allocation. */
|
||||
/* Must be CL_MEM_ION_HOST_PTR_QCOM for ION allocations. */
|
||||
cl_mem_ext_host_ptr ext_host_ptr;
|
||||
|
||||
/* ION file descriptor */
|
||||
int ion_filedesc;
|
||||
|
||||
/* Host pointer to the ION allocated memory */
|
||||
void* ion_hostptr;
|
||||
|
||||
} cl_mem_ion_host_ptr;
|
||||
|
||||
#endif /* CL_VERSION_1_1 */
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/**********************************************************************************
|
||||
* Copyright (c) 2008 - 2012 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2010 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
@@ -21,11 +21,20 @@
|
||||
* MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
**********************************************************************************/
|
||||
|
||||
/* $Revision: 11708 $ on $Date: 2010-06-13 23:36:24 -0700 (Sun, 13 Jun 2010) $ */
|
||||
|
||||
/*
|
||||
* cl_gl.h contains Khronos-approved (KHR) OpenCL extensions which have
|
||||
* OpenGL dependencies. The application is responsible for #including
|
||||
* OpenGL or OpenGL ES headers before #including cl_gl.h.
|
||||
*/
|
||||
|
||||
#ifndef __OPENCL_CL_GL_H
|
||||
#define __OPENCL_CL_GL_H
|
||||
|
||||
#ifdef __APPLE__
|
||||
#include <OpenCL/cl.h>
|
||||
#include <OpenGL/CGLDevice.h>
|
||||
#else
|
||||
#include <CL/cl.h>
|
||||
#endif
|
||||
@@ -39,21 +48,15 @@ typedef cl_uint cl_gl_texture_info;
|
||||
typedef cl_uint cl_gl_platform_info;
|
||||
typedef struct __GLsync *cl_GLsync;
|
||||
|
||||
/* cl_gl_object_type = 0x2000 - 0x200F enum values are currently taken */
|
||||
#define CL_GL_OBJECT_BUFFER 0x2000
|
||||
#define CL_GL_OBJECT_TEXTURE2D 0x2001
|
||||
#define CL_GL_OBJECT_TEXTURE3D 0x2002
|
||||
#define CL_GL_OBJECT_RENDERBUFFER 0x2003
|
||||
#define CL_GL_OBJECT_TEXTURE2D_ARRAY 0x200E
|
||||
#define CL_GL_OBJECT_TEXTURE1D 0x200F
|
||||
#define CL_GL_OBJECT_TEXTURE1D_ARRAY 0x2010
|
||||
#define CL_GL_OBJECT_TEXTURE_BUFFER 0x2011
|
||||
|
||||
/* cl_gl_texture_info */
|
||||
#define CL_GL_TEXTURE_TARGET 0x2004
|
||||
#define CL_GL_MIPMAP_LEVEL 0x2005
|
||||
#define CL_GL_NUM_SAMPLES 0x2012
|
||||
/* cl_gl_object_type */
|
||||
#define CL_GL_OBJECT_BUFFER 0x2000
|
||||
#define CL_GL_OBJECT_TEXTURE2D 0x2001
|
||||
#define CL_GL_OBJECT_TEXTURE3D 0x2002
|
||||
#define CL_GL_OBJECT_RENDERBUFFER 0x2003
|
||||
|
||||
/* cl_gl_texture_info */
|
||||
#define CL_GL_TEXTURE_TARGET 0x2004
|
||||
#define CL_GL_MIPMAP_LEVEL 0x2005
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLBuffer(cl_context /* context */,
|
||||
@@ -62,13 +65,21 @@ clCreateFromGLBuffer(cl_context /* context */,
|
||||
int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
cl_GLenum /* target */,
|
||||
cl_GLint /* miplevel */,
|
||||
cl_GLuint /* texture */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
clCreateFromGLTexture2D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
cl_GLenum /* target */,
|
||||
cl_GLint /* miplevel */,
|
||||
cl_GLuint /* texture */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture3D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
cl_GLenum /* target */,
|
||||
cl_GLint /* miplevel */,
|
||||
cl_GLuint /* texture */,
|
||||
cl_int * /* errcode_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLRenderbuffer(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
@@ -78,7 +89,7 @@ clCreateFromGLRenderbuffer(cl_context /* context */,
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetGLObjectInfo(cl_mem /* memobj */,
|
||||
cl_gl_object_type * /* gl_object_type */,
|
||||
cl_GLuint * /* gl_object_name */) CL_API_SUFFIX__VERSION_1_0;
|
||||
cl_GLuint * /* gl_object_name */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetGLTextureInfo(cl_mem /* memobj */,
|
||||
@@ -103,51 +114,33 @@ clEnqueueReleaseGLObjects(cl_command_queue /* command_queue */,
|
||||
const cl_event * /* event_wait_list */,
|
||||
cl_event * /* event */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
|
||||
/* Deprecated OpenCL 1.1 APIs */
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture2D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
cl_GLenum /* target */,
|
||||
cl_GLint /* miplevel */,
|
||||
cl_GLuint /* texture */,
|
||||
cl_int * /* errcode_ret */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY CL_EXT_PREFIX__VERSION_1_1_DEPRECATED cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture3D(cl_context /* context */,
|
||||
cl_mem_flags /* flags */,
|
||||
cl_GLenum /* target */,
|
||||
cl_GLint /* miplevel */,
|
||||
cl_GLuint /* texture */,
|
||||
cl_int * /* errcode_ret */) CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
/* cl_khr_gl_sharing extension */
|
||||
|
||||
|
||||
#define cl_khr_gl_sharing 1
|
||||
|
||||
|
||||
typedef cl_uint cl_gl_context_info;
|
||||
|
||||
|
||||
/* Additional Error Codes */
|
||||
#define CL_INVALID_GL_SHAREGROUP_REFERENCE_KHR -1000
|
||||
|
||||
|
||||
/* cl_gl_context_info */
|
||||
#define CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR 0x2006
|
||||
#define CL_DEVICES_FOR_GL_CONTEXT_KHR 0x2007
|
||||
|
||||
|
||||
/* Additional cl_context_properties */
|
||||
#define CL_GL_CONTEXT_KHR 0x2008
|
||||
#define CL_EGL_DISPLAY_KHR 0x2009
|
||||
#define CL_GLX_DISPLAY_KHR 0x200A
|
||||
#define CL_WGL_HDC_KHR 0x200B
|
||||
#define CL_CGL_SHAREGROUP_KHR 0x200C
|
||||
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetGLContextInfoKHR(const cl_context_properties * /* properties */,
|
||||
cl_gl_context_info /* param_name */,
|
||||
size_t /* param_value_size */,
|
||||
void * /* param_value */,
|
||||
size_t * /* param_value_size_ret */) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
|
||||
typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetGLContextInfoKHR_fn)(
|
||||
const cl_context_properties * properties,
|
||||
cl_gl_context_info param_name,
|
||||
@@ -159,4 +152,4 @@ typedef CL_API_ENTRY cl_int (CL_API_CALL *clGetGLContextInfoKHR_fn)(
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_CL_GL_H */
|
||||
#endif /* __OPENCL_CL_GL_H */
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/**********************************************************************************
|
||||
* Copyright (c) 2008-2012 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2010 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
@@ -41,7 +41,7 @@ extern "C" {
|
||||
|
||||
/*
|
||||
* For each extension, follow this template
|
||||
* cl_VEN_extname extension */
|
||||
* /* cl_VEN_extname extension */
|
||||
/* #define cl_VEN_extname 1
|
||||
* ... define new types, if any
|
||||
* ... define new tokens, if any
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/**********************************************************************************
|
||||
* Copyright (c) 2008-2012 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2010 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
@@ -46,75 +46,19 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef __APPLE__
|
||||
#define CL_EXTENSION_WEAK_LINK __attribute__((weak_import))
|
||||
#define CL_API_SUFFIX__VERSION_1_0 AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0 CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
|
||||
#define CL_API_SUFFIX__VERSION_1_1 AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
|
||||
#define GCL_API_SUFFIX__VERSION_1_1 AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1 CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_7
|
||||
|
||||
#ifdef AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER
|
||||
#define CL_API_SUFFIX__VERSION_1_2 AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER
|
||||
#define GCL_API_SUFFIX__VERSION_1_2 AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER
|
||||
#define CL_EXT_SUFFIX__VERSION_1_2 CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_8_AND_LATER
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_8
|
||||
#else
|
||||
#warning This path should never happen outside of internal operating system development. AvailabilityMacros do not function correctly here!
|
||||
#define CL_API_SUFFIX__VERSION_1_2 AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
|
||||
#define GCL_API_SUFFIX__VERSION_1_2 AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
|
||||
#define CL_EXT_SUFFIX__VERSION_1_2 CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_7_AND_LATER
|
||||
#endif
|
||||
#define CL_EXTENSION_WEAK_LINK __attribute__((weak_import))
|
||||
#define CL_API_SUFFIX__VERSION_1_0 AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0 CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
|
||||
#define CL_API_SUFFIX__VERSION_1_1 CL_EXTENSION_WEAK_LINK
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1 CL_EXTENSION_WEAK_LINK
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED CL_EXTENSION_WEAK_LINK AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
|
||||
#else
|
||||
#define CL_EXTENSION_WEAK_LINK
|
||||
#define CL_EXTENSION_WEAK_LINK
|
||||
#define CL_API_SUFFIX__VERSION_1_0
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0
|
||||
#define CL_API_SUFFIX__VERSION_1_1
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1
|
||||
#define CL_API_SUFFIX__VERSION_1_2
|
||||
#define CL_EXT_SUFFIX__VERSION_1_2
|
||||
|
||||
#ifdef __GNUC__
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_0_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_0_DEPRECATED
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED __attribute__((deprecated))
|
||||
#define CL_EXT_PREFIX__VERSION_1_0_DEPRECATED
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_1_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED __attribute__((deprecated))
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED
|
||||
#endif
|
||||
#elif _WIN32
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_0_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_0_DEPRECATED
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_0_DEPRECATED __declspec(deprecated)
|
||||
#endif
|
||||
|
||||
#ifdef CL_USE_DEPRECATED_OPENCL_1_1_APIS
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED __declspec(deprecated)
|
||||
#endif
|
||||
#else
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_0_DEPRECATED
|
||||
|
||||
#define CL_EXT_SUFFIX__VERSION_1_1_DEPRECATED
|
||||
#define CL_EXT_PREFIX__VERSION_1_1_DEPRECATED
|
||||
#endif
|
||||
#define CL_EXT_SUFFIX__VERSION_1_0_DEPRECATED
|
||||
#endif
|
||||
|
||||
#if (defined (_WIN32) && defined(_MSC_VER))
|
||||
@@ -308,7 +252,7 @@ typedef double cl_double __attribute__((aligned(8)));
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
/* Mirror types to GL types. Mirror types allow us to avoid deciding which 87s to load based on whether we are using GL or GLES here. */
|
||||
/* Mirror types to GL types. Mirror types allow us to avoid deciding which headers to load based on whether we are using GL or GLES here. */
|
||||
typedef unsigned int cl_GLuint;
|
||||
typedef int cl_GLint;
|
||||
typedef unsigned int cl_GLenum;
|
||||
@@ -451,24 +395,6 @@ typedef unsigned int cl_GLenum;
|
||||
#define __CL_DOUBLE4__ 1
|
||||
#endif
|
||||
|
||||
/* Define capabilities for anonymous struct members. */
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
#define __CL_HAS_ANON_STRUCT__ 1
|
||||
#define __CL_ANON_STRUCT__ __extension__
|
||||
#elif defined( _WIN32) && (_MSC_VER >= 1500)
|
||||
/* Microsoft Developer Studio 2008 supports anonymous structs, but
|
||||
* complains by default. */
|
||||
#define __CL_HAS_ANON_STRUCT__ 1
|
||||
#define __CL_ANON_STRUCT__
|
||||
/* Disable warning C4201: nonstandard extension used : nameless
|
||||
* struct/union */
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#else
|
||||
#define __CL_HAS_ANON_STRUCT__ 0
|
||||
#define __CL_ANON_STRUCT__
|
||||
#endif
|
||||
|
||||
/* Define alignment keys */
|
||||
#if defined( __GNUC__ )
|
||||
#define CL_ALIGNED(_x) __attribute__ ((aligned(_x)))
|
||||
@@ -484,7 +410,7 @@ typedef unsigned int cl_GLenum;
|
||||
#endif
|
||||
|
||||
/* Indicate whether .xyzw, .s0123 and .hi.lo are supported */
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
/* .xyzw and .s0123...{f|F} are supported */
|
||||
#define CL_HAS_NAMED_VECTOR_FIELDS 1
|
||||
/* .hi and .lo are supported */
|
||||
@@ -497,10 +423,10 @@ typedef unsigned int cl_GLenum;
|
||||
typedef union
|
||||
{
|
||||
cl_char CL_ALIGNED(2) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_char x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_char x, y; };
|
||||
__extension__ struct{ cl_char s0, s1; };
|
||||
__extension__ struct{ cl_char lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_CHAR2__)
|
||||
__cl_char2 v2;
|
||||
@@ -510,10 +436,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_char CL_ALIGNED(4) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_char x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_char x, y, z, w; };
|
||||
__extension__ struct{ cl_char s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_char2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_CHAR2__)
|
||||
__cl_char2 v2[2];
|
||||
@@ -529,10 +455,10 @@ typedef cl_char4 cl_char3;
|
||||
typedef union
|
||||
{
|
||||
cl_char CL_ALIGNED(8) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_char x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_char x, y, z, w; };
|
||||
__extension__ struct{ cl_char s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_char4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_CHAR2__)
|
||||
__cl_char2 v2[4];
|
||||
@@ -548,10 +474,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_char CL_ALIGNED(16) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_char x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_char8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_char x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_char s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_char8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_CHAR2__)
|
||||
__cl_char2 v2[8];
|
||||
@@ -572,10 +498,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_uchar CL_ALIGNED(2) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uchar x, y; };
|
||||
__extension__ struct{ cl_uchar s0, s1; };
|
||||
__extension__ struct{ cl_uchar lo, hi; };
|
||||
#endif
|
||||
#if defined( __cl_uchar2__)
|
||||
__cl_uchar2 v2;
|
||||
@@ -585,10 +511,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_uchar CL_ALIGNED(4) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uchar x, y, z, w; };
|
||||
__extension__ struct{ cl_uchar s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_uchar2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_UCHAR2__)
|
||||
__cl_uchar2 v2[2];
|
||||
@@ -604,10 +530,10 @@ typedef cl_uchar4 cl_uchar3;
|
||||
typedef union
|
||||
{
|
||||
cl_uchar CL_ALIGNED(8) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uchar x, y, z, w; };
|
||||
__extension__ struct{ cl_uchar s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_uchar4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_UCHAR2__)
|
||||
__cl_uchar2 v2[4];
|
||||
@@ -623,10 +549,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_uchar CL_ALIGNED(16) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uchar8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uchar x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_uchar s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_uchar8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_UCHAR2__)
|
||||
__cl_uchar2 v2[8];
|
||||
@@ -647,10 +573,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_short CL_ALIGNED(4) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_short x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_short x, y; };
|
||||
__extension__ struct{ cl_short s0, s1; };
|
||||
__extension__ struct{ cl_short lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_SHORT2__)
|
||||
__cl_short2 v2;
|
||||
@@ -660,10 +586,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_short CL_ALIGNED(8) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_short x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_short x, y, z, w; };
|
||||
__extension__ struct{ cl_short s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_short2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_SHORT2__)
|
||||
__cl_short2 v2[2];
|
||||
@@ -679,10 +605,10 @@ typedef cl_short4 cl_short3;
|
||||
typedef union
|
||||
{
|
||||
cl_short CL_ALIGNED(16) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_short x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_short x, y, z, w; };
|
||||
__extension__ struct{ cl_short s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_short4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_SHORT2__)
|
||||
__cl_short2 v2[4];
|
||||
@@ -698,10 +624,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_short CL_ALIGNED(32) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_short x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_short8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_short x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_short s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_short8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_SHORT2__)
|
||||
__cl_short2 v2[8];
|
||||
@@ -722,10 +648,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_ushort CL_ALIGNED(4) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ushort x, y; };
|
||||
__extension__ struct{ cl_ushort s0, s1; };
|
||||
__extension__ struct{ cl_ushort lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_USHORT2__)
|
||||
__cl_ushort2 v2;
|
||||
@@ -735,10 +661,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_ushort CL_ALIGNED(8) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ushort x, y, z, w; };
|
||||
__extension__ struct{ cl_ushort s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_ushort2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_USHORT2__)
|
||||
__cl_ushort2 v2[2];
|
||||
@@ -754,10 +680,10 @@ typedef cl_ushort4 cl_ushort3;
|
||||
typedef union
|
||||
{
|
||||
cl_ushort CL_ALIGNED(16) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ushort x, y, z, w; };
|
||||
__extension__ struct{ cl_ushort s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_ushort4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_USHORT2__)
|
||||
__cl_ushort2 v2[4];
|
||||
@@ -773,10 +699,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_ushort CL_ALIGNED(32) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ushort8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ushort x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_ushort s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_ushort8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_USHORT2__)
|
||||
__cl_ushort2 v2[8];
|
||||
@@ -796,10 +722,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_int CL_ALIGNED(8) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_int x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_int x, y; };
|
||||
__extension__ struct{ cl_int s0, s1; };
|
||||
__extension__ struct{ cl_int lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_INT2__)
|
||||
__cl_int2 v2;
|
||||
@@ -809,10 +735,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_int CL_ALIGNED(16) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_int x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_int x, y, z, w; };
|
||||
__extension__ struct{ cl_int s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_int2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_INT2__)
|
||||
__cl_int2 v2[2];
|
||||
@@ -828,10 +754,10 @@ typedef cl_int4 cl_int3;
|
||||
typedef union
|
||||
{
|
||||
cl_int CL_ALIGNED(32) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_int x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_int x, y, z, w; };
|
||||
__extension__ struct{ cl_int s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_int4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_INT2__)
|
||||
__cl_int2 v2[4];
|
||||
@@ -847,10 +773,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_int CL_ALIGNED(64) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_int x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_int8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_int x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_int8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_INT2__)
|
||||
__cl_int2 v2[8];
|
||||
@@ -871,10 +797,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_uint CL_ALIGNED(8) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uint x, y; };
|
||||
__extension__ struct{ cl_uint s0, s1; };
|
||||
__extension__ struct{ cl_uint lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_UINT2__)
|
||||
__cl_uint2 v2;
|
||||
@@ -884,10 +810,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_uint CL_ALIGNED(16) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uint x, y, z, w; };
|
||||
__extension__ struct{ cl_uint s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_uint2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_UINT2__)
|
||||
__cl_uint2 v2[2];
|
||||
@@ -903,10 +829,10 @@ typedef cl_uint4 cl_uint3;
|
||||
typedef union
|
||||
{
|
||||
cl_uint CL_ALIGNED(32) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uint x, y, z, w; };
|
||||
__extension__ struct{ cl_uint s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_uint4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_UINT2__)
|
||||
__cl_uint2 v2[4];
|
||||
@@ -922,10 +848,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_uint CL_ALIGNED(64) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_uint8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_uint x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_uint s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_uint8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_UINT2__)
|
||||
__cl_uint2 v2[8];
|
||||
@@ -945,10 +871,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_long CL_ALIGNED(16) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_long x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_long x, y; };
|
||||
__extension__ struct{ cl_long s0, s1; };
|
||||
__extension__ struct{ cl_long lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_LONG2__)
|
||||
__cl_long2 v2;
|
||||
@@ -958,10 +884,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_long CL_ALIGNED(32) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_long x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_long x, y, z, w; };
|
||||
__extension__ struct{ cl_long s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_long2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_LONG2__)
|
||||
__cl_long2 v2[2];
|
||||
@@ -977,10 +903,10 @@ typedef cl_long4 cl_long3;
|
||||
typedef union
|
||||
{
|
||||
cl_long CL_ALIGNED(64) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_long x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_long x, y, z, w; };
|
||||
__extension__ struct{ cl_long s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_long4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_LONG2__)
|
||||
__cl_long2 v2[4];
|
||||
@@ -996,10 +922,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_long CL_ALIGNED(128) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_long x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_long8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_long x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_long s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_long8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_LONG2__)
|
||||
__cl_long2 v2[8];
|
||||
@@ -1020,10 +946,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_ulong CL_ALIGNED(16) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ulong x, y; };
|
||||
__extension__ struct{ cl_ulong s0, s1; };
|
||||
__extension__ struct{ cl_ulong lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_ULONG2__)
|
||||
__cl_ulong2 v2;
|
||||
@@ -1033,10 +959,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_ulong CL_ALIGNED(32) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ulong x, y, z, w; };
|
||||
__extension__ struct{ cl_ulong s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_ulong2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_ULONG2__)
|
||||
__cl_ulong2 v2[2];
|
||||
@@ -1052,10 +978,10 @@ typedef cl_ulong4 cl_ulong3;
|
||||
typedef union
|
||||
{
|
||||
cl_ulong CL_ALIGNED(64) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ulong x, y, z, w; };
|
||||
__extension__ struct{ cl_ulong s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_ulong4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_ULONG2__)
|
||||
__cl_ulong2 v2[4];
|
||||
@@ -1071,10 +997,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_ulong CL_ALIGNED(128) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_ulong8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_ulong x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_ulong s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_ulong8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_ULONG2__)
|
||||
__cl_ulong2 v2[8];
|
||||
@@ -1096,10 +1022,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_float CL_ALIGNED(8) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_float x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_float x, y; };
|
||||
__extension__ struct{ cl_float s0, s1; };
|
||||
__extension__ struct{ cl_float lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_FLOAT2__)
|
||||
__cl_float2 v2;
|
||||
@@ -1109,10 +1035,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_float CL_ALIGNED(16) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_float x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_float x, y, z, w; };
|
||||
__extension__ struct{ cl_float s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_float2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_FLOAT2__)
|
||||
__cl_float2 v2[2];
|
||||
@@ -1128,10 +1054,10 @@ typedef cl_float4 cl_float3;
|
||||
typedef union
|
||||
{
|
||||
cl_float CL_ALIGNED(32) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_float x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_float x, y, z, w; };
|
||||
__extension__ struct{ cl_float s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_float4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_FLOAT2__)
|
||||
__cl_float2 v2[4];
|
||||
@@ -1147,10 +1073,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_float CL_ALIGNED(64) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_float x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_float8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_float x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_float s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_float8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_FLOAT2__)
|
||||
__cl_float2 v2[8];
|
||||
@@ -1171,10 +1097,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_double CL_ALIGNED(16) s[2];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_double x, y; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double s0, s1; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_double x, y; };
|
||||
__extension__ struct{ cl_double s0, s1; };
|
||||
__extension__ struct{ cl_double lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_DOUBLE2__)
|
||||
__cl_double2 v2;
|
||||
@@ -1184,10 +1110,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_double CL_ALIGNED(32) s[4];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_double x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double s0, s1, s2, s3; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double2 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_double x, y, z, w; };
|
||||
__extension__ struct{ cl_double s0, s1, s2, s3; };
|
||||
__extension__ struct{ cl_double2 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_DOUBLE2__)
|
||||
__cl_double2 v2[2];
|
||||
@@ -1203,10 +1129,10 @@ typedef cl_double4 cl_double3;
|
||||
typedef union
|
||||
{
|
||||
cl_double CL_ALIGNED(64) s[8];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_double x, y, z, w; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double4 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_double x, y, z, w; };
|
||||
__extension__ struct{ cl_double s0, s1, s2, s3, s4, s5, s6, s7; };
|
||||
__extension__ struct{ cl_double4 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_DOUBLE2__)
|
||||
__cl_double2 v2[4];
|
||||
@@ -1222,10 +1148,10 @@ typedef union
|
||||
typedef union
|
||||
{
|
||||
cl_double CL_ALIGNED(128) s[16];
|
||||
#if __CL_HAS_ANON_STRUCT__
|
||||
__CL_ANON_STRUCT__ struct{ cl_double x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__CL_ANON_STRUCT__ struct{ cl_double8 lo, hi; };
|
||||
#if defined( __GNUC__) && ! defined( __STRICT_ANSI__ )
|
||||
__extension__ struct{ cl_double x, y, z, w, __spacer4, __spacer5, __spacer6, __spacer7, __spacer8, __spacer9, sa, sb, sc, sd, se, sf; };
|
||||
__extension__ struct{ cl_double s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, sA, sB, sC, sD, sE, sF; };
|
||||
__extension__ struct{ cl_double8 lo, hi; };
|
||||
#endif
|
||||
#if defined( __CL_DOUBLE2__)
|
||||
__cl_double2 v2[8];
|
||||
@@ -1244,13 +1170,13 @@ typedef union
|
||||
/* Macro to facilitate debugging
|
||||
* Usage:
|
||||
* Place CL_PROGRAM_STRING_DEBUG_INFO on the line before the first line of your source.
|
||||
* The first line ends with: CL_PROGRAM_STRING_DEBUG_INFO \"
|
||||
* The first line ends with: CL_PROGRAM_STRING_BEGIN \"
|
||||
* Each line thereafter of OpenCL C source must end with: \n\
|
||||
* The last line ends in ";
|
||||
*
|
||||
* Example:
|
||||
*
|
||||
* const char *my_program = CL_PROGRAM_STRING_DEBUG_INFO "\
|
||||
* const char *my_program = CL_PROGRAM_STRING_BEGIN "\
|
||||
* kernel void foo( int a, float * b ) \n\
|
||||
* { \n\
|
||||
* // my comment \n\
|
||||
@@ -1269,10 +1195,4 @@ typedef union
|
||||
}
|
||||
#endif
|
||||
|
||||
#undef __CL_HAS_ANON_STRUCT__
|
||||
#undef __CL_ANON_STRUCT__
|
||||
#if defined( _WIN32) && (_MSC_VER >= 1500)
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
|
||||
#endif /* __CL_PLATFORM_H */
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2012 The Khronos Group Inc.
|
||||
* Copyright (c) 2008-2010 The Khronos Group Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and/or associated documentation files (the
|
||||
|
1042
include/EGL/eglext.h
1042
include/EGL/eglext.h
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
/**************************************************************************
|
||||
*
|
||||
* Copyright 2008 VMware, Inc.
|
||||
* Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas.
|
||||
* All Rights Reserved.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@@ -115,32 +115,20 @@ typedef EGLDisplay (EGLAPIENTRYP PFNEGLGETDRMDISPLAYMESA) (int fd);
|
||||
#define EGL_WAYLAND_BUFFER_WL 0x31D5 /* eglCreateImageKHR target */
|
||||
#define EGL_WAYLAND_PLANE_WL 0x31D6 /* eglCreateImageKHR target */
|
||||
|
||||
#define EGL_WAYLAND_Y_INVERTED_WL 0x31DB /* eglQueryWaylandBufferWL attribute */
|
||||
|
||||
#define EGL_TEXTURE_Y_U_V_WL 0x31D7
|
||||
#define EGL_TEXTURE_Y_UV_WL 0x31D8
|
||||
#define EGL_TEXTURE_Y_XUXV_WL 0x31D9
|
||||
|
||||
struct wl_display;
|
||||
struct wl_resource;
|
||||
struct wl_buffer;
|
||||
#ifdef EGL_EGLEXT_PROTOTYPES
|
||||
EGLAPI EGLBoolean EGLAPIENTRY eglBindWaylandDisplayWL(EGLDisplay dpy, struct wl_display *display);
|
||||
EGLAPI EGLBoolean EGLAPIENTRY eglUnbindWaylandDisplayWL(EGLDisplay dpy, struct wl_display *display);
|
||||
EGLAPI EGLBoolean EGLAPIENTRY eglQueryWaylandBufferWL(EGLDisplay dpy, struct wl_resource *buffer, EGLint attribute, EGLint *value);
|
||||
EGLAPI EGLBoolean EGLAPIENTRY eglQueryWaylandBufferWL(EGLDisplay dpy, struct wl_buffer *buffer, EGLint attribute, EGLint *value);
|
||||
#endif
|
||||
typedef EGLBoolean (EGLAPIENTRYP PFNEGLBINDWAYLANDDISPLAYWL) (EGLDisplay dpy, struct wl_display *display);
|
||||
typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNBINDWAYLANDDISPLAYWL) (EGLDisplay dpy, struct wl_display *display);
|
||||
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYWAYLANDBUFFERWL) (EGLDisplay dpy, struct wl_resource *buffer, EGLint attribute, EGLint *value);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef EGL_WL_create_wayland_buffer_from_image
|
||||
#define EGL_WL_create_wayland_buffer_from_image 1
|
||||
|
||||
#ifdef EGL_EGLEXT_PROTOTYPES
|
||||
EGLAPI struct wl_buffer * EGLAPIENTRY eglCreateWaylandBufferFromImageWL(EGLDisplay dpy, EGLImageKHR image);
|
||||
#endif
|
||||
typedef struct wl_buffer * (EGLAPIENTRYP PFNEGLCREATEWAYLANDBUFFERFROMIMAGEWL) (EGLDisplay dpy, EGLImageKHR image);
|
||||
typedef EGLBoolean (EGLAPIENTRYP PFNEGLQUERYWAYLANDBUFFERWL) (EGLDisplay dpy, struct wl_buffer *buffer, EGLint attribute, EGLint *value);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -165,11 +153,6 @@ typedef EGLBoolean (EGLAPIENTRYP PFNEGLSWAPBUFFERSREGIONNOK) (EGLDisplay dpy, EG
|
||||
#define EGL_NATIVE_BUFFER_ANDROID 0x3140 /* eglCreateImageKHR target */
|
||||
#endif
|
||||
|
||||
#ifndef EGL_MESA_configless_context
|
||||
#define EGL_MESA_configless_context 1
|
||||
#define EGL_NO_CONFIG_MESA ((EGLConfig)0)
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
126
include/GL/gl.h
126
include/GL/gl.h
@@ -33,14 +33,25 @@
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* Begin system-specific stuff.
|
||||
* Begin system-specific stuff. Do not do any of this when building
|
||||
* for SciTech SNAP, as this is all done before this header file is
|
||||
* included.
|
||||
*/
|
||||
#if !defined(__SCITECH_SNAP__)
|
||||
|
||||
#if defined(__BEOS__)
|
||||
#include <stdlib.h> /* to get some BeOS-isms */
|
||||
#endif
|
||||
|
||||
#if !defined(OPENSTEP) && (defined(NeXT) || defined(NeXT_PDO))
|
||||
#define OPENSTEP
|
||||
#endif
|
||||
|
||||
#if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__)
|
||||
#define __WIN32__
|
||||
#endif
|
||||
|
||||
#if defined(__WIN32__) && !defined(__CYGWIN__)
|
||||
#if !defined(OPENSTEP) && (defined(__WIN32__) && !defined(__CYGWIN__))
|
||||
# if (defined(_MSC_VER) || defined(__MINGW32__)) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */
|
||||
# define GLAPI __declspec(dllexport)
|
||||
# elif (defined(_MSC_VER) || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're building for DLL runtime support */
|
||||
@@ -61,6 +72,10 @@
|
||||
# define GLAPIENTRY
|
||||
#endif /* WIN32 && !CYGWIN */
|
||||
|
||||
#if (defined(__BEOS__) && defined(__POWERPC__)) || defined(__QUICKDRAW__)
|
||||
# define PRAGMA_EXPORT_SUPPORTED 1
|
||||
#endif
|
||||
|
||||
/*
|
||||
* WINDOWS: Include windows.h here to define APIENTRY.
|
||||
* It is also useful when applications include this file by
|
||||
@@ -76,6 +91,10 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#if defined(macintosh) && PRAGMA_IMPORT_SUPPORTED
|
||||
#pragma import on
|
||||
#endif
|
||||
|
||||
#ifndef GLAPI
|
||||
#define GLAPI extern
|
||||
#endif
|
||||
@@ -97,6 +116,15 @@
|
||||
#define GLAPIENTRYP GLAPIENTRY *
|
||||
#endif
|
||||
|
||||
#ifdef CENTERLINE_CLPP
|
||||
#define signed
|
||||
#endif
|
||||
|
||||
#if defined(PRAGMA_EXPORT_SUPPORTED)
|
||||
#pragma export on
|
||||
#endif
|
||||
|
||||
#endif /* !__SCITECH_SNAP__ */
|
||||
/*
|
||||
* End system-specific stuff.
|
||||
**********************************************************************/
|
||||
@@ -690,7 +718,7 @@ typedef double GLclampd; /* double precision float in [0,1] */
|
||||
#define GL_LIST_BIT 0x00020000
|
||||
#define GL_TEXTURE_BIT 0x00040000
|
||||
#define GL_SCISSOR_BIT 0x00080000
|
||||
#define GL_ALL_ATTRIB_BITS 0xFFFFFFFF
|
||||
#define GL_ALL_ATTRIB_BITS 0x000FFFFF
|
||||
|
||||
|
||||
/* OpenGL 1.1 */
|
||||
@@ -1708,6 +1736,8 @@ GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target,
|
||||
GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum format,
|
||||
GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
|
||||
|
||||
typedef void (APIENTRYP PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
|
||||
typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);
|
||||
|
||||
|
||||
|
||||
@@ -2058,6 +2088,26 @@ typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLsh
|
||||
|
||||
|
||||
|
||||
#if GL_ARB_shader_objects
|
||||
|
||||
#ifndef GL_MESA_shader_debug
|
||||
#define GL_MESA_shader_debug 1
|
||||
|
||||
#define GL_DEBUG_OBJECT_MESA 0x8759
|
||||
#define GL_DEBUG_PRINT_MESA 0x875A
|
||||
#define GL_DEBUG_ASSERT_MESA 0x875B
|
||||
|
||||
GLAPI GLhandleARB GLAPIENTRY glCreateDebugObjectMESA (void);
|
||||
GLAPI void GLAPIENTRY glClearDebugLogMESA (GLhandleARB obj, GLenum logType, GLenum shaderType);
|
||||
GLAPI void GLAPIENTRY glGetDebugLogMESA (GLhandleARB obj, GLenum logType, GLenum shaderType, GLsizei maxLength,
|
||||
GLsizei *length, GLcharARB *debugLog);
|
||||
GLAPI GLsizei GLAPIENTRY glGetDebugLogLengthMESA (GLhandleARB obj, GLenum logType, GLenum shaderType);
|
||||
|
||||
#endif /* GL_MESA_shader_debug */
|
||||
|
||||
#endif /* GL_ARB_shader_objects */
|
||||
|
||||
|
||||
/*
|
||||
* ???. GL_MESA_packed_depth_stencil
|
||||
* XXX obsolete
|
||||
@@ -2074,6 +2124,60 @@ typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLsh
|
||||
#endif /* GL_MESA_packed_depth_stencil */
|
||||
|
||||
|
||||
#ifndef GL_MESA_program_debug
|
||||
#define GL_MESA_program_debug 1
|
||||
|
||||
#define GL_FRAGMENT_PROGRAM_POSITION_MESA 0x8bb0
|
||||
#define GL_FRAGMENT_PROGRAM_CALLBACK_MESA 0x8bb1
|
||||
#define GL_FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x8bb2
|
||||
#define GL_FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x8bb3
|
||||
#define GL_VERTEX_PROGRAM_POSITION_MESA 0x8bb4
|
||||
#define GL_VERTEX_PROGRAM_CALLBACK_MESA 0x8bb5
|
||||
#define GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x8bb6
|
||||
#define GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x8bb7
|
||||
|
||||
typedef void (*GLprogramcallbackMESA)(GLenum target, GLvoid *data);
|
||||
|
||||
GLAPI void GLAPIENTRY glProgramCallbackMESA(GLenum target, GLprogramcallbackMESA callback, GLvoid *data);
|
||||
|
||||
GLAPI void GLAPIENTRY glGetProgramRegisterfvMESA(GLenum target, GLsizei len, const GLubyte *name, GLfloat *v);
|
||||
|
||||
#endif /* GL_MESA_program_debug */
|
||||
|
||||
|
||||
#ifndef GL_MESA_texture_array
|
||||
#define GL_MESA_texture_array 1
|
||||
|
||||
/* GL_MESA_texture_array uses the same enum values as GL_EXT_texture_array.
|
||||
*/
|
||||
#ifndef GL_EXT_texture_array
|
||||
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glFramebufferTextureLayerEXT(GLenum target,
|
||||
GLenum attachment, GLuint texture, GLint level, GLint layer);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
|
||||
#if 0
|
||||
/* (temporarily) disabled because of collision with typedef in glext.h
|
||||
* that happens if apps include both gl.h and glext.h
|
||||
*/
|
||||
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC) (GLenum target,
|
||||
GLenum attachment, GLuint texture, GLint level, GLint layer);
|
||||
#endif
|
||||
|
||||
#define GL_TEXTURE_1D_ARRAY_EXT 0x8C18
|
||||
#define GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19
|
||||
#define GL_TEXTURE_2D_ARRAY_EXT 0x8C1A
|
||||
#define GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B
|
||||
#define GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C
|
||||
#define GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D
|
||||
#define GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef GL_ATI_blend_equation_separate
|
||||
#define GL_ATI_blend_equation_separate 1
|
||||
|
||||
@@ -2108,6 +2212,22 @@ typedef void (APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum t
|
||||
**/
|
||||
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* Begin system-specific stuff
|
||||
*/
|
||||
#if defined(PRAGMA_EXPORT_SUPPORTED)
|
||||
#pragma export off
|
||||
#endif
|
||||
|
||||
#if defined(macintosh) && PRAGMA_IMPORT_SUPPORTED
|
||||
#pragma import off
|
||||
#endif
|
||||
/*
|
||||
* End system-specific stuff
|
||||
**********************************************************************/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
File diff suppressed because it is too large
Load Diff
1386
include/GL/glext.h
1386
include/GL/glext.h
File diff suppressed because it is too large
Load Diff
@@ -468,32 +468,7 @@ extern void glXReleaseTexImageEXT(Display *dpy, GLXDrawable drawable, int buffer
|
||||
#endif /* GLX_EXT_texture_from_pixmap */
|
||||
|
||||
|
||||
#ifndef GLX_MESA_query_renderer
|
||||
#define GLX_MESA_query_renderer 1
|
||||
|
||||
#define GLX_RENDERER_VENDOR_ID_MESA 0x8183
|
||||
#define GLX_RENDERER_DEVICE_ID_MESA 0x8184
|
||||
#define GLX_RENDERER_VERSION_MESA 0x8185
|
||||
#define GLX_RENDERER_ACCELERATED_MESA 0x8186
|
||||
#define GLX_RENDERER_VIDEO_MEMORY_MESA 0x8187
|
||||
#define GLX_RENDERER_UNIFIED_MEMORY_ARCHITECTURE_MESA 0x8188
|
||||
#define GLX_RENDERER_PREFERRED_PROFILE_MESA 0x8189
|
||||
#define GLX_RENDERER_OPENGL_CORE_PROFILE_VERSION_MESA 0x818A
|
||||
#define GLX_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION_MESA 0x818B
|
||||
#define GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA 0x818C
|
||||
#define GLX_RENDERER_OPENGL_ES2_PROFILE_VERSION_MESA 0x818D
|
||||
#define GLX_RENDERER_ID_MESA 0x818E
|
||||
|
||||
Bool glXQueryRendererIntegerMESA(Display *dpy, int screen, int renderer, int attribute, unsigned int *value);
|
||||
Bool glXQueryCurrentRendererIntegerMESA(int attribute, unsigned int *value);
|
||||
const char *glXQueryRendererStringMESA(Display *dpy, int screen, int renderer, int attribute);
|
||||
const char *glXQueryCurrentRendererStringMESA(int attribute);
|
||||
|
||||
typedef Bool (*PFNGLXQUERYRENDERERINTEGERMESAPROC) (Display *dpy, int screen, int renderer, int attribute, unsigned int *value);
|
||||
typedef Bool (*PFNGLXQUERYCURRENTRENDERERINTEGERMESAPROC) (int attribute, unsigned int *value);
|
||||
typedef const char *(*PFNGLXQUERYRENDERERSTRINGMESAPROC) (Display *dpy, int screen, int renderer, int attribute);
|
||||
typedef const char *(*PFNGLXQUERYCURRENTRENDERERSTRINGMESAPROC) (int attribute);
|
||||
#endif /* GLX_MESA_query_renderer */
|
||||
|
||||
/*** Should these go here, or in another header? */
|
||||
/*
|
||||
@@ -518,7 +493,7 @@ typedef struct {
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if this came from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Drawable drawable; /* drawable on which event was requested in event mask */
|
||||
GLXDrawable drawable; /* drawable on which event was requested in event mask */
|
||||
int event_type;
|
||||
int64_t ust;
|
||||
int64_t msc;
|
||||
|
1611
include/GL/glxext.h
1611
include/GL/glxext.h
File diff suppressed because it is too large
Load Diff
@@ -86,10 +86,6 @@ typedef struct __DRIdri2LoaderExtensionRec __DRIdri2LoaderExtension;
|
||||
typedef struct __DRI2flushExtensionRec __DRI2flushExtension;
|
||||
typedef struct __DRI2throttleExtensionRec __DRI2throttleExtension;
|
||||
|
||||
|
||||
typedef struct __DRIimageLoaderExtensionRec __DRIimageLoaderExtension;
|
||||
typedef struct __DRIimageDriverExtensionRec __DRIimageDriverExtension;
|
||||
|
||||
/*@}*/
|
||||
|
||||
|
||||
@@ -231,7 +227,7 @@ struct __DRItexOffsetExtensionRec {
|
||||
#define __DRI_TEXTURE_FORMAT_RGBA 0x20DA
|
||||
|
||||
#define __DRI_TEX_BUFFER "DRI_TexBuffer"
|
||||
#define __DRI_TEX_BUFFER_VERSION 3
|
||||
#define __DRI_TEX_BUFFER_VERSION 2
|
||||
struct __DRItexBufferExtensionRec {
|
||||
__DRIextension base;
|
||||
|
||||
@@ -251,8 +247,6 @@ struct __DRItexBufferExtensionRec {
|
||||
* __DRIdrawable, including the required texture format attribute.
|
||||
*
|
||||
* For GLX_EXT_texture_from_pixmap with AIGLX.
|
||||
*
|
||||
* \since 2
|
||||
*/
|
||||
void (*setTexBuffer2)(__DRIcontext *pDRICtx,
|
||||
GLint target,
|
||||
@@ -263,8 +257,6 @@ struct __DRItexBufferExtensionRec {
|
||||
* need this.
|
||||
*
|
||||
* For GLX_EXT_texture_from_pixmap with AIGLX.
|
||||
*
|
||||
* \since 3
|
||||
*/
|
||||
void (*releaseTexBuffer)(__DRIcontext *pDRICtx,
|
||||
GLint target,
|
||||
@@ -338,6 +330,12 @@ struct __DRI2throttleExtensionRec {
|
||||
enum __DRI2throttleReason reason);
|
||||
};
|
||||
|
||||
/**
|
||||
* XML document describing the configuration options supported by the
|
||||
* driver.
|
||||
*/
|
||||
extern const char __driConfigOptions[];
|
||||
|
||||
/*@}*/
|
||||
|
||||
/**
|
||||
@@ -441,7 +439,7 @@ struct __DRIdamageExtensionRec {
|
||||
* SWRast Loader extension.
|
||||
*/
|
||||
#define __DRI_SWRAST_LOADER "DRI_SWRastLoader"
|
||||
#define __DRI_SWRAST_LOADER_VERSION 2
|
||||
#define __DRI_SWRAST_LOADER_VERSION 1
|
||||
struct __DRIswrastLoaderExtensionRec {
|
||||
__DRIextension base;
|
||||
|
||||
@@ -465,15 +463,6 @@ struct __DRIswrastLoaderExtensionRec {
|
||||
void (*getImage)(__DRIdrawable *readable,
|
||||
int x, int y, int width, int height,
|
||||
char *data, void *loaderPrivate);
|
||||
|
||||
/**
|
||||
* Put image to drawable
|
||||
*
|
||||
* \since 2
|
||||
*/
|
||||
void (*putImage2)(__DRIdrawable *drawable, int op,
|
||||
int x, int y, int width, int height, int stride,
|
||||
char *data, void *loaderPrivate);
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -504,19 +493,6 @@ struct __DRIuseInvalidateExtensionRec {
|
||||
*/
|
||||
#define __DRI_DRIVER_EXTENSIONS "__driDriverExtensions"
|
||||
|
||||
/**
|
||||
* This symbol replaces the __DRI_DRIVER_EXTENSIONS symbol, and will be
|
||||
* suffixed by "_drivername", allowing multiple drivers to be built into one
|
||||
* library, and also giving the driver the chance to return a variable driver
|
||||
* extensions struct depending on the driver name being loaded or any other
|
||||
* system state.
|
||||
*
|
||||
* The function prototype is:
|
||||
*
|
||||
* const __DRIextension **__driDriverGetExtensions_drivername(void);
|
||||
*/
|
||||
#define __DRI_DRIVER_GET_EXTENSIONS "__driDriverGetExtensions"
|
||||
|
||||
/**
|
||||
* Tokens for __DRIconfig attribs. A number of attributes defined by
|
||||
* GLX or EGL standards are not in the table, as they must be provided
|
||||
@@ -730,7 +706,7 @@ struct __DRIlegacyExtensionRec {
|
||||
* conjunction with the core extension.
|
||||
*/
|
||||
#define __DRI_SWRAST "DRI_SWRast"
|
||||
#define __DRI_SWRAST_VERSION 4
|
||||
#define __DRI_SWRAST_VERSION 3
|
||||
|
||||
struct __DRIswrastExtensionRec {
|
||||
__DRIextension base;
|
||||
@@ -766,48 +742,8 @@ struct __DRIswrastExtensionRec {
|
||||
const uint32_t *attribs,
|
||||
unsigned *error,
|
||||
void *loaderPrivate);
|
||||
|
||||
/**
|
||||
* createNewScreen() with the driver extensions passed in.
|
||||
*
|
||||
* \since version 4
|
||||
*/
|
||||
__DRIscreen *(*createNewScreen2)(int screen,
|
||||
const __DRIextension **loader_extensions,
|
||||
const __DRIextension **driver_extensions,
|
||||
const __DRIconfig ***driver_configs,
|
||||
void *loaderPrivate);
|
||||
|
||||
};
|
||||
|
||||
/** Common DRI function definitions, shared among DRI2 and Image extensions
|
||||
*/
|
||||
|
||||
typedef __DRIscreen *
|
||||
(*__DRIcreateNewScreen2Func)(int screen, int fd,
|
||||
const __DRIextension **extensions,
|
||||
const __DRIextension **driver_extensions,
|
||||
const __DRIconfig ***driver_configs,
|
||||
void *loaderPrivate);
|
||||
|
||||
typedef __DRIdrawable *
|
||||
(*__DRIcreateNewDrawableFunc)(__DRIscreen *screen,
|
||||
const __DRIconfig *config,
|
||||
void *loaderPrivate);
|
||||
|
||||
typedef __DRIcontext *
|
||||
(*__DRIcreateContextAttribsFunc)(__DRIscreen *screen,
|
||||
int api,
|
||||
const __DRIconfig *config,
|
||||
__DRIcontext *shared,
|
||||
unsigned num_attribs,
|
||||
const uint32_t *attribs,
|
||||
unsigned *error,
|
||||
void *loaderPrivate);
|
||||
|
||||
typedef unsigned int
|
||||
(*__DRIgetAPIMaskFunc)(__DRIscreen *screen);
|
||||
|
||||
/**
|
||||
* DRI2 Loader extension.
|
||||
*/
|
||||
@@ -854,8 +790,6 @@ struct __DRIdri2LoaderExtensionRec {
|
||||
* \param driDrawable Drawable whose front-buffer is to be flushed
|
||||
* \param loaderPrivate Loader's private data that was previously passed
|
||||
* into __DRIdri2ExtensionRec::createNewDrawable
|
||||
*
|
||||
* \since 2
|
||||
*/
|
||||
void (*flushFrontBuffer)(__DRIdrawable *driDrawable, void *loaderPrivate);
|
||||
|
||||
@@ -878,8 +812,6 @@ struct __DRIdri2LoaderExtensionRec {
|
||||
* \c attachments.
|
||||
* \param loaderPrivate Loader's private data that was previously passed
|
||||
* into __DRIdri2ExtensionRec::createNewDrawable.
|
||||
*
|
||||
* \since 3
|
||||
*/
|
||||
__DRIbuffer *(*getBuffersWithFormat)(__DRIdrawable *driDrawable,
|
||||
int *width, int *height,
|
||||
@@ -892,7 +824,7 @@ struct __DRIdri2LoaderExtensionRec {
|
||||
* constructors for DRI2.
|
||||
*/
|
||||
#define __DRI_DRI2 "DRI_DRI2"
|
||||
#define __DRI_DRI2_VERSION 4
|
||||
#define __DRI_DRI2_VERSION 3
|
||||
|
||||
#define __DRI_API_OPENGL 0 /**< OpenGL compatibility profile */
|
||||
#define __DRI_API_GLES 1 /**< OpenGL ES 1.x */
|
||||
@@ -959,14 +891,17 @@ struct __DRIdri2ExtensionRec {
|
||||
const __DRIconfig ***driver_configs,
|
||||
void *loaderPrivate);
|
||||
|
||||
__DRIcreateNewDrawableFunc createNewDrawable;
|
||||
__DRIcontext *(*createNewContext)(__DRIscreen *screen,
|
||||
const __DRIconfig *config,
|
||||
__DRIcontext *shared,
|
||||
void *loaderPrivate);
|
||||
__DRIdrawable *(*createNewDrawable)(__DRIscreen *screen,
|
||||
const __DRIconfig *config,
|
||||
void *loaderPrivate);
|
||||
|
||||
__DRIcontext *(*createNewContext)(__DRIscreen *screen,
|
||||
const __DRIconfig *config,
|
||||
__DRIcontext *shared,
|
||||
void *loaderPrivate);
|
||||
|
||||
/* Since version 2 */
|
||||
__DRIgetAPIMaskFunc getAPIMask;
|
||||
unsigned int (*getAPIMask)(__DRIscreen *screen);
|
||||
|
||||
__DRIcontext *(*createNewContextForAPI)(__DRIscreen *screen,
|
||||
int api,
|
||||
@@ -989,14 +924,14 @@ struct __DRIdri2ExtensionRec {
|
||||
*
|
||||
* \sa __DRIswrastExtensionRec::createContextAttribs
|
||||
*/
|
||||
__DRIcreateContextAttribsFunc createContextAttribs;
|
||||
|
||||
/**
|
||||
* createNewScreen with the driver's extension list passed in.
|
||||
*
|
||||
* \since version 4
|
||||
*/
|
||||
__DRIcreateNewScreen2Func createNewScreen2;
|
||||
__DRIcontext *(*createContextAttribs)(__DRIscreen *screen,
|
||||
int api,
|
||||
const __DRIconfig *config,
|
||||
__DRIcontext *shared,
|
||||
unsigned num_attribs,
|
||||
const uint32_t *attribs,
|
||||
unsigned *error,
|
||||
void *loaderPrivate);
|
||||
};
|
||||
|
||||
|
||||
@@ -1005,7 +940,7 @@ struct __DRIdri2ExtensionRec {
|
||||
* extensions.
|
||||
*/
|
||||
#define __DRI_IMAGE "DRI_IMAGE"
|
||||
#define __DRI_IMAGE_VERSION 8
|
||||
#define __DRI_IMAGE_VERSION 7
|
||||
|
||||
/**
|
||||
* These formats correspond to the similarly named MESA_FORMAT_*
|
||||
@@ -1029,14 +964,10 @@ struct __DRIdri2ExtensionRec {
|
||||
#define __DRI_IMAGE_FORMAT_R8 0x1006 /* Since version 5 */
|
||||
#define __DRI_IMAGE_FORMAT_GR88 0x1007
|
||||
#define __DRI_IMAGE_FORMAT_NONE 0x1008
|
||||
#define __DRI_IMAGE_FORMAT_XRGB2101010 0x1009
|
||||
#define __DRI_IMAGE_FORMAT_ARGB2101010 0x100a
|
||||
#define __DRI_IMAGE_FORMAT_SARGB8 0x100b
|
||||
|
||||
#define __DRI_IMAGE_USE_SHARE 0x0001
|
||||
#define __DRI_IMAGE_USE_SCANOUT 0x0002
|
||||
#define __DRI_IMAGE_USE_CURSOR 0x0004 /* Depricated */
|
||||
#define __DRI_IMAGE_USE_LINEAR 0x0008
|
||||
|
||||
|
||||
/**
|
||||
@@ -1051,7 +982,6 @@ struct __DRIdri2ExtensionRec {
|
||||
#define __DRI_IMAGE_FOURCC_XRGB8888 0x34325258
|
||||
#define __DRI_IMAGE_FOURCC_ABGR8888 0x34324241
|
||||
#define __DRI_IMAGE_FOURCC_XBGR8888 0x34324258
|
||||
#define __DRI_IMAGE_FOURCC_SARGB8888 0x83324258
|
||||
#define __DRI_IMAGE_FOURCC_YUV410 0x39565559
|
||||
#define __DRI_IMAGE_FOURCC_YUV411 0x31315559
|
||||
#define __DRI_IMAGE_FOURCC_YUV420 0x32315559
|
||||
@@ -1097,25 +1027,6 @@ struct __DRIdri2ExtensionRec {
|
||||
* 7+. Each query will return a
|
||||
* new fd. */
|
||||
|
||||
enum __DRIYUVColorSpace {
|
||||
__DRI_YUV_COLOR_SPACE_UNDEFINED = 0,
|
||||
__DRI_YUV_COLOR_SPACE_ITU_REC601 = 0x327F,
|
||||
__DRI_YUV_COLOR_SPACE_ITU_REC709 = 0x3280,
|
||||
__DRI_YUV_COLOR_SPACE_ITU_REC2020 = 0x3281
|
||||
};
|
||||
|
||||
enum __DRISampleRange {
|
||||
__DRI_YUV_RANGE_UNDEFINED = 0,
|
||||
__DRI_YUV_FULL_RANGE = 0x3282,
|
||||
__DRI_YUV_NARROW_RANGE = 0x3283
|
||||
};
|
||||
|
||||
enum __DRIChromaSiting {
|
||||
__DRI_YUV_CHROMA_SITING_UNDEFINED = 0,
|
||||
__DRI_YUV_CHROMA_SITING_0 = 0x3284,
|
||||
__DRI_YUV_CHROMA_SITING_0_5 = 0x3285
|
||||
};
|
||||
|
||||
/**
|
||||
* \name Reasons that __DRIimageExtensionRec::createImageFromTexture might fail
|
||||
*/
|
||||
@@ -1221,24 +1132,6 @@ struct __DRIimageExtensionRec {
|
||||
int *fds, int num_fds,
|
||||
int *strides, int *offsets,
|
||||
void *loaderPrivate);
|
||||
|
||||
/**
|
||||
* Like createImageFromFds, but takes additional attributes.
|
||||
*
|
||||
* For EGL_EXT_image_dma_buf_import.
|
||||
*
|
||||
* \since 8
|
||||
*/
|
||||
__DRIimage *(*createImageFromDmaBufs)(__DRIscreen *screen,
|
||||
int width, int height, int fourcc,
|
||||
int *fds, int num_fds,
|
||||
int *strides, int *offsets,
|
||||
enum __DRIYUVColorSpace color_space,
|
||||
enum __DRISampleRange sample_range,
|
||||
enum __DRIChromaSiting horiz_siting,
|
||||
enum __DRIChromaSiting vert_siting,
|
||||
unsigned *error,
|
||||
void *loaderPrivate);
|
||||
};
|
||||
|
||||
|
||||
@@ -1293,135 +1186,4 @@ struct __DRIrobustnessExtensionRec {
|
||||
__DRIextension base;
|
||||
};
|
||||
|
||||
/**
|
||||
* DRI config options extension.
|
||||
*
|
||||
* This extension provides the XML string containing driver options for use by
|
||||
* the loader in supporting the driconf application.
|
||||
*/
|
||||
#define __DRI_CONFIG_OPTIONS "DRI_ConfigOptions"
|
||||
#define __DRI_CONFIG_OPTIONS_VERSION 1
|
||||
|
||||
typedef struct __DRIconfigOptionsExtensionRec {
|
||||
__DRIextension base;
|
||||
const char *xml;
|
||||
} __DRIconfigOptionsExtension;
|
||||
|
||||
/**
|
||||
* This extension provides a driver vtable to a set of common driver helper
|
||||
* functions (driCoreExtension, driDRI2Extension) within the driver
|
||||
* implementation, as opposed to having to pass them through a global
|
||||
* variable.
|
||||
*
|
||||
* It is not intended to be public API to the actual loader, and the vtable
|
||||
* layout may change at any time.
|
||||
*/
|
||||
#define __DRI_DRIVER_VTABLE "DRI_DriverVtable"
|
||||
#define __DRI_DRIVER_VTABLE_VERSION 1
|
||||
|
||||
typedef struct __DRIDriverVtableExtensionRec {
|
||||
__DRIextension base;
|
||||
const struct __DriverAPIRec *vtable;
|
||||
} __DRIDriverVtableExtension;
|
||||
|
||||
/**
|
||||
* Query renderer driver extension
|
||||
*
|
||||
* This allows the window system layer (either EGL or GLX) to query aspects of
|
||||
* hardware and driver support without creating a context.
|
||||
*/
|
||||
#define __DRI2_RENDERER_QUERY "DRI_RENDERER_QUERY"
|
||||
#define __DRI2_RENDERER_QUERY_VERSION 1
|
||||
|
||||
#define __DRI2_RENDERER_VENDOR_ID 0x0000
|
||||
#define __DRI2_RENDERER_DEVICE_ID 0x0001
|
||||
#define __DRI2_RENDERER_VERSION 0x0002
|
||||
#define __DRI2_RENDERER_ACCELERATED 0x0003
|
||||
#define __DRI2_RENDERER_VIDEO_MEMORY 0x0004
|
||||
#define __DRI2_RENDERER_UNIFIED_MEMORY_ARCHITECTURE 0x0005
|
||||
#define __DRI2_RENDERER_PREFERRED_PROFILE 0x0006
|
||||
#define __DRI2_RENDERER_OPENGL_CORE_PROFILE_VERSION 0x0007
|
||||
#define __DRI2_RENDERER_OPENGL_COMPATIBILITY_PROFILE_VERSION 0x0008
|
||||
#define __DRI2_RENDERER_OPENGL_ES_PROFILE_VERSION 0x0009
|
||||
#define __DRI2_RENDERER_OPENGL_ES2_PROFILE_VERSION 0x000a
|
||||
|
||||
typedef struct __DRI2rendererQueryExtensionRec __DRI2rendererQueryExtension;
|
||||
struct __DRI2rendererQueryExtensionRec {
|
||||
__DRIextension base;
|
||||
|
||||
int (*queryInteger)(__DRIscreen *screen, int attribute, unsigned int *val);
|
||||
int (*queryString)(__DRIscreen *screen, int attribute, const char **val);
|
||||
};
|
||||
|
||||
/**
|
||||
* Image Loader extension. Drivers use this to allocate color buffers
|
||||
*/
|
||||
|
||||
enum __DRIimageBufferMask {
|
||||
__DRI_IMAGE_BUFFER_BACK = (1 << 0),
|
||||
__DRI_IMAGE_BUFFER_FRONT = (1 << 1)
|
||||
};
|
||||
|
||||
struct __DRIimageList {
|
||||
uint32_t image_mask;
|
||||
__DRIimage *back;
|
||||
__DRIimage *front;
|
||||
};
|
||||
|
||||
#define __DRI_IMAGE_LOADER "DRI_IMAGE_LOADER"
|
||||
#define __DRI_IMAGE_LOADER_VERSION 1
|
||||
|
||||
struct __DRIimageLoaderExtensionRec {
|
||||
__DRIextension base;
|
||||
|
||||
/**
|
||||
* Allocate color buffers.
|
||||
*
|
||||
* \param driDrawable
|
||||
* \param width Width of allocated buffers
|
||||
* \param height Height of allocated buffers
|
||||
* \param format one of __DRI_IMAGE_FORMAT_*
|
||||
* \param stamp Address of variable to be updated when
|
||||
* getBuffers must be called again
|
||||
* \param loaderPrivate The loaderPrivate for driDrawable
|
||||
* \param buffer_mask Set of buffers to allocate
|
||||
* \param buffers Returned buffers
|
||||
*/
|
||||
int (*getBuffers)(__DRIdrawable *driDrawable,
|
||||
unsigned int format,
|
||||
uint32_t *stamp,
|
||||
void *loaderPrivate,
|
||||
uint32_t buffer_mask,
|
||||
struct __DRIimageList *buffers);
|
||||
|
||||
/**
|
||||
* Flush pending front-buffer rendering
|
||||
*
|
||||
* Any rendering that has been performed to the
|
||||
* fake front will be flushed to the front
|
||||
*
|
||||
* \param driDrawable Drawable whose front-buffer is to be flushed
|
||||
* \param loaderPrivate Loader's private data that was previously passed
|
||||
* into __DRIdri2ExtensionRec::createNewDrawable
|
||||
*/
|
||||
void (*flushFrontBuffer)(__DRIdrawable *driDrawable, void *loaderPrivate);
|
||||
};
|
||||
|
||||
/**
|
||||
* DRI extension.
|
||||
*/
|
||||
|
||||
#define __DRI_IMAGE_DRIVER "DRI_IMAGE_DRIVER"
|
||||
#define __DRI_IMAGE_DRIVER_VERSION 1
|
||||
|
||||
struct __DRIimageDriverExtensionRec {
|
||||
__DRIextension base;
|
||||
|
||||
/* Common DRI functions, shared with DRI2 */
|
||||
__DRIcreateNewScreen2Func createNewScreen2;
|
||||
__DRIcreateNewDrawableFunc createNewDrawable;
|
||||
__DRIcreateContextAttribsFunc createContextAttribs;
|
||||
__DRIgetAPIMaskFunc getAPIMask;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@@ -3,7 +3,7 @@
|
||||
* SAREA definitions.
|
||||
*
|
||||
* \author Kevin E. Martin <kevin@precisioninsight.com>
|
||||
* \author Jens Owen <jowen@vmware.com>
|
||||
* \author Jens Owen <jens@tungstengraphics.com>
|
||||
* \author Rickard E. (Rik) Faith <faith@valinux.com>
|
||||
*/
|
||||
|
||||
|
@@ -60,8 +60,8 @@ extern "C" {
|
||||
#include <GL/gl.h>
|
||||
|
||||
|
||||
#define OSMESA_MAJOR_VERSION 10
|
||||
#define OSMESA_MINOR_VERSION 0
|
||||
#define OSMESA_MAJOR_VERSION 6
|
||||
#define OSMESA_MINOR_VERSION 5
|
||||
#define OSMESA_PATCH_VERSION 0
|
||||
|
||||
|
||||
@@ -101,6 +101,11 @@ extern "C" {
|
||||
typedef struct osmesa_context *OSMesaContext;
|
||||
|
||||
|
||||
#if defined(__QUICKDRAW__)
|
||||
#pragma export on
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Create an Off-Screen Mesa rendering context. The only attribute needed is
|
||||
* an RGBA vs Color-Index mode flag.
|
||||
@@ -270,21 +275,6 @@ OSMesaGetProcAddress( const char *funcName );
|
||||
GLAPI void GLAPIENTRY
|
||||
OSMesaColorClamp(GLboolean enable);
|
||||
|
||||
|
||||
/**
|
||||
* Enable/disable Gallium post-process filters.
|
||||
* This should be called after a context is created, but before it is
|
||||
* made current for the first time. After a context has been made
|
||||
* current, this function has no effect.
|
||||
* If the enable_value param is zero, the filter is disabled. Otherwise
|
||||
* the filter is enabled, and the value may control the filter's quality.
|
||||
* New in Mesa 10.0
|
||||
*/
|
||||
GLAPI void GLAPIENTRY
|
||||
OSMesaPostprocess(OSMesaContext osmesa, const char *filter,
|
||||
unsigned enable_value);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@@ -1,7 +1,7 @@
|
||||
#ifndef __glext_h_
|
||||
#define __glext_h_
|
||||
|
||||
/* $Revision: 20798 $ on $Date:: 2013-03-07 01:19:34 -0800 #$ */
|
||||
/* $Revision: 19260 $ on $Date:: 2012-09-20 11:30:36 -0700 #$ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -1055,10 +1055,10 @@ typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum
|
||||
#ifndef GL_EXT_multi_draw_arrays
|
||||
#define GL_EXT_multi_draw_arrays 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, const GLint *, const GLsizei *, GLsizei);
|
||||
GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
|
||||
GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
|
||||
typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
|
||||
typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
|
||||
#endif
|
||||
|
||||
|
@@ -1,83 +1,56 @@
|
||||
#ifndef __gl2_h_
|
||||
#define __gl2_h_ 1
|
||||
#define __gl2_h_
|
||||
|
||||
/* $Revision: 16803 $ on $Date:: 2012-02-02 09:49:18 -0800 #$ */
|
||||
|
||||
#include <GLES2/gl2platform.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
** Copyright (c) 2013 The Khronos Group Inc.
|
||||
**
|
||||
** Permission is hereby granted, free of charge, to any person obtaining a
|
||||
** copy of this software and/or associated documentation files (the
|
||||
** "Materials"), to deal in the Materials without restriction, including
|
||||
** without limitation the rights to use, copy, modify, merge, publish,
|
||||
** distribute, sublicense, and/or sell copies of the Materials, and to
|
||||
** permit persons to whom the Materials are furnished to do so, subject to
|
||||
** the following conditions:
|
||||
**
|
||||
** The above copyright notice and this permission notice shall be included
|
||||
** in all copies or substantial portions of the Materials.
|
||||
**
|
||||
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
||||
*/
|
||||
/*
|
||||
** This header is generated from the Khronos OpenGL / OpenGL ES XML
|
||||
** API Registry. The current version of the Registry, generator scripts
|
||||
** used to make the header, and the header can be found at
|
||||
** http://www.opengl.org/registry/
|
||||
**
|
||||
** Khronos $Revision: 24614 $ on $Date: 2013-12-30 04:44:46 -0800 (Mon, 30 Dec 2013) $
|
||||
*/
|
||||
|
||||
#include <GLES2/gl2platform.h>
|
||||
|
||||
/* Generated on date 20131230 */
|
||||
|
||||
/* Generated C header for:
|
||||
* API: gles2
|
||||
* Profile: common
|
||||
* Versions considered: 2\.[0-9]
|
||||
* Versions emitted: .*
|
||||
* Default extensions included: None
|
||||
* Additional extensions included: _nomatch_^
|
||||
* Extensions removed: _nomatch_^
|
||||
* This document is licensed under the SGI Free Software B License Version
|
||||
* 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
|
||||
*/
|
||||
|
||||
#ifndef GL_ES_VERSION_2_0
|
||||
#define GL_ES_VERSION_2_0 1
|
||||
#include <KHR/khrplatform.h>
|
||||
typedef khronos_int8_t GLbyte;
|
||||
typedef khronos_float_t GLclampf;
|
||||
typedef khronos_int32_t GLfixed;
|
||||
typedef short GLshort;
|
||||
typedef unsigned short GLushort;
|
||||
typedef void GLvoid;
|
||||
typedef struct __GLsync *GLsync;
|
||||
typedef khronos_int64_t GLint64;
|
||||
typedef khronos_uint64_t GLuint64;
|
||||
typedef unsigned int GLenum;
|
||||
typedef unsigned int GLuint;
|
||||
typedef char GLchar;
|
||||
typedef khronos_float_t GLfloat;
|
||||
typedef khronos_ssize_t GLsizeiptr;
|
||||
/*-------------------------------------------------------------------------
|
||||
* Data type definitions
|
||||
*-----------------------------------------------------------------------*/
|
||||
|
||||
typedef void GLvoid;
|
||||
typedef char GLchar;
|
||||
typedef unsigned int GLenum;
|
||||
typedef unsigned char GLboolean;
|
||||
typedef unsigned int GLbitfield;
|
||||
typedef khronos_int8_t GLbyte;
|
||||
typedef short GLshort;
|
||||
typedef int GLint;
|
||||
typedef int GLsizei;
|
||||
typedef khronos_uint8_t GLubyte;
|
||||
typedef unsigned short GLushort;
|
||||
typedef unsigned int GLuint;
|
||||
typedef khronos_float_t GLfloat;
|
||||
typedef khronos_float_t GLclampf;
|
||||
typedef khronos_int32_t GLfixed;
|
||||
|
||||
/* GL types for handling large vertex buffer objects */
|
||||
typedef khronos_intptr_t GLintptr;
|
||||
typedef unsigned int GLbitfield;
|
||||
typedef int GLint;
|
||||
typedef unsigned char GLboolean;
|
||||
typedef int GLsizei;
|
||||
typedef khronos_uint8_t GLubyte;
|
||||
typedef khronos_ssize_t GLsizeiptr;
|
||||
|
||||
/* OpenGL ES core versions */
|
||||
#define GL_ES_VERSION_2_0 1
|
||||
|
||||
/* ClearBufferMask */
|
||||
#define GL_DEPTH_BUFFER_BIT 0x00000100
|
||||
#define GL_STENCIL_BUFFER_BIT 0x00000400
|
||||
#define GL_COLOR_BUFFER_BIT 0x00004000
|
||||
|
||||
/* Boolean */
|
||||
#define GL_FALSE 0
|
||||
#define GL_TRUE 1
|
||||
|
||||
/* BeginMode */
|
||||
#define GL_POINTS 0x0000
|
||||
#define GL_LINES 0x0001
|
||||
#define GL_LINE_LOOP 0x0002
|
||||
@@ -85,6 +58,18 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_TRIANGLES 0x0004
|
||||
#define GL_TRIANGLE_STRIP 0x0005
|
||||
#define GL_TRIANGLE_FAN 0x0006
|
||||
|
||||
/* AlphaFunction (not supported in ES20) */
|
||||
/* GL_NEVER */
|
||||
/* GL_LESS */
|
||||
/* GL_EQUAL */
|
||||
/* GL_LEQUAL */
|
||||
/* GL_GREATER */
|
||||
/* GL_NOTEQUAL */
|
||||
/* GL_GEQUAL */
|
||||
/* GL_ALWAYS */
|
||||
|
||||
/* BlendingFactorDest */
|
||||
#define GL_ZERO 0
|
||||
#define GL_ONE 1
|
||||
#define GL_SRC_COLOR 0x0300
|
||||
@@ -93,15 +78,29 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_ONE_MINUS_SRC_ALPHA 0x0303
|
||||
#define GL_DST_ALPHA 0x0304
|
||||
#define GL_ONE_MINUS_DST_ALPHA 0x0305
|
||||
|
||||
/* BlendingFactorSrc */
|
||||
/* GL_ZERO */
|
||||
/* GL_ONE */
|
||||
#define GL_DST_COLOR 0x0306
|
||||
#define GL_ONE_MINUS_DST_COLOR 0x0307
|
||||
#define GL_SRC_ALPHA_SATURATE 0x0308
|
||||
/* GL_SRC_ALPHA */
|
||||
/* GL_ONE_MINUS_SRC_ALPHA */
|
||||
/* GL_DST_ALPHA */
|
||||
/* GL_ONE_MINUS_DST_ALPHA */
|
||||
|
||||
/* BlendEquationSeparate */
|
||||
#define GL_FUNC_ADD 0x8006
|
||||
#define GL_BLEND_EQUATION 0x8009
|
||||
#define GL_BLEND_EQUATION_RGB 0x8009
|
||||
#define GL_BLEND_EQUATION_RGB 0x8009 /* same as BLEND_EQUATION */
|
||||
#define GL_BLEND_EQUATION_ALPHA 0x883D
|
||||
|
||||
/* BlendSubtract */
|
||||
#define GL_FUNC_SUBTRACT 0x800A
|
||||
#define GL_FUNC_REVERSE_SUBTRACT 0x800B
|
||||
|
||||
/* Separate Blend Functions */
|
||||
#define GL_BLEND_DST_RGB 0x80C8
|
||||
#define GL_BLEND_SRC_RGB 0x80C9
|
||||
#define GL_BLEND_DST_ALPHA 0x80CA
|
||||
@@ -111,19 +110,38 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_CONSTANT_ALPHA 0x8003
|
||||
#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004
|
||||
#define GL_BLEND_COLOR 0x8005
|
||||
|
||||
/* Buffer Objects */
|
||||
#define GL_ARRAY_BUFFER 0x8892
|
||||
#define GL_ELEMENT_ARRAY_BUFFER 0x8893
|
||||
#define GL_ARRAY_BUFFER_BINDING 0x8894
|
||||
#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895
|
||||
|
||||
#define GL_STREAM_DRAW 0x88E0
|
||||
#define GL_STATIC_DRAW 0x88E4
|
||||
#define GL_DYNAMIC_DRAW 0x88E8
|
||||
|
||||
#define GL_BUFFER_SIZE 0x8764
|
||||
#define GL_BUFFER_USAGE 0x8765
|
||||
|
||||
#define GL_CURRENT_VERTEX_ATTRIB 0x8626
|
||||
|
||||
/* CullFaceMode */
|
||||
#define GL_FRONT 0x0404
|
||||
#define GL_BACK 0x0405
|
||||
#define GL_FRONT_AND_BACK 0x0408
|
||||
|
||||
/* DepthFunction */
|
||||
/* GL_NEVER */
|
||||
/* GL_LESS */
|
||||
/* GL_EQUAL */
|
||||
/* GL_LEQUAL */
|
||||
/* GL_GREATER */
|
||||
/* GL_NOTEQUAL */
|
||||
/* GL_GEQUAL */
|
||||
/* GL_ALWAYS */
|
||||
|
||||
/* EnableCap */
|
||||
#define GL_TEXTURE_2D 0x0DE1
|
||||
#define GL_CULL_FACE 0x0B44
|
||||
#define GL_BLEND 0x0BE2
|
||||
@@ -134,13 +152,19 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_POLYGON_OFFSET_FILL 0x8037
|
||||
#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E
|
||||
#define GL_SAMPLE_COVERAGE 0x80A0
|
||||
|
||||
/* ErrorCode */
|
||||
#define GL_NO_ERROR 0
|
||||
#define GL_INVALID_ENUM 0x0500
|
||||
#define GL_INVALID_VALUE 0x0501
|
||||
#define GL_INVALID_OPERATION 0x0502
|
||||
#define GL_OUT_OF_MEMORY 0x0505
|
||||
|
||||
/* FrontFaceDirection */
|
||||
#define GL_CW 0x0900
|
||||
#define GL_CCW 0x0901
|
||||
|
||||
/* GetPName */
|
||||
#define GL_LINE_WIDTH 0x0B21
|
||||
#define GL_ALIASED_POINT_SIZE_RANGE 0x846D
|
||||
#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E
|
||||
@@ -167,6 +191,7 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_STENCIL_BACK_WRITEMASK 0x8CA5
|
||||
#define GL_VIEWPORT 0x0BA2
|
||||
#define GL_SCISSOR_BOX 0x0C10
|
||||
/* GL_SCISSOR_TEST */
|
||||
#define GL_COLOR_CLEAR_VALUE 0x0C22
|
||||
#define GL_COLOR_WRITEMASK 0x0C23
|
||||
#define GL_UNPACK_ALIGNMENT 0x0CF5
|
||||
@@ -181,18 +206,32 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_DEPTH_BITS 0x0D56
|
||||
#define GL_STENCIL_BITS 0x0D57
|
||||
#define GL_POLYGON_OFFSET_UNITS 0x2A00
|
||||
/* GL_POLYGON_OFFSET_FILL */
|
||||
#define GL_POLYGON_OFFSET_FACTOR 0x8038
|
||||
#define GL_TEXTURE_BINDING_2D 0x8069
|
||||
#define GL_SAMPLE_BUFFERS 0x80A8
|
||||
#define GL_SAMPLES 0x80A9
|
||||
#define GL_SAMPLE_COVERAGE_VALUE 0x80AA
|
||||
#define GL_SAMPLE_COVERAGE_INVERT 0x80AB
|
||||
|
||||
/* GetTextureParameter */
|
||||
/* GL_TEXTURE_MAG_FILTER */
|
||||
/* GL_TEXTURE_MIN_FILTER */
|
||||
/* GL_TEXTURE_WRAP_S */
|
||||
/* GL_TEXTURE_WRAP_T */
|
||||
|
||||
#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
|
||||
#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3
|
||||
|
||||
/* HintMode */
|
||||
#define GL_DONT_CARE 0x1100
|
||||
#define GL_FASTEST 0x1101
|
||||
#define GL_NICEST 0x1102
|
||||
#define GL_GENERATE_MIPMAP_HINT 0x8192
|
||||
|
||||
/* HintTarget */
|
||||
#define GL_GENERATE_MIPMAP_HINT 0x8192
|
||||
|
||||
/* DataType */
|
||||
#define GL_BYTE 0x1400
|
||||
#define GL_UNSIGNED_BYTE 0x1401
|
||||
#define GL_SHORT 0x1402
|
||||
@@ -201,35 +240,44 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_UNSIGNED_INT 0x1405
|
||||
#define GL_FLOAT 0x1406
|
||||
#define GL_FIXED 0x140C
|
||||
|
||||
/* PixelFormat */
|
||||
#define GL_DEPTH_COMPONENT 0x1902
|
||||
#define GL_ALPHA 0x1906
|
||||
#define GL_RGB 0x1907
|
||||
#define GL_RGBA 0x1908
|
||||
#define GL_LUMINANCE 0x1909
|
||||
#define GL_LUMINANCE_ALPHA 0x190A
|
||||
|
||||
/* PixelType */
|
||||
/* GL_UNSIGNED_BYTE */
|
||||
#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033
|
||||
#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034
|
||||
#define GL_UNSIGNED_SHORT_5_6_5 0x8363
|
||||
#define GL_FRAGMENT_SHADER 0x8B30
|
||||
#define GL_VERTEX_SHADER 0x8B31
|
||||
#define GL_MAX_VERTEX_ATTRIBS 0x8869
|
||||
#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
|
||||
#define GL_MAX_VARYING_VECTORS 0x8DFC
|
||||
|
||||
/* Shaders */
|
||||
#define GL_FRAGMENT_SHADER 0x8B30
|
||||
#define GL_VERTEX_SHADER 0x8B31
|
||||
#define GL_MAX_VERTEX_ATTRIBS 0x8869
|
||||
#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB
|
||||
#define GL_MAX_VARYING_VECTORS 0x8DFC
|
||||
#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
|
||||
#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
|
||||
#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
|
||||
#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
|
||||
#define GL_SHADER_TYPE 0x8B4F
|
||||
#define GL_DELETE_STATUS 0x8B80
|
||||
#define GL_LINK_STATUS 0x8B82
|
||||
#define GL_VALIDATE_STATUS 0x8B83
|
||||
#define GL_ATTACHED_SHADERS 0x8B85
|
||||
#define GL_ACTIVE_UNIFORMS 0x8B86
|
||||
#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
|
||||
#define GL_ACTIVE_ATTRIBUTES 0x8B89
|
||||
#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
|
||||
#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
|
||||
#define GL_CURRENT_PROGRAM 0x8B8D
|
||||
#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C
|
||||
#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872
|
||||
#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD
|
||||
#define GL_SHADER_TYPE 0x8B4F
|
||||
#define GL_DELETE_STATUS 0x8B80
|
||||
#define GL_LINK_STATUS 0x8B82
|
||||
#define GL_VALIDATE_STATUS 0x8B83
|
||||
#define GL_ATTACHED_SHADERS 0x8B85
|
||||
#define GL_ACTIVE_UNIFORMS 0x8B86
|
||||
#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87
|
||||
#define GL_ACTIVE_ATTRIBUTES 0x8B89
|
||||
#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A
|
||||
#define GL_SHADING_LANGUAGE_VERSION 0x8B8C
|
||||
#define GL_CURRENT_PROGRAM 0x8B8D
|
||||
|
||||
/* StencilFunction */
|
||||
#define GL_NEVER 0x0200
|
||||
#define GL_LESS 0x0201
|
||||
#define GL_EQUAL 0x0202
|
||||
@@ -238,6 +286,9 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_NOTEQUAL 0x0205
|
||||
#define GL_GEQUAL 0x0206
|
||||
#define GL_ALWAYS 0x0207
|
||||
|
||||
/* StencilOp */
|
||||
/* GL_ZERO */
|
||||
#define GL_KEEP 0x1E00
|
||||
#define GL_REPLACE 0x1E01
|
||||
#define GL_INCR 0x1E02
|
||||
@@ -245,21 +296,35 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_INVERT 0x150A
|
||||
#define GL_INCR_WRAP 0x8507
|
||||
#define GL_DECR_WRAP 0x8508
|
||||
|
||||
/* StringName */
|
||||
#define GL_VENDOR 0x1F00
|
||||
#define GL_RENDERER 0x1F01
|
||||
#define GL_VERSION 0x1F02
|
||||
#define GL_EXTENSIONS 0x1F03
|
||||
|
||||
/* TextureMagFilter */
|
||||
#define GL_NEAREST 0x2600
|
||||
#define GL_LINEAR 0x2601
|
||||
|
||||
/* TextureMinFilter */
|
||||
/* GL_NEAREST */
|
||||
/* GL_LINEAR */
|
||||
#define GL_NEAREST_MIPMAP_NEAREST 0x2700
|
||||
#define GL_LINEAR_MIPMAP_NEAREST 0x2701
|
||||
#define GL_NEAREST_MIPMAP_LINEAR 0x2702
|
||||
#define GL_LINEAR_MIPMAP_LINEAR 0x2703
|
||||
|
||||
/* TextureParameterName */
|
||||
#define GL_TEXTURE_MAG_FILTER 0x2800
|
||||
#define GL_TEXTURE_MIN_FILTER 0x2801
|
||||
#define GL_TEXTURE_WRAP_S 0x2802
|
||||
#define GL_TEXTURE_WRAP_T 0x2803
|
||||
|
||||
/* TextureTarget */
|
||||
/* GL_TEXTURE_2D */
|
||||
#define GL_TEXTURE 0x1702
|
||||
|
||||
#define GL_TEXTURE_CUBE_MAP 0x8513
|
||||
#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514
|
||||
#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515
|
||||
@@ -269,6 +334,8 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519
|
||||
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A
|
||||
#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C
|
||||
|
||||
/* TextureUnit */
|
||||
#define GL_TEXTURE0 0x84C0
|
||||
#define GL_TEXTURE1 0x84C1
|
||||
#define GL_TEXTURE2 0x84C2
|
||||
@@ -302,9 +369,13 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_TEXTURE30 0x84DE
|
||||
#define GL_TEXTURE31 0x84DF
|
||||
#define GL_ACTIVE_TEXTURE 0x84E0
|
||||
|
||||
/* TextureWrapMode */
|
||||
#define GL_REPEAT 0x2901
|
||||
#define GL_CLAMP_TO_EDGE 0x812F
|
||||
#define GL_MIRRORED_REPEAT 0x8370
|
||||
|
||||
/* Uniform Types */
|
||||
#define GL_FLOAT_VEC2 0x8B50
|
||||
#define GL_FLOAT_VEC3 0x8B51
|
||||
#define GL_FLOAT_VEC4 0x8B52
|
||||
@@ -320,34 +391,48 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_FLOAT_MAT4 0x8B5C
|
||||
#define GL_SAMPLER_2D 0x8B5E
|
||||
#define GL_SAMPLER_CUBE 0x8B60
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
|
||||
|
||||
/* Vertex Arrays */
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
|
||||
#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
|
||||
|
||||
/* Read Format */
|
||||
#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A
|
||||
#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
|
||||
|
||||
/* Shader Source */
|
||||
#define GL_COMPILE_STATUS 0x8B81
|
||||
#define GL_INFO_LOG_LENGTH 0x8B84
|
||||
#define GL_SHADER_SOURCE_LENGTH 0x8B88
|
||||
#define GL_SHADER_COMPILER 0x8DFA
|
||||
|
||||
/* Shader Binary */
|
||||
#define GL_SHADER_BINARY_FORMATS 0x8DF8
|
||||
#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9
|
||||
|
||||
/* Shader Precision-Specified Types */
|
||||
#define GL_LOW_FLOAT 0x8DF0
|
||||
#define GL_MEDIUM_FLOAT 0x8DF1
|
||||
#define GL_HIGH_FLOAT 0x8DF2
|
||||
#define GL_LOW_INT 0x8DF3
|
||||
#define GL_MEDIUM_INT 0x8DF4
|
||||
#define GL_HIGH_INT 0x8DF5
|
||||
|
||||
/* Framebuffer Object. */
|
||||
#define GL_FRAMEBUFFER 0x8D40
|
||||
#define GL_RENDERBUFFER 0x8D41
|
||||
|
||||
#define GL_RGBA4 0x8056
|
||||
#define GL_RGB5_A1 0x8057
|
||||
#define GL_RGB565 0x8D62
|
||||
#define GL_DEPTH_COMPONENT16 0x81A5
|
||||
#define GL_STENCIL_INDEX8 0x8D48
|
||||
|
||||
#define GL_RENDERBUFFER_WIDTH 0x8D42
|
||||
#define GL_RENDERBUFFER_HEIGHT 0x8D43
|
||||
#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44
|
||||
@@ -357,169 +442,179 @@ typedef khronos_uint8_t GLubyte;
|
||||
#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53
|
||||
#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54
|
||||
#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
|
||||
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
|
||||
|
||||
#define GL_COLOR_ATTACHMENT0 0x8CE0
|
||||
#define GL_DEPTH_ATTACHMENT 0x8D00
|
||||
#define GL_STENCIL_ATTACHMENT 0x8D20
|
||||
|
||||
#define GL_NONE 0
|
||||
#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
|
||||
|
||||
#define GL_FRAMEBUFFER_COMPLETE 0x8CD5
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
|
||||
#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9
|
||||
#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD
|
||||
|
||||
#define GL_FRAMEBUFFER_BINDING 0x8CA6
|
||||
#define GL_RENDERBUFFER_BINDING 0x8CA7
|
||||
#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
|
||||
|
||||
#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506
|
||||
GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
|
||||
GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar *name);
|
||||
GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
|
||||
GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
|
||||
GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
|
||||
GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
|
||||
GL_APICALL void GL_APIENTRY glBlendColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
|
||||
GL_APICALL void GL_APIENTRY glBlendEquation (GLenum mode);
|
||||
GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
|
||||
GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
|
||||
GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
|
||||
GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const void *data, GLenum usage);
|
||||
GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
|
||||
GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
|
||||
GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
|
||||
GL_APICALL void GL_APIENTRY glClearColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
|
||||
GL_APICALL void GL_APIENTRY glClearDepthf (GLfloat d);
|
||||
GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
|
||||
GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
|
||||
GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
|
||||
GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
|
||||
GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
|
||||
GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
|
||||
GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
|
||||
GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
|
||||
GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint *buffers);
|
||||
GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint *framebuffers);
|
||||
GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint *renderbuffers);
|
||||
GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint *textures);
|
||||
GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
|
||||
GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
|
||||
GL_APICALL void GL_APIENTRY glDepthRangef (GLfloat n, GLfloat f);
|
||||
GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
|
||||
GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
|
||||
GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
|
||||
GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void *indices);
|
||||
GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
|
||||
GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
|
||||
GL_APICALL void GL_APIENTRY glFinish (void);
|
||||
GL_APICALL void GL_APIENTRY glFlush (void);
|
||||
GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
|
||||
GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||
GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
|
||||
GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint *buffers);
|
||||
GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
|
||||
GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint *framebuffers);
|
||||
GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint *renderbuffers);
|
||||
GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint *textures);
|
||||
GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
|
||||
GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
|
||||
GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
|
||||
GL_APICALL GLint GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar *name);
|
||||
GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean *data);
|
||||
GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint *params);
|
||||
GL_APICALL GLenum GL_APIENTRY glGetError (void);
|
||||
GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat *data);
|
||||
GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint *params);
|
||||
GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint *data);
|
||||
GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint *params);
|
||||
GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
|
||||
GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint *params);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint *params);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
|
||||
GL_APICALL const GLubyte *GL_APIENTRY glGetString (GLenum name);
|
||||
GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params);
|
||||
GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params);
|
||||
GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat *params);
|
||||
GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint *params);
|
||||
GL_APICALL GLint GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar *name);
|
||||
GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat *params);
|
||||
GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint *params);
|
||||
GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, void **pointer);
|
||||
GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
|
||||
GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
|
||||
GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
|
||||
GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
|
||||
GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
|
||||
GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
|
||||
GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||
GL_APICALL void GL_APIENTRY glSampleCoverage (GLfloat value, GLboolean invert);
|
||||
GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei count, const GLuint *shaders, GLenum binaryformat, const void *binary, GLsizei length);
|
||||
GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length);
|
||||
GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
|
||||
GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
|
||||
GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
|
||||
GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
|
||||
GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params);
|
||||
GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
|
||||
GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params);
|
||||
GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
|
||||
GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat v0);
|
||||
GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat *value);
|
||||
GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint v0);
|
||||
GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint *value);
|
||||
GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat v0, GLfloat v1);
|
||||
GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat *value);
|
||||
GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint v0, GLint v1);
|
||||
GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint *value);
|
||||
GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
|
||||
GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat *value);
|
||||
GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint v0, GLint v1, GLint v2);
|
||||
GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint *value);
|
||||
GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
|
||||
GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat *value);
|
||||
GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
|
||||
GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint *value);
|
||||
GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||
GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||
GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
|
||||
GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint index, GLfloat x);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint index, const GLfloat *v);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint index, const GLfloat *v);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint index, const GLfloat *v);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint index, const GLfloat *v);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
|
||||
GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
#endif /* GL_ES_VERSION_2_0 */
|
||||
|
||||
/*-------------------------------------------------------------------------
|
||||
* GL core functions.
|
||||
*-----------------------------------------------------------------------*/
|
||||
|
||||
GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture);
|
||||
GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name);
|
||||
GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
|
||||
GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
|
||||
GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
|
||||
GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
|
||||
GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
|
||||
GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode );
|
||||
GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
|
||||
GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
|
||||
GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
|
||||
GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
|
||||
GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);
|
||||
GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target);
|
||||
GL_APICALL void GL_APIENTRY glClear (GLbitfield mask);
|
||||
GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
|
||||
GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth);
|
||||
GL_APICALL void GL_APIENTRY glClearStencil (GLint s);
|
||||
GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
|
||||
GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data);
|
||||
GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data);
|
||||
GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
|
||||
GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
GL_APICALL GLuint GL_APIENTRY glCreateProgram (void);
|
||||
GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type);
|
||||
GL_APICALL void GL_APIENTRY glCullFace (GLenum mode);
|
||||
GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
|
||||
GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
|
||||
GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
|
||||
GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
|
||||
GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func);
|
||||
GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag);
|
||||
GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
|
||||
GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
|
||||
GL_APICALL void GL_APIENTRY glDisable (GLenum cap);
|
||||
GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index);
|
||||
GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
|
||||
GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices);
|
||||
GL_APICALL void GL_APIENTRY glEnable (GLenum cap);
|
||||
GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index);
|
||||
GL_APICALL void GL_APIENTRY glFinish (void);
|
||||
GL_APICALL void GL_APIENTRY glFlush (void);
|
||||
GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
|
||||
GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||
GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode);
|
||||
GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
|
||||
GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target);
|
||||
GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
|
||||
GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
|
||||
GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
|
||||
GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
|
||||
GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
|
||||
GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
|
||||
GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name);
|
||||
GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
|
||||
GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
|
||||
GL_APICALL GLenum GL_APIENTRY glGetError (void);
|
||||
GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
|
||||
GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog);
|
||||
GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
|
||||
GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source);
|
||||
GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
|
||||
GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
|
||||
GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
|
||||
GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
|
||||
GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name);
|
||||
GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
|
||||
GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer);
|
||||
GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader);
|
||||
GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture);
|
||||
GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width);
|
||||
GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
|
||||
GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
|
||||
GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);
|
||||
GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void);
|
||||
GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||
GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
|
||||
GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length);
|
||||
GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length);
|
||||
GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
|
||||
GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
|
||||
GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
|
||||
GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
|
||||
GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
|
||||
GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
|
||||
GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
|
||||
GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
|
||||
GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels);
|
||||
GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x);
|
||||
GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
|
||||
GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x);
|
||||
GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
|
||||
GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
|
||||
GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
|
||||
GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
|
||||
GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
|
||||
GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
|
||||
GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
|
||||
GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
|
||||
GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
|
||||
GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
|
||||
GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
|
||||
GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
|
||||
GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
|
||||
GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
|
||||
GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
|
||||
GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
|
||||
GL_APICALL void GL_APIENTRY glUseProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
|
||||
GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr);
|
||||
GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif /* __gl2_h_ */
|
||||
|
File diff suppressed because it is too large
Load Diff
1922
include/GLES3/gl3.h
1922
include/GLES3/gl3.h
File diff suppressed because it is too large
Load Diff
1184
include/GLES3/gl31.h
1184
include/GLES3/gl31.h
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
#ifndef __gl3platform_h_
|
||||
#define __gl3platform_h_
|
||||
|
||||
/* $Revision: 23328 $ on $Date:: 2013-10-02 02:28:28 -0700 #$ */
|
||||
/* $Revision: 18437 $ on $Date:: 2012-07-08 23:31:39 -0700 #$ */
|
||||
|
||||
/*
|
||||
* This document is licensed under the SGI Free Software B License Version
|
||||
|
@@ -1,76 +0,0 @@
|
||||
/*
|
||||
* Copyright 2006, Philippe Houdoin. All rights reserved.
|
||||
* Distributed under the terms of the MIT License.
|
||||
|
||||
* This header defines BGLRenderer, the base class making up
|
||||
* the Haiku GL renderer add-ons (essentially selfcontained C++
|
||||
* shared libraries that do the actual rendering such as
|
||||
* libswpipe.so and libswrast.so)
|
||||
*/
|
||||
#ifndef GLRENDERER_H
|
||||
#define GLRENDERER_H
|
||||
|
||||
|
||||
#include <BeBuild.h>
|
||||
#include <GLView.h>
|
||||
|
||||
|
||||
class BGLDispatcher;
|
||||
class GLRendererRoster;
|
||||
|
||||
typedef unsigned long renderer_id;
|
||||
|
||||
class BGLRenderer
|
||||
{
|
||||
// Private unimplemented copy constructors
|
||||
BGLRenderer(const BGLRenderer &);
|
||||
BGLRenderer & operator=(const BGLRenderer &);
|
||||
|
||||
public:
|
||||
BGLRenderer(BGLView *view, ulong bgl_options,
|
||||
BGLDispatcher *dispatcher);
|
||||
virtual ~BGLRenderer();
|
||||
|
||||
void Acquire();
|
||||
void Release();
|
||||
|
||||
virtual void LockGL();
|
||||
virtual void UnlockGL();
|
||||
|
||||
virtual void SwapBuffers(bool VSync = false);
|
||||
virtual void Draw(BRect updateRect);
|
||||
virtual status_t CopyPixelsOut(BPoint source, BBitmap *dest);
|
||||
virtual status_t CopyPixelsIn(BBitmap *source, BPoint dest);
|
||||
|
||||
virtual void FrameResized(float width, float height);
|
||||
|
||||
virtual void DirectConnected(direct_buffer_info *info);
|
||||
virtual void EnableDirectMode(bool enabled);
|
||||
|
||||
inline int32 ReferenceCount() const { return fRefCount; };
|
||||
inline ulong Options() const { return fOptions; };
|
||||
inline BGLView* GLView() { return fView; };
|
||||
inline BGLDispatcher* GLDispatcher() { return fDispatcher; };
|
||||
|
||||
private:
|
||||
friend class GLRendererRoster;
|
||||
|
||||
virtual status_t _Reserved_Renderer_0(int32, void *);
|
||||
virtual status_t _Reserved_Renderer_1(int32, void *);
|
||||
virtual status_t _Reserved_Renderer_2(int32, void *);
|
||||
virtual status_t _Reserved_Renderer_3(int32, void *);
|
||||
virtual status_t _Reserved_Renderer_4(int32, void *);
|
||||
|
||||
int32 fRefCount; // How much we're still useful
|
||||
BGLView* fView; // Never forget who is the boss!
|
||||
ulong fOptions; // Keep that tune in memory
|
||||
BGLDispatcher* fDispatcher;// Our personal GL API call dispatcher
|
||||
|
||||
GLRendererRoster* fOwningRoster;
|
||||
renderer_id fID;
|
||||
};
|
||||
|
||||
extern "C" _EXPORT BGLRenderer* instantiate_gl_renderer(BGLView *view, ulong options, BGLDispatcher *dispatcher);
|
||||
|
||||
|
||||
#endif // GLRENDERER_H
|
@@ -1,193 +0,0 @@
|
||||
/*
|
||||
* Copyright 2008-2013, Haiku, Inc. All Rights Reserved.
|
||||
* Distributed under the terms of the MIT License.
|
||||
*
|
||||
* This header defines BGLView, the base class making up
|
||||
* the Haiku GL Kit.
|
||||
*
|
||||
*/
|
||||
#ifndef BGLVIEW_H
|
||||
#define BGLVIEW_H
|
||||
|
||||
|
||||
#include <GL/gl.h>
|
||||
|
||||
#define BGL_RGB 0
|
||||
#define BGL_INDEX 1
|
||||
#define BGL_SINGLE 0
|
||||
#define BGL_DOUBLE 2
|
||||
#define BGL_DIRECT 0
|
||||
#define BGL_INDIRECT 4
|
||||
#define BGL_ACCUM 8
|
||||
#define BGL_ALPHA 16
|
||||
#define BGL_DEPTH 32
|
||||
#define BGL_OVERLAY 64
|
||||
#define BGL_UNDERLAY 128
|
||||
#define BGL_STENCIL 512
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
#include <AppKit.h>
|
||||
#include <Bitmap.h>
|
||||
#include <DirectWindow.h>
|
||||
#include <View.h>
|
||||
#include <Window.h>
|
||||
#include <WindowScreen.h>
|
||||
|
||||
|
||||
struct glview_direct_info;
|
||||
class BGLRenderer;
|
||||
class GLRendererRoster;
|
||||
|
||||
class BGLView : public BView {
|
||||
public:
|
||||
BGLView(BRect rect, const char* name,
|
||||
ulong resizingMode, ulong mode,
|
||||
ulong options);
|
||||
virtual ~BGLView();
|
||||
|
||||
void LockGL();
|
||||
void UnlockGL();
|
||||
void SwapBuffers();
|
||||
void SwapBuffers(bool vSync);
|
||||
|
||||
BView* EmbeddedView(); // deprecated, returns NULL
|
||||
void* GetGLProcAddress(const char* procName);
|
||||
|
||||
status_t CopyPixelsOut(BPoint source, BBitmap *dest);
|
||||
status_t CopyPixelsIn(BBitmap *source, BPoint dest);
|
||||
|
||||
// Mesa's GLenum is uint where Be's ones was ulong!
|
||||
virtual void ErrorCallback(unsigned long errorCode);
|
||||
|
||||
virtual void Draw(BRect updateRect);
|
||||
virtual void AttachedToWindow();
|
||||
virtual void AllAttached();
|
||||
virtual void DetachedFromWindow();
|
||||
virtual void AllDetached();
|
||||
|
||||
virtual void FrameResized(float newWidth, float newHeight);
|
||||
virtual status_t Perform(perform_code d, void *arg);
|
||||
|
||||
virtual status_t Archive(BMessage *data, bool deep = true) const;
|
||||
|
||||
virtual void MessageReceived(BMessage *message);
|
||||
virtual void SetResizingMode(uint32 mode);
|
||||
|
||||
virtual void Show();
|
||||
virtual void Hide();
|
||||
|
||||
virtual BHandler* ResolveSpecifier(BMessage *msg, int32 index,
|
||||
BMessage *specifier, int32 form,
|
||||
const char *property);
|
||||
virtual status_t GetSupportedSuites(BMessage *data);
|
||||
|
||||
void DirectConnected(direct_buffer_info *info);
|
||||
void EnableDirectMode(bool enabled);
|
||||
|
||||
void* getGC() { return fGc; } // ???
|
||||
|
||||
virtual void GetPreferredSize(float* width, float* height);
|
||||
|
||||
private:
|
||||
|
||||
virtual void _ReservedGLView1();
|
||||
virtual void _ReservedGLView2();
|
||||
virtual void _ReservedGLView3();
|
||||
virtual void _ReservedGLView4();
|
||||
virtual void _ReservedGLView5();
|
||||
virtual void _ReservedGLView6();
|
||||
virtual void _ReservedGLView7();
|
||||
virtual void _ReservedGLView8();
|
||||
|
||||
BGLView(const BGLView &);
|
||||
BGLView &operator=(const BGLView &);
|
||||
|
||||
void _DitherFront();
|
||||
bool _ConfirmDither();
|
||||
void _Draw(BRect rect);
|
||||
void _CallDirectConnected();
|
||||
|
||||
void* fGc;
|
||||
uint32 fOptions;
|
||||
uint32 fDitherCount;
|
||||
BLocker fDrawLock;
|
||||
BLocker fDisplayLock;
|
||||
glview_direct_info* fClipInfo;
|
||||
|
||||
BGLRenderer* fRenderer;
|
||||
GLRendererRoster* fRoster;
|
||||
|
||||
BBitmap* fDitherMap;
|
||||
BRect fBounds;
|
||||
int16* fErrorBuffer[2];
|
||||
uint64 _reserved[8];
|
||||
|
||||
void _LockDraw();
|
||||
void _UnlockDraw();
|
||||
|
||||
// BeOS compatibility
|
||||
private:
|
||||
BGLView(BRect rect, char* name,
|
||||
ulong resizingMode, ulong mode,
|
||||
ulong options);
|
||||
};
|
||||
|
||||
|
||||
class BGLScreen : public BWindowScreen {
|
||||
public:
|
||||
BGLScreen(char* name,
|
||||
ulong screenMode, ulong options,
|
||||
status_t *error, bool debug=false);
|
||||
~BGLScreen();
|
||||
|
||||
void LockGL();
|
||||
void UnlockGL();
|
||||
void SwapBuffers();
|
||||
// Mesa's GLenum is uint where Be's ones was ulong!
|
||||
virtual void ErrorCallback(unsigned long errorCode);
|
||||
|
||||
virtual void ScreenConnected(bool connected);
|
||||
virtual void FrameResized(float width, float height);
|
||||
virtual status_t Perform(perform_code code, void *arg);
|
||||
|
||||
virtual status_t Archive(BMessage *data, bool deep = true) const;
|
||||
virtual void MessageReceived(BMessage *message);
|
||||
|
||||
virtual void Show();
|
||||
virtual void Hide();
|
||||
|
||||
virtual BHandler* ResolveSpecifier(BMessage *message,
|
||||
int32 index,
|
||||
BMessage *specifier,
|
||||
int32 form,
|
||||
const char *property);
|
||||
virtual status_t GetSupportedSuites(BMessage *data);
|
||||
|
||||
private:
|
||||
|
||||
virtual void _ReservedGLScreen1();
|
||||
virtual void _ReservedGLScreen2();
|
||||
virtual void _ReservedGLScreen3();
|
||||
virtual void _ReservedGLScreen4();
|
||||
virtual void _ReservedGLScreen5();
|
||||
virtual void _ReservedGLScreen6();
|
||||
virtual void _ReservedGLScreen7();
|
||||
virtual void _ReservedGLScreen8();
|
||||
|
||||
BGLScreen(const BGLScreen &);
|
||||
BGLScreen &operator=(const BGLScreen &);
|
||||
|
||||
void* fGc;
|
||||
long fOptions;
|
||||
BLocker fDrawLock;
|
||||
|
||||
int32 fColorSpace;
|
||||
uint32 fScreenMode;
|
||||
|
||||
uint64 _reserved[7];
|
||||
};
|
||||
|
||||
#endif // __cplusplus
|
||||
|
||||
#endif // BGLVIEW_H
|
@@ -1,10 +0,0 @@
|
||||
/*
|
||||
* Master include file for the Haiku OpenGL Kit.
|
||||
*/
|
||||
|
||||
#include <GL/gl.h>
|
||||
#include <GLView.h>
|
||||
|
||||
// Projects needing GL/glu.h and GL/glut.h should now
|
||||
// include these headers independently as glu and glut
|
||||
// are no longe core parts of mesa
|
@@ -1,28 +0,0 @@
|
||||
These headers make up the Haiku Op*nGL kit.
|
||||
|
||||
Headers in this directory preserve some BeOS™ compatibility
|
||||
compatibility, so changes should be mentioned to the Haiku
|
||||
project mailing list.
|
||||
|
||||
http://haiku-os.org
|
||||
|
||||
Normal Haiku Op*enGL layout:
|
||||
|
||||
* headers/os/OpenGLKit.h
|
||||
* headers/os/opengl/GLView.h
|
||||
* headers/os/opengl/GLRenderer.h
|
||||
* headers/os/opengl/GL/gl.h
|
||||
* headers/os/opengl/GL/gl_mangle.h
|
||||
* headers/os/opengl/GL/glext.h
|
||||
* headers/os/opengl/GL/osmesa.h (needed?)
|
||||
|
||||
Extras:
|
||||
|
||||
* headers/os/opengl/GL/glu.h
|
||||
* headers/os/opengl/GL/glut.h
|
||||
|
||||
OpenGL™ is a trademark of SGI. The usage of this trademark
|
||||
in the Haiku GL Kit is not a sign of any certification or
|
||||
endorsement by SGI or its affiliates. Usage is purely to
|
||||
allow legacy compatibility with the BeOS™ and its 3D GL
|
||||
rendering subsystem.
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user