summaryrefslogtreecommitdiff
path: root/src/gallium/include/pipe/p_compiler.h
AgeCommit message (Collapse)Author
2011-03-16android: Fix build with bionic.Chia-I Wu
2011-03-04gallium: Define __func__ on MSVC.José Fonseca
2010-10-11gallium: Define C99 restrict keyword where absent.José Fonseca
2010-09-14gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3)Luca Barbieri
Changes in v3: - Also change trace, which I forgot about Changes in v2: - No longer adds tessellation shaders Currently each shader cap has FS and VS versions. However, we want a version of them for geometry, tessellation control, and tessellation evaluation shaders, and want to be able to easily query a given cap type for a given shader stage. Since having 5 duplicates of each shader cap is unmanageable, add a new get_shader_param function that takes both a shader cap from a new enum and a shader stage. Drivers with non-unified shaders will first switch on the shader and, within each case, switch on the cap. Drivers with unified shaders instead first check whether the shader is supported, and then switch on the cap. MAX_CONST_BUFFERS is now per-stage. The geometry shader cap is removed in favor of checking whether the limit of geometry shader instructions is greater than 0, which is also used for tessellation shaders. WARNING: all drivers changed and compiled but only nvfx tested
2010-08-21p_compiler: add replacement va_copyLuca Barbieri
This might technically not always be correct, because va_copy might be a function, or a system might not have va_copy, and not work with assignment. Hopefully this is never the case. Without configure tests, it doesn't seem possible to do better.
2010-08-11gallium: add ALWAYS_INLINELuca Barbieri
Used when we want to be sure the compiler inlines a large function into an inner loop.
2010-07-14gallium: Ensure prototypes are wrapped in extern "C".José Fonseca
Fixes MSVC build failure due to inconsistent _ReadWriteBarrier prototype.
2010-07-14gallium: Add a macro for memory barriers.José Fonseca
2010-05-31Define PUBLIC to dllexport on MSVC.Chia-I Wu
Define PUBLIC to __declspec(dllexport) when _MVC_VER is defined.
2010-04-18p_compiler: add likely/unlikely macrosLuca Barbieri
Defined like the Linux kernel. A explanatory comment is included.
2010-04-07util: Remove the half typedef from p_compiler.h.José Fonseca
Unnecessary, and doesn't even guarantee size.
2010-04-01gallium: Integrate util_half with scons.Michal Krol
2010-03-09drop stray XFree86Server, XGLServerGeorge Sapountzis
2010-03-03Remove support for GCC older than 3.3.0Ian Romanick
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-02-04gallium: Add a define for deprecated function attribute.José Fonseca
2010-02-02gallium: Move some compiler portability stuff into p_compiler.hJosé Fonseca
2010-02-01gallium: Remove unnecessary includes. Add others to compensate.José Fonseca
2010-01-26Check for __USE_MISC for defining uint & ushortAlan Hourihane
2010-01-19Sun compilers now support some gcc __attribute__ valuesAlan Coopersmith
Sun cc 5.9 and later (__SUNPRO_C >= 0x590) support __attribute__ calls for aligned, always_inline, noinline, pure, const, and malloc. This commit includes updates to files that were regenerated by gl_XML.py after adding the __SUNPRO_C checks to it Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Signed-off-by: Brian Paul <brianp@vmware.com>
2010-01-17gallium: Support swig "compiler" in p_compiler.hJakob Bornecrantz
2010-01-12gallium: Rename ALIGN_STACK -> PIPE_ALIGN_STACK for consistency.José Fonseca
2010-01-12gallium: Simplify PIPE_ALIGN_VAR.José Fonseca
gcc allows pre-fix variable attributes. Suggested by Ian Romanick.
2010-01-12gallium: Generalize the alignment macros to other compilers and any alignment.José Fonseca
2010-01-11gallium: Add PUBLIC macro for function visibility.Chia-I Wu
As the default build has -fvisibility=hidden, add a macro to control the visibility. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-10gallium: Remove dead code.José Fonseca
2010-01-10gallium: Provide alternative stdint.h and stdbool.h C99 headers, instead of ↵José Fonseca
ad-hoc definitions. Everybody is using the C99's integer types. Everybody except Microsoft, which in turns means everybody is including their own definitions of C99 integer types for MSVC, causing duplicate definitions when linking two projects. This is the case of building Gallium and LLVM with MSVC. Shipping alternative stdint.h and stdbool.h headers for MSVC allows us to share a single definition. It also removes clutter from the Gallium headers.
2009-12-04gallium: Disable force_align_arg_pointer attribute on x86_64.José Fonseca
Apparently not only unnecessary but also causes gcc to complain.
2009-10-14gallium: New ALIGN_STACK macro to tell gcc to align stack pointer.José Fonseca
2009-09-09gallium: Added HaikuOS platformaljen
2009-03-25Add #ifdefs needed to compile Gallium on Solaris with gcc or Sun ccAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-01-08gallium: Replace uint64 by standard uint64_t.José Fonseca
uint64 is not (so?) standard, and often redefined by third parties, causing name clashes.
2008-12-30gallium: Don't redefine INLINE.José Fonseca
INLINE is commonly used in third-party headers.
2008-09-26cell: align instruction buffers to 8-byte, not 32-byte boundaryBrian Paul
2008-09-19gallium: added ALIGN32_ATTRIBBrian Paul
2008-08-12gallium: Allow compilation inside X.José Fonseca
2008-07-01gallium: Use the inline keyword on C++.José Fonseca
2008-06-24gallium: Drop deprecated __MSC__ macro.José Fonseca
2008-06-05egl: assorted fixes for WindowsJonathan White
Note that int32_t is typedef'd both in p_compiler.h and eglplatform.h
2008-06-02gallium: Replace XSTDCALL by PIPE_CDECL.José Fonseca
2008-05-30gallium: Provide the INT64_C/UINT64_C macros.José Fonseca
"long long" types and 1234LL constants are not supported by eVC.
2008-05-28Merge branch 'gallium-vertex-linear' into gallium-0.1Jakob Bornecrantz
Conflicts: src/gallium/auxiliary/draw/draw_pt_varray.c
2008-05-28gallium: Windows CE portability fixes.José Fonseca
2008-05-23gallium: define PIPE_CDECL calling convention, which really is cdecl everywhereKeith Whitwell
2008-04-25gallium: New configuration header.José Fonseca
To abstract all those weird #ifdef (__???__) checks. It should typically be the first included header.
2008-02-23Bring in several forgotten MSVC fixes.José Fonseca
2008-02-23gallium: Define intptr_t for Windows platform.Michal Krol
2008-02-15Code reorganization: move files into their places.José Fonseca
This is in a separate commit to ensure renames are properly preserved.