URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=db6d23cfd22fbe41e7e7de558c987c065e5f3e15
Author: Ian Romanick <[email protected]>
Date: Thu Sep 1 12:06:09 2016 -0700
i965: Enable ARB_gpu_shader_int64 on Gen8+
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=fc16bf125f9428b57526a216e5097e31c94b7623
Author: Ian Romanick <[email protected]>
Date: Mon Oct 24 20:24:56 2016 -0700
i965: Split SIMD16 CMP of Q and UQ instructions
This is basically the same as happens for doubles.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=51807c6493ac6edf76951cfe648235a92486778d
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 18:51:26 2016 -0700
i965: Enable 64-bit integer support for almost all unary and binary
operations
Integer comparison functions (e.g., nir_op_ilt) are handled in the next
commit.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=821d7cece8e79cae788e96114159f148e23f2ea9
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 18:50:49 2016 -0700
i965: Enable uploading 64-bit integer uniforms
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e0579c50173514688078dd7f350f71d9ac4d06e7
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 18:49:20 2016 -0700
i965: Add 64-bit integer support for conversions and bitcasts
v2 (idr): Make the "from" type in a cast unsized. This reduces the
number of required cast operations at the expensive slightly more
complex code. However, this will be a dramatic improvement when other
sized integer types are added. Suggested by Connor.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f2fa5105946a014f1013b288db37d17b2c19930a
Author: Ian Romanick <[email protected]>
Date: Thu Sep 1 12:00:10 2016 -0700
i965: Enable emitting Q and UQ instructions in the fs backend
v2: Fixup assertion in brw_reg_type_to_hw_type to allow
BRW_REGISTER_TYPE_{UQ,Q} on Gen8+.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=409e0b2d48fea4afa9ddfcd171ee33dbd3ace2f1
Author: Ian Romanick <[email protected]>
Date: Thu Sep 1 11:48:26 2016 -0700
i965: Add support for constant evaluation on Q and UQ types
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6fcede60fba83efa39a989764db9361a28e8e4c
Author: Ian Romanick <[email protected]>
Date: Thu Sep 1 11:45:22 2016 -0700
i965: Return Q and UQ types for int64 and uint64
It seems like maybe this should return a different type based on Gen. Q
and UQ only exist on Gen8+, but, based on the old comment, I believe
previous Gens can generate 64-bit moves.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=c95380c4044237d73fb537511667c3c8f658fcee
Author: Ian Romanick <[email protected]>
Date: Sun Oct 23 23:47:14 2016 -0700
i965: Really don't emit Q or UQ moves on Gen < 8
It's much easier to do this in the generator rather than while coming
out of NIR. brw_type_for_nir_type doesn't know the Gen, so we'd have to
add a bunch of plumbing. The alternate fix is to not emit int64 moves
for doubles in the first place... but that seems even more difficult.
This change won't catch non-MOV instructions that try to use 64-bit
integer types on Gen < 8. This may convert certain kinds of bugs in to
different kinds of bugs that are more difficult to detect (since the
assertions in the function won't catch them).
NOTE: I don't think anything can emit mixed-type 64-bit moves until the
same platform supports both ARB_gpu_shader_fp64 and
ARB_gpu_shader_int64. When we enable int64 on Gen < 8, we can solve
this problem other ways.
This prevents regressions on HSW in the next patch.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=30164d501dd9d9e8d13ada1f030b36f7306bf7a7
Author: Ian Romanick <[email protected]>
Date: Wed Sep 7 14:43:30 2016 -0700
nir: Add support for 64-bit integer types to split_var_copies_block
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Connor Abbott <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3c9b35372b955a69fd21dc4f83fac32ed2b7b53f
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 18:46:55 2016 -0700
nir: Enable 64-bit integer support for almost all unary and binary
operations
v2: Don't up-convert the shift count parameter if shift instructions.
Suggested by Connor. Add type_is_singed() function. This will make
adding 8- and 16-bit types easier.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Connor Abbott <[email protected]>
Cc: Jason Ekstrand <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=fda33e09d8eb2a92f294a0433addfcf3527c1544
Author: Ian Romanick <[email protected]>
Date: Thu Oct 27 03:02:58 2016 -0700
nir: Shift count for shift opcodes is always 32-bits
Previously both sources were unsized. This caused problems when the
thing being shifted was 64-bit but the shift count was 32-bit. The
expectation in NIR is that all unsized sources (and destination) will
ultimately have the same size.
The changes in nir_opt_algebraic.py are to prevent errors like:
Failed to parse transformation:
03:12:25 (('extract_i8', 'a', 'b'), ('ishr', ('ishl', 'a', ('imul',
('isub', 3, 'b'), 8)), 24), 'options->lower_extract_byte')
03:12:25 Traceback (most recent call last):
03:12:25 File
"/home/jenkins/workspace/Leeroy_2/repos/mesa/src/compiler/nir/nir_algebraic.py",
line 610, in __init__
03:12:25 xform = SearchAndReplace(xform)
03:12:25 File
"/home/jenkins/workspace/Leeroy_2/repos/mesa/src/compiler/nir/nir_algebraic.py",
line 495, in __init__
03:12:25 BitSizeValidator(varset).validate(self.search, self.replace)
03:12:25 File
"/home/jenkins/workspace/Leeroy_2/repos/mesa/src/compiler/nir/nir_algebraic.py",
line 311, in validate
03:12:25 validate_dst_class = self._validate_bit_class_up(replace)
03:12:25 File
"/home/jenkins/workspace/Leeroy_2/repos/mesa/src/compiler/nir/nir_algebraic.py",
line 414, in _validate_bit_class_up
03:12:25 src_class = self._validate_bit_class_up(val.sources[i])
03:12:25 File
"/home/jenkins/workspace/Leeroy_2/repos/mesa/src/compiler/nir/nir_algebraic.py",
line 420, in _validate_bit_class_up
03:12:25 assert src_class == src_type_bits
03:12:25 AssertionError
Signed-off-by: Ian Romanick <[email protected]>
Suggested-by: Connor Abbott <[email protected]>
Reviewed-by: Connor Abbott <[email protected]>
Cc: Jason Ekstrand <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8ad74a2745162f8f5dcf6d0d2ec1e17fedb4b0d2
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 08:09:53 2016 -0700
nir: Lower packing and unpacking of 64-bit integer types
This change makes me wonder whether double packing should be
reimplemented as int64BitsToDouble(packInt2x32(v)). I'm a little on the
fence since not all platforms that support fp64 natively support int64.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Connor Abbott <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3460d05a718f3859a77fe100f3972095d194be26
Author: Ian Romanick <[email protected]>
Date: Thu Sep 1 15:21:04 2016 -0700
nir: Add 64-bit integer support for conversions and bitcasts
v2 (idr): "cut them down later" => Remove ir_unop_b2u64 and
ir_unop_u642b. Handle these with extra i2u or u2i casts just like
uint(bool) and bool(uint) conversion is done.
v3 (idr): Make the "from" type in a cast unsized. This reduces the
number of required cast operations at the expensive slightly more
complex code. However, this will be a dramatic improvement when other
sized integer types are added. Suggested by Connor.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Connor Abbott <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3ca0029a0dc7b2ed2c61de72ef16e7ad1831c101
Author: Ian Romanick <[email protected]>
Date: Thu Sep 1 14:17:49 2016 -0700
nir: Add 64-bit integer constant support
v2: Rebase on 19a541f (nir: Get rid of nir_constant_data)
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Connor Abbott <[email protected]> [v1]
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=48e122244b05415204ef28107286d099f17da56b
Author: Ian Romanick <[email protected]>
Date: Thu Sep 1 14:11:32 2016 -0700
nir: Add GLSL_TYPE_INT64 and GLSL_TYPE_UINT64 to glsl_get_bit_size
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Connor Abbott <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=81952814a37ecdbf112454eb7cb0cec090887a8a
Author: Ian Romanick <[email protected]>
Date: Wed Oct 12 15:31:22 2016 -0700
glsl: Optimize redundant pack(unpack()) and unpack(pack()) combinations
The lowering passes 64-bit integer operations will generate a lot of
these.
v2: Modify the HANDLE_PACK_UNPACK_INVERSE so that the breaks apply to
the switch instead of the 'do { } while(true)' loop.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7122d851aa7d4bae028df2ade1e91ba2347e8bfe
Author: Ian Romanick <[email protected]>
Date: Tue Oct 18 16:47:14 2016 -0700
glsl: Add a lowering pass for 64-bit integer modulus
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=695b04f7eb24bff108e8d85c476adb5cf9de6f2d
Author: Ian Romanick <[email protected]>
Date: Tue Oct 18 16:46:35 2016 -0700
glsl: Add "built-in" functions to do 64%64 => 64 modulus
These functions are directly available in shaders. A #define is added
to detect the presence. This allows these functions to be tested using
piglit regardless of whether the driver uses them for lowering. The
GLSL spec says that functions and macros beginning with __ are reserved
for use by the implementation... hey, that's us!
v2: Use function inlining.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=82c31f3eb957a0089773db47a4aca8bf3eb4a29e
Author: Ian Romanick <[email protected]>
Date: Mon Oct 17 17:55:18 2016 -0700
glsl: Add a lowering pass for 64-bit integer division
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=012f2995c307a83212a88ff18e13bf7be006cd77
Author: Ian Romanick <[email protected]>
Date: Mon Oct 17 17:54:40 2016 -0700
glsl: Add "built-in" functions to do 64/64 => 64 division
These functions are directly available in shaders. A #define is added
to detect the presence. This allows these functions to be tested using
piglit regardless of whether the driver uses them for lowering. The
GLSL spec says that functions and macros beginning with __ are reserved
for use by the implementation... hey, that's us!
v2: Use function inlining.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=50d52df278c547ffd53505a3ebf98f13cba5bd56
Author: Ian Romanick <[email protected]>
Date: Mon Oct 17 13:55:54 2016 -0700
glsl: Add a lowering pass for 64-bit integer sign()
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6b03b345eb64e15e577bc8b2cf04b314a4c70537
Author: Ian Romanick <[email protected]>
Date: Mon Oct 17 13:55:27 2016 -0700
glsl: Add "built-in" function for 64-bit integer sign()
These functions are directly available in shaders. A #define is added
to detect the presence. This allows these functions to be tested using
piglit regardless of whether the driver uses them for lowering. The
GLSL spec says that functions and macros beginning with __ are reserved
for use by the implementation... hey, that's us!
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6c3af043633997633d03e5409939263162076e81
Author: Ian Romanick <[email protected]>
Date: Fri Oct 14 18:17:16 2016 -0700
glsl: Add a lowering pass for 64-bit integer multiplication
v2: Rename lower_64bit.cpp and lower_64bit_test.cpp to lower_int64.
Suggested by Matt.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=330fc2413c61f0bd9c7bb9f3a0ecd91b09de267a
Author: Ian Romanick <[email protected]>
Date: Fri Oct 14 18:11:51 2016 -0700
glsl: Add "built-in" functions to do 64x64 => 64 multiplication
These functions are directly available in shaders. A #define is added
to detect the presence. This allows these functions to be tested using
piglit regardless of whether the driver uses them for lowering. The
GLSL spec says that functions and macros beginning with __ are reserved
for use by the implementation... hey, that's us!
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=aa38bf1e593eba3e65c4e10154410158d6d263c5
Author: Ian Romanick <[email protected]>
Date: Fri Oct 14 11:02:18 2016 -0700
glsl: Move builtin_function related prototypes to a separate file
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8358e58f2534f7e60c452bed2adb628d75b055c3
Author: Ian Romanick <[email protected]>
Date: Thu Sep 15 11:21:28 2016 -0700
glsl/standalone: Enable ARB_gpu_shader_int64
v2: Add missing break in GLSL_TYPE_INT64 case. Notice by Matt.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8dfea5348ca8b537d371876372ca83e1dfccaaa9
Author: Dave Airlie <[email protected]>
Date: Mon Jun 20 14:55:35 2016 +1000
i965: Avoid int64 warnings.
Just add operations to the switch statement here.
v2 (idr): "cut them down later" => Remove ir_unop_b2u64 and
ir_unop_u642b. Handle these with extra i2u or u2i casts just like
uint(bool) and bool(uint) conversion is done.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=c101cee2babda71607a9b3ab4929e7fb3b779be7
Author: Dave Airlie <[email protected]>
Date: Mon Jun 20 14:54:28 2016 +1000
i965: Avoid int64 induced warnings
Just add types into unsupported or double equivalent spots.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a53f315ad8de29f0057359722dfc24f31b6b7998
Author: Dave Airlie <[email protected]>
Date: Fri Jun 10 16:18:51 2016 +1000
mesa/program: Add unused ir operations.
v2 (idr): "cut them down later" => Remove ir_unop_b2u64 and
ir_unop_u642b. Handle these with extra i2u or u2i casts just like
uint(bool) and bool(uint) conversion is done.
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f82ced5af3a65d4eccc2910c99ca3af3776c40d1
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 18:35:38 2016 -0700
glsl: Allow GLSL_TYPE_INT64 for ir_unop_abs and ir_unop_sign
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8e7e1ae0365ddc7edb0d4d98250ab46728e6c14a
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 13:17:48 2016 -0700
glsl: Print GLSL_TYPE_UINT64 and GLSL_TYPE_INT64 values
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0d14fec345025567546979160217bb5278836132
Author: Ian Romanick <[email protected]>
Date: Fri Sep 2 08:54:48 2016 -0700
glsl: Add interaction between ARB_gpu_shader_int64 and ARB_shader_clock
If ARB_gpu_shader_int64 is supported, ARB_shader_clock also adds
clockARB() that returns a uint64_t. Rather than add new opcodes and
intrinsics for this, just wrap the existing intrinsic with a
packUint2x32.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bfc4080d38090e48253cc89ee09afbb602997114
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 10:11:53 2016 +1000
glsl: Add 64-bit integer functions
These are all the allowed 64-bit functions from ARB_gpu_shader_int64
spec.
v2: restrict int64/double functions better.
v3 (idr): Delete spurious blank lines. Suggested by Matt.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=050f38ef0bb3f5ddb11e1c4fac08039e74d16f34
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 10:11:16 2016 +1000
glsl/varying_packing: Add 64-bit integer support
As for the double code, but using the 64-bit integer conversions.
v2 (idr): Remove some spurious u2i() and i2u() operations when packing
and unpacking, respectively, int64_t varyings.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]> [v1]
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=923aebdd464e0463db28c1824b0bc12a538937a5
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 10:10:26 2016 +1000
glsl/ast: Add 64-bit integer support in some places.
Just add support in two more places in ast parsing.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9ba9a7f854dd702364d0aaa02cb7fbf44aea5888
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 10:08:50 2016 +1000
glsl: Add 64-bit integer support to some operations.
This adds 64-bit integer support to some AST and IR operations where
it is needed.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=25c7a61b28d50a001ed77ca6aafd53220d679fe2
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 10:01:40 2016 +1000
glsl/ir_builder: Add support for some 64-bit bitcasts.
We need builder support to implement some of the builtins.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=78cc44280e3faeded8eea7face614e13d28481f0
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 10:01:00 2016 +1000
glsl/ast: Add 64-bit integer support to conversion functions
This adds support to call the new operations on conversions.
v2 (idr): Delete an unnecessary break-statement. Noticed by Matt. Add
a missing blank line. Noticed by Ian.
v3 (idr): "cut them down later" => Remove ir_unop_b2u64 and
ir_unop_u642b. Handle these with extra i2u or u2i casts just like
uint(bool) and bool(uint) conversion is done.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]> [v1]
Reviewed-by: Matt Turner <[email protected]> [v2]
Reviewed-by: Nicolai Hähnle <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=85faf5082f06ed5828c6d97bb11dd2292ad0f86a
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 09:58:40 2016 +1000
glsl: Add 64-bit integer support for constant expressions
This just adds the new operations and add 64-bit integer support to all
the existing cases where it is needed.
v2: fix some issues found in testing.
v2.1: add unreachable (Ian), add missing int/uint pack/unpack (Dave).
v3 (idr): Rebase on top of idr's series to generate
ir_expression_operation_constant.h. In addition, this version:
Adds missing support for ir_unop_bit_not, ir_binop_all_equal,
ir_binop_any_nequal, ir_binop_vector_extract,
ir_triop_vector_insert, and ir_quadop_vector.
Removes support for uint64_t from ir_unop_abs and ir_unop_sign.
v4 (idr): "cut them down later" => Remove ir_unop_b2u64 and
ir_unop_u642b. Handle these with extra i2u or u2i casts just like
uint(bool) and bool(uint) conversion is done.
Signed-off-by: Dave Airlie <[email protected]>
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Ian Romanick <[email protected]> [v2]
Reviewed-by: Matt Turner <[email protected]> [v3]
Reviewed-by: Nicolai Hähnle <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a68b6ee0630552c4bae685711940d5c0a5ab10fd
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 09:52:52 2016 +1000
glsl/ir: Add support for 64-bit integer conversions.
This adds all the conversions in the world, I'm not 100% sure of all of
these are needed, but add all of them and we can cut them down later.
v2: fix issue with packing output types.
v3 (idr): Rebase on top of idr's series to generate
ir_expression_operation_constant.h. Fix transposed ir_validate
assertions for ir_unop_u642i64 and ir_unop_i642u64. Add missing
automatic type setup for ir_unop_u642i64 and ir_unop_i642u64.
v4 (idr): "cut them down later" => Remove ir_unop_b2u64 and
ir_unop_u642b. Handle these with extra i2u or u2i casts just like
uint(bool) and bool(uint) conversion is done.
Signed-off-by: Dave Airlie <[email protected]>
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Ian Romanick <[email protected]> [v2]
Reviewed-by: Matt Turner <[email protected]> [v3]
Reviewed-by: Nicolai Hähnle <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7dd63c10c300cccb3810643fa73ca2c94733706a
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 09:50:54 2016 +1000
glsl: Add 64-bit integer support to uniform initialiser code
Just add support to the double case, same code should work.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8df5287c232657c5d011609893585ba23aecb701
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 09:50:03 2016 +1000
glsl/varyings: Add 64-bit integer support.
This adds 64-bit ints to the link_varyings 64-bit support.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bbce1c538dc0cb8bf3769510283d11847dc07540
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 09:39:48 2016 +1000
glsl/ast/ir: Add 64-bit integer constant support
This adds support for 64-bit integer constants to the parser,
ast and ir.
v2: fix a few issues found in testing.
v3: Add missing ir_constant copy contructor support.
v4: Use PRIu64 and PRId64 in printfs in glsl_parser_extras.cpp.
Suggested by Nicolai. Rebase on Marek's linalloc changes.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]> [v2]
Reviewed-by: Matt Turner <[email protected]> [v3]
Reviewed-by: Nicolai Hähnle <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=249007d13cf10cdc1359a15939b50f947f1cae6a
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 09:20:19 2016 +1000
mesa: Add support for 64-bit integer uniforms
This hooks up the API to the internals for 64-bit integer uniforms.
v2: update to use non-strict aliased alternatives
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8ce53d4a2f3f44b8fa00a6a04ec0816f38d788db
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 06:38:57 2016 +1000
glsl: Add basic ARB_gpu_shader_int64 types
This adds the builtins and the lexer support.
To avoid too many warnings, it adds basic support to the type in a few
other places in mesa, mostly in the trivial places.
It also adds a query to be used later for if a type is an integer 32 or 64.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e90830bb8eb6b143551152916ad9eafbee7731b5
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 06:35:30 2016 +1000
glsl: Add ARB_gpu_shader_int64 boilerplate.
This just adds the basic boilerplate support.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=839ce21143df5f80bc9bc39bca92f64e721bd540
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 06:34:17 2016 +1000
mesa: Add ARB_gpu_shader_int64 extension bits
This just adds the usual boilerplate in mesa core.
Signed-off-by: Dave Airlie <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=150f2fa78999ff20a9e21e58b72ae31b7cd845b8
Author: Dave Airlie <[email protected]>
Date: Thu Jun 9 06:23:13 2016 +1000
mapi: Add support for ARB_gpu_shader_int64.
Just add the boilerplate xml code.
v2 (idr): Update dispatch_sanity. Only add extension functions in core
profile.
v3 (idr): Remove comment line from gl_API.xml. Suggested by Matt.
Signed-off-by: Dave Airlie <[email protected]>
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Ian Romanick <[email protected]> [v1]
Reviewed-by: Matt Turner <[email protected]>
_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit