Displaying 20 results from an estimated 25 matches for "type_none".
2016 Sep 27
2
[PATCH] nv50/ir: constant fold OP_SPLIT
...nv50_ir_peephole.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
@@ -920,6 +920,29 @@ ConstantFolding::opnd(Instruction *i, ImmediateValue &imm0, int s)
Instruction *newi = i;
switch (i->op) {
+ case OP_SPLIT: {
+ uint16_t shift = 0;
+ DataType type = TYPE_NONE;
+ bld.setPosition(i, false);
+ if (i->sType == TYPE_U64 || i->sType == TYPE_S64) {
+ shift = 32;
+ type = (i->sType == TYPE_U64) ? TYPE_U32 : TYPE_S32;
+ }
+ if (i->sType == TYPE_U32 || i->sType == TYPE_S32) {
+ shift = 16;
+ type...
2016 Sep 30
2
[PATCH] nv50/ir: constant fold OP_SPLIT
...nv50_ir_peephole.cpp
>> @@ -920,6 +920,29 @@ ConstantFolding::opnd(Instruction *i, ImmediateValue &imm0, int s)
>> Instruction *newi = i;
>>
>> switch (i->op) {
>> + case OP_SPLIT: {
>> + uint16_t shift = 0;
>> + DataType type = TYPE_NONE;
>> + bld.setPosition(i, false);
>> + if (i->sType == TYPE_U64 || i->sType == TYPE_S64) {
>> + shift = 32;
>> + type = (i->sType == TYPE_U64) ? TYPE_U32 : TYPE_S32;
>> + }
>> + if (i->sType == TYPE_U32 || i->sTyp...
2017 Dec 20
2
[PATCH] gm107/ir: use lane 0 for manual textureGrad handling
...c)
crd[c] = bld.getScratch();
+ arr = bld.getScratch();
+ shadow = bld.getScratch();
tmp = bld.getScratch();
for (l = 0; l < 4; ++l) {
Value *src[3], *val;
- // mov coordinates from lane l to all lanes
+ Value *lane = bld.mkImm(l);
bld.mkOp(OP_QUADON, TYPE_NONE, NULL);
+ // Make sure lane 0 has the appropriate array/depth compare values
+ if (l != 0) {
+ if (array)
+ bld.mkOp3(OP_SHFL, TYPE_F32, arr, i->getSrc(0), lane, quad);
+ if (i->tex.target.isShadow())
+ bld.mkOp3(OP_SHFL, TYPE_F32, shadow, i->...
2016 Sep 30
2
[PATCH v2] nv50/ir: constant fold OP_SPLIT
...ue &imm0, int s)
Instruction *newi = i;
switch (i->op) {
+ case OP_SPLIT: {
+ uint8_t size = typeSizeof(i->dType);
+ DataType type = typeOfSize(size / 2, isFloatType(i->dType),
+ isSignedType(i->dType));
+ if (likely(type != TYPE_NONE)) {
+ uint64_t val = imm0.reg.data.u64;
+ uint16_t shift = size * 8;
+ bld.setPosition(i, false);
+ for (int8_t d = 0; i->defExists(d); ++d) {
+ bld.mkMov(i->getDef(d), bld.mkImm(val & ((1 << shift) - 1)), type);
+ val >>=...
2016 May 24
2
[PATCH] Add Functions to Create Ambisonic Multistream Encoder
...respondence not be explicit I will remove the
> > explicit assignments.
>
> I'd rather have them be different, since they're not really the same
> thing. The idea is that we may have more than one family map to the same
> type (e.g. currently both families 0 and 255 map to TYPE_NONE).
>
> One last thing I just noticed, please don't rely on
> ENABLE_EXPERIMENTAL_AMBISONICS actually being defined to zero when your
> patch is disabled. Some people don't use the autotools build (e.g. they
> use the plain Makefile or Visual Studio, or custom scripts), so your...
2016 Sep 28
0
[PATCH] nv50/ir: constant fold OP_SPLIT
...llium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
> @@ -920,6 +920,29 @@ ConstantFolding::opnd(Instruction *i, ImmediateValue &imm0, int s)
> Instruction *newi = i;
>
> switch (i->op) {
> + case OP_SPLIT: {
> + uint16_t shift = 0;
> + DataType type = TYPE_NONE;
> + bld.setPosition(i, false);
> + if (i->sType == TYPE_U64 || i->sType == TYPE_S64) {
> + shift = 32;
> + type = (i->sType == TYPE_U64) ? TYPE_U32 : TYPE_S32;
> + }
> + if (i->sType == TYPE_U32 || i->sType == TYPE_S32) {
> +...
2016 Sep 30
0
[PATCH] nv50/ir: constant fold OP_SPLIT
...,6 +920,29 @@ ConstantFolding::opnd(Instruction *i, ImmediateValue
>>> &imm0, int s)
>>> Instruction *newi = i;
>>>
>>> switch (i->op) {
>>> + case OP_SPLIT: {
>>> + uint16_t shift = 0;
>>> + DataType type = TYPE_NONE;
>>> + bld.setPosition(i, false);
>>> + if (i->sType == TYPE_U64 || i->sType == TYPE_S64) {
>>> + shift = 32;
>>> + type = (i->sType == TYPE_U64) ? TYPE_U32 : TYPE_S32;
>>> + }
>>> + if (i->sType =...
2016 May 25
1
[PATCH] Add Functions to Create Ambisonic Multistream Encoder
...> > > explicit assignments.
> >
> > I'd rather have them be different, since they're not really the same
> > thing. The idea is that we may have more than one family map to the
> same
> > type (e.g. currently both families 0 and 255 map to TYPE_NONE).
> >
> > One last thing I just noticed, please don't rely on
> > ENABLE_EXPERIMENTAL_AMBISONICS actually being defined to zero when
> your
> > patch is disabled. Some people don't use the autotools build (e.g.
> they
> > use the plain Mak...
2017 Dec 20
0
[PATCH] gm107/ir: use lane 0 for manual textureGrad handling
...arr = bld.getScratch();
> + shadow = bld.getScratch();
> tmp = bld.getScratch();
>
> for (l = 0; l < 4; ++l) {
> Value *src[3], *val;
> - // mov coordinates from lane l to all lanes
> + Value *lane = bld.mkImm(l);
> bld.mkOp(OP_QUADON, TYPE_NONE, NULL);
> + // Make sure lane 0 has the appropriate array/depth compare values
> + if (l != 0) {
> + if (array)
> + bld.mkOp3(OP_SHFL, TYPE_F32, arr, i->getSrc(0), lane, quad);
> + if (i->tex.target.isShadow())
> + bld.mkOp3(OP...
2016 Mar 17
4
[PATCH mesa v2 1/2] nouveau: codegen: Use FILE_MEMORY_BUFFER for buffers
...MORY_BUFFER: return 0xffffffff;
case FILE_MEMORY_GLOBAL: return 0xffffffff;
case FILE_MEMORY_SHARED: return 16 << 10;
case FILE_MEMORY_LOCAL: return 48 << 10;
@@ -406,7 +407,8 @@ TargetNV50::isAccessSupported(DataFile file, DataType ty) const
if (ty == TYPE_B96 || ty == TYPE_NONE)
return false;
if (typeSizeof(ty) > 4)
- return (file == FILE_MEMORY_LOCAL) || (file == FILE_MEMORY_GLOBAL);
+ return (file == FILE_MEMORY_LOCAL) || (file == FILE_MEMORY_GLOBAL) ||
+ (file == FILE_MEMORY_BUFFER);
return true;
}
@@ -509,6 +511,7 @@ int Targ...
2016 Sep 30
0
[PATCH v2] nv50/ir: constant fold OP_SPLIT
...t; + DataType type = typeOfSize(size / 2, isFloatType(i->dType),
> + isSignedType(i->dType));
Er wait, sorry, I might have confused matters here...
Why do you need to compute type at all? Why not just reuse i->dType?
> + if (likely(type != TYPE_NONE)) {
> + uint64_t val = imm0.reg.data.u64;
> + uint16_t shift = size * 8;
> + bld.setPosition(i, false);
> + for (int8_t d = 0; i->defExists(d); ++d) {
> + bld.mkMov(i->getDef(d), bld.mkImm(val & ((1 << shift) - 1)), type);
1...
2016 May 24
0
[PATCH] Add Functions to Create Ambisonic Multistream Encoder
...ou would rather that correspondence not be explicit I will remove the
> explicit assignments.
I'd rather have them be different, since they're not really the same
thing. The idea is that we may have more than one family map to the same
type (e.g. currently both families 0 and 255 map to TYPE_NONE).
One last thing I just noticed, please don't rely on
ENABLE_EXPERIMENTAL_AMBISONICS actually being defined to zero when your
patch is disabled. Some people don't use the autotools build (e.g. they
use the plain Makefile or Visual Studio, or custom scripts), so your
patch would break their...
2016 May 24
0
[PATCH] Add Functions to Create Ambisonic Multistream Encoder
...e explicit I will remove the
> > explicit assignments.
>
> I'd rather have them be different, since they're not really the same
> thing. The idea is that we may have more than one family map to the same
> type (e.g. currently both families 0 and 255 map to TYPE_NONE).
>
> One last thing I just noticed, please don't rely on
> ENABLE_EXPERIMENTAL_AMBISONICS actually being defined to zero when your
> patch is disabled. Some people don't use the autotools build (e.g. they
> use the plain Makefile or Visual Studio, or custom...
2016 May 24
1
[PATCH] Add Functions to Create Ambisonic Multistream Encoder
Since they correspond to mapping family values, I figured it would be wise
to make them match so that the correspondence would be clear. If you would
rather that correspondence not be explicit I will remove the explicit
assignments.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2016 Apr 08
2
[PATCH mesa v2 1/2] nouveau: codegen: Use FILE_MEMORY_BUFFER for buffers
...e FILE_MEMORY_GLOBAL: return 0xffffffff;
>> case FILE_MEMORY_SHARED: return 16 << 10;
>> case FILE_MEMORY_LOCAL: return 48 << 10;
>> @@ -406,7 +407,8 @@ TargetNV50::isAccessSupported(DataFile file, DataType ty) const
>> if (ty == TYPE_B96 || ty == TYPE_NONE)
>> return false;
>> if (typeSizeof(ty) > 4)
>> - return (file == FILE_MEMORY_LOCAL) || (file == FILE_MEMORY_GLOBAL);
>> + return (file == FILE_MEMORY_LOCAL) || (file == FILE_MEMORY_GLOBAL) ||
>> + (file == FILE_MEMORY_BUFFER);
>...
2016 May 24
3
[PATCH] Add Functions to Create Ambisonic Multistream Encoder
Hi Michael,
Any particular reason you assign explicit values to your MappingType
enum? If not, I'd rather not depend on the int values. Other than that,
I think your patch is good to go.
Cheers,
Jean-Marc
On 05/23/2016 01:27 PM, Michael Graczyk wrote:
> Hi Jean-Marc,
>
> On Sat, May 21, 2016 at 1:58 PM, Jean-Marc Valin <jmvalin at jmvalin.ca> wrote:
>> 1) I think
2016 Mar 23
0
[PATCH mesa v2 1/2] nouveau: codegen: Use FILE_MEMORY_BUFFER for buffers
...f;
> case FILE_MEMORY_GLOBAL: return 0xffffffff;
> case FILE_MEMORY_SHARED: return 16 << 10;
> case FILE_MEMORY_LOCAL: return 48 << 10;
> @@ -406,7 +407,8 @@ TargetNV50::isAccessSupported(DataFile file, DataType ty) const
> if (ty == TYPE_B96 || ty == TYPE_NONE)
> return false;
> if (typeSizeof(ty) > 4)
> - return (file == FILE_MEMORY_LOCAL) || (file == FILE_MEMORY_GLOBAL);
> + return (file == FILE_MEMORY_LOCAL) || (file == FILE_MEMORY_GLOBAL) ||
> + (file == FILE_MEMORY_BUFFER);
> return true;...
2016 Apr 12
2
[PATCH mesa v2 1/2] nouveau: codegen: Use FILE_MEMORY_BUFFER for buffers
...>> case FILE_MEMORY_SHARED: return 16 << 10;
>>>> case FILE_MEMORY_LOCAL: return 48 << 10;
>>>> @@ -406,7 +407,8 @@ TargetNV50::isAccessSupported(DataFile file,
>>>> DataType ty) const
>>>> if (ty == TYPE_B96 || ty == TYPE_NONE)
>>>> return false;
>>>> if (typeSizeof(ty) > 4)
>>>> - return (file == FILE_MEMORY_LOCAL) || (file ==
>>>> FILE_MEMORY_GLOBAL);
>>>> + return (file == FILE_MEMORY_LOCAL) || (file ==
>>>> FILE_MEMORY_G...
2016 Apr 08
0
[PATCH mesa v2 1/2] nouveau: codegen: Use FILE_MEMORY_BUFFER for buffers
...0xffffffff;
>>> case FILE_MEMORY_SHARED: return 16 << 10;
>>> case FILE_MEMORY_LOCAL: return 48 << 10;
>>> @@ -406,7 +407,8 @@ TargetNV50::isAccessSupported(DataFile file,
>>> DataType ty) const
>>> if (ty == TYPE_B96 || ty == TYPE_NONE)
>>> return false;
>>> if (typeSizeof(ty) > 4)
>>> - return (file == FILE_MEMORY_LOCAL) || (file ==
>>> FILE_MEMORY_GLOBAL);
>>> + return (file == FILE_MEMORY_LOCAL) || (file ==
>>> FILE_MEMORY_GLOBAL) ||
>>> +...
2016 Apr 14
0
[PATCH mesa v2 1/2] nouveau: codegen: Use FILE_MEMORY_BUFFER for buffers
...se FILE_MEMORY_SHARED: return 16 << 10;
>>>>> case FILE_MEMORY_LOCAL: return 48 << 10;
>>>>> @@ -406,7 +407,8 @@ TargetNV50::isAccessSupported(DataFile file,
>>>>> DataType ty) const
>>>>> if (ty == TYPE_B96 || ty == TYPE_NONE)
>>>>> return false;
>>>>> if (typeSizeof(ty) > 4)
>>>>> - return (file == FILE_MEMORY_LOCAL) || (file ==
>>>>> FILE_MEMORY_GLOBAL);
>>>>> + return (file == FILE_MEMORY_LOCAL) || (file ==
>>&g...