1. 30 Jan, 2019 1 commit
  2. 25 Jan, 2019 1 commit
  3. 23 Jan, 2019 1 commit
  4. 11 Dec, 2018 1 commit
  5. 26 Nov, 2018 1 commit
  6. 25 Oct, 2018 1 commit
  7. 05 Jul, 2018 1 commit
  8. 31 May, 2018 1 commit
  9. 03 Apr, 2018 1 commit
    • xlei3's avatar
      Commit contains 108 changes. · dbb9f9f1
      xlei3 authored
      Change 1:
          Will check in another fix after opensource builds are back up
        made by: Xiao Lei
      
      Change 2:
          To make subroutine call for emulation functions be on by default.
        made by: Junjie Gu
      
      Change 3:
          [IGC Refactor][Builtins, IGC]: Update changes for Built-in Indexing
          Description for Open Source:
          these allow us to load only the builtins that we need into the user kernel
        made by:  hudson_server
      
      Change 4made by: Michael Liao
      
      Change 5:
          As summary.
        made by: Wei Pan
      
      Change 6made by: Alexander Paige
      
      Change 7:
          Automated integration from mainline to DEV_IGC
        made by:  IGC
      
      Change 8:
          Need to use zext on PHI when doing integer promotion. For example,
           phi i2 [1, %b0] [-1, %b1]
        made by: Junjie Gu
      
      Change 9:
          When icmp is signed, need to do sext (using shl + ashr)
        made by: Junjie Gu
      
      Change 10:
          Missing description
        made by: Junjie Gu
      
      Change 11:
          For CS, if simd8 is not least allowed simd size, don't enable subroutine as subroutine is simd8 only for now.
        made by: Junjie Gu
      
      Change 12made by: Thomas F Raoux
      
      Change 13:
          As summary.
        made by: Wei Pan
      
      Change 14:
          To make subroutine call for emulation functions be on by default.
        made by:  hudson_server
      
      Change 15made by: Po-yu Chen
      
      Change 16:
          add more acc restrictions
        made by: Weiyu Chen
      
      Change 17:
          Make sure the uneeded code is indeed removed.
        made by: Junjie Gu
      
      Change 18:
          Handle insertelementinst and waveshuffle specially
        made by: Junjie Gu
      
      Change 19:
          In FF, un constrained variables can be assigned freely, RR helps scheduling effort.
          loose the initial condition. only node in first time un-constrainted list is applied RR.
        made by:  hudson_server
      
      Change 20:
          Fix alignment in CreateBufferLoad() for types smalled than 4 bytes. Set correct address alignement in ldraw instrinsics.
        made by: Lukasz Gotszald
      
      Change 21made by: Thomas F Raoux
      
      Change 22made by: Thomas F Raoux
      
      Change 23:
      
        made by:  hudson_server
      
      Change 24made by: Thomas F Raoux
      
      Change 25:
          Phi instructions always need to be at the beginning of a given basic block.
        made by:  hudson_server
      
      Change 26:
          [IGC Backout][IGC]: Revert CL#751879
          Description for Open Source:
          - due to performance regression
        made by:  hudson_server
      
      Change 27:
          Provide global and local variable splitting in single pass, and handled in the same way.
        made by:  hudson_server
      
      Change 28:
          [IGC Refactor][IGC]: Step2 to remove deprecated sampler intrinsics. Missing file in previous CL
          Description for Open Source:
        made by:  hudson_server
      
      Change 29:
          In FF, un constrained variables can be assigned freely, RR helps scheduling effort.
          loose the initial condition. only node in first time un-constrainted list is applied RR.
        made by: Bu Qi Cheng
      
      Change 30made by: Thomas F Raoux
      
      Change 31:
          [IGC BugFix][DX9_FE]: Fix more regression due to refactoring
          Description for Open Source:
           Fix more regression due to refactoring
        made by:  hudson_server
      
      Change 32:
          Provide global and local variable splitting in single pass, and handled in the same way.
        made by: Bu Qi Cheng
      
      Change 33:
          [IGC Refactor][IGC]: Last step of legacy sample removal
          Description for Open Source:
          Remove legacy intrinsics
        made by:  hudson_server
      
      Change 34:
          Fix wrong size of string passing.
          This caused the last char of "options" string to be cut off, therefore module metadata was incorrect.
        made by: Andrzej Ratajewski
      
      Change 35:
          Back-out of one of previous change.
        made by: Michael Liao
      
      Change 36made by: Tomasz Bujewski
      
      Change 37made by: Thomas F Raoux
      
      Change 38:
          Internal feature
        made by:  hudson_server
      
      Change 39:
          Unexpected problem has been detected in VulkanULT. It was not reproduced at Sanity, preETM nor locally.
        made by: Lukasz Gotszald
      
      Change 40:
          Phi instructions always need to be at the beginning of a given basic block.
        made by: Jacek Jankowski
      
      Change 41:
          This way IGC-NEO interface will be available in IGC when building IGC with Apple support (for non-apple OS).
        made by: Jaroslaw Chodor
      
      Change 42:
          Fix alignment in CreateBufferLoad() for types smalled than 4 bytes. Set correct address alignement in ldraw instrinsics.
        made by: Lukasz Gotszald
      
      Change 43made by: Thomas F Raoux
      
      Change 44made by: Thomas F Raoux
      
      Change 45:
      
        made by: Mariusz Merecki
      
      Change 46made by: Junjie Gu
      
      Change 47made by: Bu Qi Cheng
      
      Change 48:
          Emulation pass also emulates i64 div/mod. So, make sure it is for double emulation before enabling subroutine support.
          Code Review:
          trivial
        made by: Junjie Gu
      
      Change 49:
          add a missing check on whether mad src0 can be acc
        made by: Weiyu Chen
      
      Change 50:
          As summary.
        made by: Wei Pan
      
      Change 51:
          Enables stateless support on BDW by default
        made by: Xiao Lei
      
      Change 52:
          Added compiler support for GTPin
        made by: Xiao Lei
      
      Change 53:
          Refactored GTPin return data to contain the correct version and request status.
        made by: Xiao Lei
      
      Change 54made by: Thomas F Raoux
      
      Change 55:
      
        made by: Thomas F Raoux
      
      Change 56:
          Back-out of one of previous change.
        made by: Mariusz Merecki
      
      Change 57:
      
        made by:  IGC
      
      Change 58:
          Provide global and local variable splitting in single pass, and handled in the same way.
        made by:  IGC
      
      Change 59:
      
        made by: Mariusz Merecki
      
      Change 60:
          Provide global and local variable splitting in single pass, and handled in the same way.
        made by: Bu Qi Cheng
      
      Change 61:
          internal feature
        made by: Weiyu Chen
      
      Change 62:
          See if we can remove this seemly useless check
        made by: Weiyu Chen
      
      Change 63made by: Thomas F Raoux
      
      Change 64made by: Thomas F Raoux
      
      Change 65made by: Piotr Mochocki
      
      Change 66:
          Assert is unnecessary as it will be handled in other parts of the pass.
          Fixes a regression from CL751781
        made by: Xiao Lei
      
      Change 67made by: Jose Santillan
      
      Change 68made by: Michael Liao
      
      Change 69made by: Pawel Jurek
      
      Change 70:
          In FF, un constrained variables can be assigned freely, RR helps scheduling effort.
        made by:  IGC
      
      Change 71:
          CPack: switch to component based packaging
          Group IGC artifacts into igc component. This change enables creation of separable
          IGC installation packages (deb,rpm,tgz) by top level build system.
        made by: Lukasz Filipkowski
      
      Change 72made by: Michael Liao
      
      Change 73:
          Internal feature
        made by: Weiyu Chen
      
      Change 74:
          As summary.
        made by: Wei Pan
      
      Change 75:
          enable multi-acc replacement for certain platforms
        made by: Weiyu Chen
      
      Change 76made by: Thomas F Raoux
      
      Change 77:
          Accidental Checkin - Backing out of previous CL
        made by: Xiao Lei
      
      Change 78:
          Enables GTPin input read and output writes
        made by: Xiao Lei
      
      Change 79:
          don't do acc replacement for dst without any use
        made by: Weiyu Chen
      
      Change 80:
          Added support in Legalization pass to handle store of illegal int types.
          Added support in PeepholeTypeLegalizer pass to handle PHI and Trunc instructions with illegal int types.
        made by: Xiao Lei
      
      Change 81:
          acc substitution relies on def-use on virtual declares, and removeReudundMov pass can break it
        made by: Weiyu Chen
      
      Change 82:
          - ensure all required values are present
        made by: Michael Liao
      
      Change 83:
          - limit to OpenCL shader only
        made by: Michael Liao
      
      Change 84made by: Thomas F Raoux
      
      Change 85:
          Back-out of one of previous change.
        made by: Michael Liao
      
      Change 86:
          To make subroutine call for emulation functions be on by default.
        made by: Junjie Gu
      
      Change 87:
          Turining full Half Promotion pass back on for OCL due to functional regressions.
        made by: Jacek Jankowski
      
      Change 88:
          Gen9 doesn't support bindless sampler heap. These changes follow DirectX approach to support a large number of samplers. The idea is to use sampler header to pass pointer to the sampler state.
          These changes are not complete as we also need corresponding UMD changes but we can safely check them in and enable later when UMD is ready.
          Proposed solution is:
          - UMD creates separate descriptor set heap just for samplers in the indirect state heap. So UMD has to manage two bindless heaps one for surfaces and one for samplers.
          - The assumption is that a descriptor set offset "n" has the same offset in both heaps. This will limit the number of offsets that need to go through constant registers
          - Additionally UMD will pass us the base offset of the emulated bindless heap (offset relative to the dynamic state base address)
          - Compiler will add this base offset to every sampler binding and IGC will program the sampler state offset in the header.
        made by: Mariusz Merecki
      
      Change 89made by: Thomas F Raoux
      
      Change 90:
          Update SpirV OpAtomicIDecrement instruction to use the DEC not PREDEC HW operation.
        made by: Lukasz Gotszald
      
      Change 91:
          Backing out previous commit, as CI is down and checkins are halted, so no testing for this will occur.
        made by: Xiao Lei
      
      Change 92:
          Added support in Legalization pass to handle store of illegal int types.
          Added support in PeepholeTypeLegalizer pass to handle PHI and Trunc instructions with illegal int types.
        made by: Xiao Lei
      
      Change 93:
          Automated integration from mainline to DEV_IGC
        made by:  IGC
      
      Change 94:
          In FF, un constrained variables can be assigned freely, RR helps scheduling effort.
        made by: Bu Qi Cheng
      
      Change 95:
          revert CL#750441
        made by: Michael Liao
      
      Change 96:
          Change CS SIMD32 heuristics to consider loop stall cost, to allow more shader to be compiled as SIMD32.
        made by:  hudson_server
      
      Change 97:
          --add check for add dst in VxH mode
          --add check for src modifier in mul inst
        made by: Weiyu Chen
      
      Change 98:
          GTPin data is sent to driver through patch token
        made by: Xiao Lei
      
      Change 99:
          add code to support acc on mad src0. currently disabled by default.
        made by: Weiyu Chen
      
      Change 100:
          Change CS SIMD32 heuristics to consider loop stall cost, to allow more shader to be compiled as SIMD32.
        made by: Peng Guo
      
      Change 101:
          Added support to enabling subroutine for emulation functions. The default is off for now.
          Don't expect any functional changes.
        made by: Junjie Gu
      
      Change 102:
          When lexical scope information is present for -gline-tables-only, it leads to unexpected behavior when building lexical scope DIE because of missing MCSymbol labels for instructions. This patch skip building lexical scope DIE for such cases.
        made by: Pratik J Ashar
      
      Change 103:
          add platform checks on when to use multiAccSubstitution
        made by:  hudson_server
      
      Change 104:
          - 2nd attempt
        made by:  hudson_server
      
      Change 105:
          fix a bug in previous checkin where src2 was incorrectly applied acc
        made by:  hudson_server
      
      Change 106:
          Added support to 3DBuilder to build igc for debugging Metal Shaders and also to build IGC for open source
        made by: Juan1 Rodriguez
      
      Change 107:
          If the address fill move has a different exec size than kernel's simd size, NoMask must be used (e.g., (W) mov (1) a0.0 r1.0:w
        made by: Weiyu Chen
      
      Change 108:
          As Vulkan no longer needs FP64 emulation, do not set NeedFP64() for vulkan.
          This should have no functional change.
        made by: Junjie Gu
      
      Change-Id: I2fc60e3bdbf85c279446c0a3a9a9c8dc60e09cdd
      dbb9f9f1
  10. 30 Jan, 2018 1 commit