Age | Commit message (Collapse) | Author |
|
Borrowed from Mesa, slightly changed for more type safety.
|
|
This reverts commit eb926ddf9eee1095c7fc12013f0b8375bbaeca6f.
|
|
The util_format_layout name was unfortunate and there
are as been a lot of confusion due to this. Hopefully
this will shed some light on what it was meant for.
Bottom line is: do not rely on these values unless
you're automatically code generating pixel
packing/unpacking routines.
Suggestions for better names than util_format_layout
are welcome!
|
|
We really just need to know whether the format is compressed or not.
For more detailed information format colorspace should suffice.
|
|
|
|
Make sure the format descriptor table can be indexed directly.
|
|
|
|
Depricate pf_type(), pf_size_*(), pf_layout() and pf_exp2().
Map depricated PIPE_FORMAT_TYPE to new UTIL_FORMAT_ values:
UNKNOWN = TYPE_VOID
UNORM = TYPE_UNSIGNED + LAYOUT_ARITH
SNORM = TYPE_SIGNED + LAYOUT_ARITH
FIXED = TYPE_FIXED
FLOAT = TYPE_FLOAT
USCALED = TYPE_UNSIGNED + LAYOUT_ARRAY
SSCALED = TYPE_SIGNED + LAYOUT_ARRAY
SRGB = TYPE_COLORSPACE_SRGB
|
|
use pointer to union instead of void pointer.
gcc complained a lot, depending what the pointer originally actually was.
Looks like it's in fact maybe legal to cast for instance uint pointers to
union pointers as long as union contains a uint type, hence use this with some
callers, other just use union util_color in the first place.
|
|
|
|
(cherry picked from commit 36e2074b63e3e5bc489eb74cad0cd97eafcedb40)
|
|
Conflicts:
src/gallium/state_trackers/xorg/xorg_exa.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Conflicts:
src/gallium/drivers/svga/svga_screen_texture.c
src/gallium/state_trackers/xorg/xorg_composite.c
src/gallium/state_trackers/xorg/xorg_exa.c
src/gallium/state_trackers/xorg/xorg_renderer.c
src/gallium/state_trackers/xorg/xorg_xv.c
src/mesa/main/texgetimage.c
src/mesa/main/version.h
|
|
This patch removes nblocksx, nblocksy arrays from pipe_texture (can be
recalculated if needed). Furthermore, pipe_format_block struct is gone
completely (again, contains just derived state).
nblocksx, nblocksy, block are also removed from pipe_transfer, together with
the format enum (can be obtained from the texture associated with the transfer).
|
|
Uf. How embarrassing.
|
|
Sorry for not pushing this before, it got lost in stashes.
|
|
|
|
Conflicts:
src/gallium/drivers/r300/r300_texture.c
src/gallium/state_trackers/xorg/xorg_exa.c
src/mesa/state_tracker/st_cb_texture.c
|
|
width/height/depth arrays
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
It's not sampling based so its results are biased towards functions called
many times.
|
|
|
|
|
|
|
|
It's really just another define. No need for its own header.
|
|
|
|
|
|
|
|
As we are compiling with -D_BSD_SOURCE, sigjmp_buf and siglongjmp
should be replaced by the non-sig functions (see man 3 setjmp).
Tested on linux/cell.
|
|
Uf. Lots of files touched. Would people with working vega, xorg, dri1, etc.
please make sure you are not broken, and fix yourself up if you are.
There were only two or three places where the code did not have painful
fallbacks, so I would advise st maintainers to find less painful workarounds,
or consider overhauling util_surface_copy and util_surface_fill.
Per ymanton, darktama, and Dr_Jakob's suggestions, clear has been left as-is.
I will not add PIPE_CAP_BLITTER unless it is deemed necessary.
|
|
To be consistent with the rest.
|
|
Avoids link-time clashes with Mesa's internal hash table.
|
|
|
|
Fixes a segfault and better code. Unfortunately using an arbitrary
register ("=r") causes the gcc to abort when the code is optimized saying
it can't satisfy the constraint. Setting seems to do the trick.
|
|
When the source surface is pointing at a 2d texture with only one
mipmap level, use that directly rather than creating a temporary.
Probably want to cover more cases, but this is a start.
|