search for: _sat

Displaying 13 results from an estimated 13 matches for "_sat".

Did you mean: _at
2005 Jul 27
3
[LLVMdev] How to define complicated instruction in TableGen (Direct3D shader instruction)
Each register is a 4-component (namely, r, g, b, a) vector register. They are actually defined as llvm packed [4xfloat]. The instruction: add_sat r0.a, r1_bias.xxyy, r3_x2.zzzz Explaination: '.a' is a writemask. only the specified component will be update '.xxyy' and '.zzzz' are swizzle masks, specify the component permutation, simliar to the Intel SSE permutation instruction SHUFPD '_bias' and '_x2...
2005 Jul 29
0
[LLVMdev] How to define complicated instruction in TableGen (Direct3D shader instruction)
...rn instruction selector to recognise the shuffle+add combination and emit a single instruction. m. Tzu-Chien Chiu wrote: > Each register is a 4-component (namely, r, g, b, a) vector register. > They are actually defined as llvm packed [4xfloat]. > > The instruction: > > add_sat r0.a, r1_bias.xxyy, r3_x2.zzzz > > Explaination: > > '.a' is a writemask. only the specified component will be update > > '.xxyy' and '.zzzz' are swizzle masks, specify the component > permutation, simliar to the Intel SSE permutation instruction SHUF...
2007 Feb 13
6
[LLVMdev] Software Pipelineing | Embedded C Extensions
...ge anything within llvm but might make it hard to detect those patterns for the instruction selector in order to generate efficient code for architectures with hardware support for those features. b) introduce new types for llvm that handle types such as __Fract, __Accum and _Sat. again, comments are highly appreciated. cheers, - dietmar [1] http://llvm.org/pubs/2005-06-17-LattnerMSThesis.html [2] http://www.embedded-c.org/ [3] http://www.open-std.org/jtc1/sc22/wg14/ [4] http://gcc.gnu.org/wiki/FixedPointArithmetic --------------------------------------------------...
2005 Aug 31
2
[LLVMdev] Anyone is building a DSP-C frontend?
fixed-point number could be stored in LLVM first class integer types. i cannot see the problem now. but to be type-safe, there should be a first class 'fixed'. some llvm extensions required to mapping dsp-c lanaguages could be implemented as qualifiers. 1. _sat qualifier Saturate the result within [0.0, +1.0> or [-1.0,+1.0> (unsigned/singed). sat signed fixed a; sat signed fixed b; sat signed fixed c; a = -0.75r; // 'r' is fixed-point number postfix b = -0.75r; c = a + b; /* c = -1.0r !!! */ this qualifier can be implemented just like the...
2007 Feb 13
1
[LLVMdev] Embedded C Extensions
...ok this path, you would only need #1 above. The problem is that it would be hard to reconstruct the operations at isel time, and the mid-level optimizers couldn't hack on these operations as easily. > b) introduce new types for llvm that handle types such as > __Fract, __Accum and _Sat. > again, comments are highly appreciated. My understanding of these operations is that they are basically integer data types whose operators have special semantics. As such, I'd suggest treating these as just new binary operators (e.g. add_fract_sat) which take normal integer dataty...
2017 Jun 11
0
[RFC 5/9] tgsi/text: parse _PRECISE modifier
...6 +1008,7 @@ match_inst(const char **pcur, if (str_match_nocase_whole(&cur, info->mnemonic)) { *pcur = cur; *saturate = 0; + *precise = 0; return TRUE; } @@ -1015,8 +1017,15 @@ match_inst(const char **pcur, if (str_match_nocase_whole(&cur, "_SAT")) { *pcur = cur; *saturate = 1; - return TRUE; } + + if (str_match_nocase_whole(&cur, "_PRECISE")) { + *pcur = cur; + *precise = 1; + } + + if (*precise || *saturate) + return TRUE; } return FALS...
2009 Dec 31
1
[PATCH] Autogenerate uureg opcode macros
...XZW(v) ureg_writemask((v), TGSI_WRITEMASK_Y | TGSI_WRITEMASK_Z | TGSI_WRITEMASK_W) +#define _YZW(v) ureg_writemask((v), TGSI_WRITEMASK_Y | TGSI_WRITEMASK_Z | TGSI_WRITEMASK_W) +#define _XYZW(v) ureg_writemask((v), TGSI_WRITEMASK_X | TGSI_WRITEMASK_Y | TGSI_WRITEMASK_Z | TGSI_WRITEMASK_W) + +#define _SAT(v) ureg_saturate(v) +#define _PRED(v, n, x, y, z, w) ureg_predicate(v, n, x, y, z, w) +#define _IND(r, a) ureg_dst_indirect(r, _src(a)) +#define _UNDEF ureg_dst_undef() +#define _IS_UNDEF(v) ureg_dst_is_undef(v) + +#define _VERT struct ureg_program* ureg = ureg_create(TGSI_PROCESSOR_VERTEX) +#defin...
2005 Aug 31
0
[LLVMdev] Anyone is building a DSP-C frontend?
...-safe, there should be a > first class 'fixed'. There is no need. Lowering is fine, in the same way that enums or typedefs are currently lowered to llvm integer types. > some llvm extensions required to mapping dsp-c lanaguages could be > implemented as qualifiers. > > 1. _sat qualifier > > Saturate the result within [0.0, +1.0> or [-1.0,+1.0> (unsigned/singed). > > sat signed fixed a; > sat signed fixed b; > sat signed fixed c; > a = -0.75r; // 'r' is fixed-point number postfix > b = -0.75r; > c = a + b; /* c = -1.0r !!! */ >...
2007 Feb 14
0
[LLVMdev] Embedded C Extensions
Dear Chris, On Feb 14, 2007, at 12:33 AM, Chris Lattner wrote: >> b) introduce new types for llvm that handle types such as >> __Fract, __Accum and _Sat. >> again, comments are highly appreciated. > > My understanding of these operations is that they are basically > integer > data types whose operators have special semantics. As such, I'd > suggest > treating these as just new binary operators (e.g. add_fract_sat...
2017 Jun 11
14
[RFC 0/9] Add precise/invariant semantics to TGSI
Running Tomb Raider on Nouveau I found some flicker caused by ignoring precise modifiers on variables inside Nouveau. This series add precise/invariant handling to TGSI, which can be then used by drivers to disable certain unsafe optimisations which may otherwise alter calculations, which depend on having the same result across shaders. This series fixes this bug in Tomb Raider and one CTS test
2016 Jan 22
0
Wine release 1.9.2
...d: Handle swizzle type equal to 0 as NOSWIZZLE. wined3d: Fix destination swizzle in few SM4 instructions. wined3d: Allow both SM4 parameter modifiers simultaneously. wined3d: Recognize SM4 oDepth register. wined3d: Implement SM4 imad instruction. wined3d: Recognize SM4 _sat instruction modifier. wined3d: Fix SM4 udiv instruction. wined3d: Do not update surface when empty box is passed. d3d11/tests: Extend test for ID3D11DeviceContext::UpdateSubresource(). d3d10core/tests: Extend test for ID3D10Device::UpdateSubresource(). wined3d: Do not...
2009 Jun 19
0
Wine release 1.1.24
...tfields for reg_maps uses* members. d3d9: Accept an alternative oFog->ps_3_0 handling. wined3d: Fix texm3x3pad. wined3d: Add modifier support to tex and friends. wined3d: Implement D3DSPDM_PARTIALPRECISION support. wined3d: Deal with instructions that do not support _SAT. wined3d: Properly free srgb textures. wined3d: Properly load the y correction. wined3d: Handle SM 3.0 varyings in ARB. wined3d: Don't run out of varyings because of clipplanes. wined3d: Implement vertex texture fetch in ARB. wined3d: Emulate clipplanes in AR...
2011 May 27
0
Wine release 1.3.21
...er confuses the U and V channels. wined3d: Fix a few function definitions. d3d9: AMD drivers return D3D_OK when reading data from an unfinished query. d3d9: AMD cards don't clip transformed vertices. d3d9: Drop the fixed function varying test. wined3d: CMP supports _SAT. d3d: Make the INTZ test more reliable. d3d9: Use a pixel shader for the vs 3.0 input test. port: Add isinf and isnan implementations for Visual Studio. wined3d: Call frag_pipe->enable_extension under the GL lock. wined3d: Call context_apply_draw_buffers under the G...