visnyin / softart

Automatically exported from code.google.com/p/softart
Other
0 stars 0 forks source link

Magical Reform: Change value to multiple value #217

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Description:

Now we try to make value support multiple value for parallelism which is 
important feature for pixel shader.

And layout of data represented in pixel shader is vertical but not horizontal.

The performance may be slower, but it is much easier to implement it.

Original issue reported on code.google.com by wuye9036 on 6 Dec 2012 at 5:03

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 456aa99a18b5.

SASL: Replace some code to multi_value version. CAN NOT BE COMPILED!

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
This issue was updated by revision dcebb3a2ebcf.

SASL:
  Remove some unused code.
  Continuous on refactory.
  STILL LINK ERRORS AND LOGIC ERRORS.

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 0243ccab0464.

SASL:
  Fixed compiler errors.
  STILL LOGIC ERRORS.

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
This issue was updated by revision be4b3b2b59c7.

SASL:
  Remove unused code.
  Fixed derivation.

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
This issue was updated by revision be0148b9aedb.

SASL:
  Fixed assertion bugs.
  Fixed ABI infering bugs in emit_call.
  Fixed physical index computation error.

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
This issue was updated by revision f24d98205376.

SASL: Remove tricks in test which will cause mistake.

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 085b6d84e3e6.

SASL:
  Change the order of sv_usage enums.
  Remove element_count and element_padding, change element_size to size of sv_layout.
  Refactor type of parameter of entry function generation to generate_entry.
  Fixed some warnings.
  Commented out all layout computation in abi_info. Now all layout is calculated in compiler.

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 6682763f2439.

SASL:
  Fixed some bugs.
  Remove unused assertion.
  arithmetic.sps works.

Original comment by wuye9036 on 12 Dec 2012 at 10:43

GoogleCodeExporter commented 8 years ago
Following changes done:

 - Change value to multi-value.
 - Horizontal layout changed to vertical layout.
 - Code for generating type of parameters of vs/ps entry function could be shared and done.
 - Remove unused fields in sv_layout and code generator.
 - Remove unused code.
 - Remove some tricks in code generation.

Works need to do:

 - All test pass.
 - Change Pixel Shader Unit to match pixel input.
 - Fixed all issues of external intrinsics.

Original comment by wuye9036 on 12 Dec 2012 at 11:22

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 732663689569.

SASL:
  Fixed an assertion bug.
  Fixed an index bug in store with write mask.
  Swizzle and Write Mask SPS test was passed.

Original comment by wuye9036 on 12 Dec 2012 at 5:10

GoogleCodeExporter commented 8 years ago
This issue was updated by revision cd44ccb22122.

SASL:
  Now cg_function could generate right signature.
  Fixed a abi-forgotten-to-assign bug in emit_extract_val.
  Now cg_function::logical_args_count return the parameter size.
  intrinsics.sps was passed.

Original comment by wuye9036 on 12 Dec 2012 at 5:10

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 4a65fd67564e.

SASL:
  Now cgs_simd::store could work with execution mask.
  branches.sps test works.

Original comment by wuye9036 on 13 Dec 2012 at 6:19

GoogleCodeExporter commented 8 years ago
This issue was updated by revision c676102bc0c4.

SASL:
  Fixed a bug in derivation.
  ddx_ddy.sps was tested.

Original comment by wuye9036 on 13 Dec 2012 at 6:57

GoogleCodeExporter commented 8 years ago
Following changes done:

 - Change value to multi-value.
 - Horizontal layout changed to vertical layout.
 - Code for generating type of parameters of vs/ps entry function could be shared and done.
 - Remove unused fields in sv_layout and code generator.
 - Remove unused code.
 - Remove some tricks in code generation.
 - All test pass.

Works need to do:
 - Change Pixel Shader Unit to match pixel input.
 - Fixed all issues of external intrinsic (especially for pixel shader).

Original comment by wuye9036 on 13 Dec 2012 at 1:56

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 679c7725de4f.

SASL:
  Added multi_value::valid().
  Fixed signature of texture load.
  Fixed buffer input parameter type of pixel shader entry.
  Implements cg_service::split_mask.
  Fixed some incorrect parallel_factor in value evaluation.
  tex.sps works.
  Add irnormal exit assertion.

Original comment by wuye9036 on 13 Dec 2012 at 4:22

GoogleCodeExporter commented 8 years ago
This issue was updated by revision 641e6a1aad0b.

SASL:
  All pixel shader tests were passed.

Original comment by wuye9036 on 13 Dec 2012 at 4:22

GoogleCodeExporter commented 8 years ago
This issue was updated by revision cf021be44af5.

SASL:
  Fixed incorrect mask in cg_service::emit_tex_grad_impl.
  Fixed all pixel shader external intrinsic signature.
  pixel shader unit works.
  C++-Implementation of external intrinsic works.
  All test cases works.

Original comment by wuye9036 on 13 Dec 2012 at 4:22

GoogleCodeExporter commented 8 years ago
Following changes done:

 - Change value to multi-value.
 - Horizontal layout changed to vertical layout.
 - Code for generating type of parameters of vs/ps entry function could be shared and done.
 - Remove unused fields in sv_layout and code generator.
 - Remove unused code.
 - Remove some tricks in code generation.
 - All test pass.
 - Change Pixel Shader Unit to match pixel input.
 - Fixed all issues of external intrinsic (especially for pixel shader).

Original comment by wuye9036 on 13 Dec 2012 at 4:22