Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: KhronosGroup/SPIRV-Tools
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 91c50e3fc9931a32f116ff5526a01eacbd2bde40
Choose a base ref
...
head repository: KhronosGroup/SPIRV-Tools
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: fc0dc3a9c734f798f85a8433cbd99306dbe82825
Choose a head ref
  • 1 commit
  • 3 files changed
  • 1 contributor

Commits on Jun 29, 2020

  1. Fix ADCE pass bug for mulitple entries (#3470)

    When there are multiple entries and the shader has a variable with
    WorkGroup storage class, those multiple entry functions store values to
    the variable. Since ADCE pass uses def-use chains to propagate the work
    list, some of instructions in the work list are not actually a part of
    the currently processed function. As a result, it adds instructions in
    other functions and put them in |live_insts_|. However, it does not
    have the control flow information for those instructions in other
    functions i.e., |block2headerBranch_| and |header2nextHeaderBranch_|.
    When it processes those instructions (they are added when it processes a
    different function), it skips handling them because they are already in
    |live_insts_| and does not check |block2headerBranch_| and
    |header2nextHeaderBranch_|, which results in skipping some branches.
    Even though those branches are live branches, it considers they are dead
    branches.
    jaebaek authored Jun 29, 2020
    Configuration menu
    Copy the full SHA
    fc0dc3a View commit details
    Browse the repository at this point in the history
Loading