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: JuliaDebug/LoweredCodeUtils.jl
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: JuliaDebug/LoweredCodeUtils.jl
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: teh/threestate
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 8 commits
  • 4 files changed
  • 1 contributor

Commits on Jul 18, 2024

  1. Add failing test for proper termination

    Currently we use a heuristic to avoid marking the exit of the last
    basic block, expecting it to be a `return` and so that execution
    will cease whether we evaluate it or not. However, it is possible
    to write code for which the final statement is a `GotoNode` and
    in this case we can get incorrect answers if we fail to evaluate it.
    
    This example illustrates a tricky point: `return` both terminates
    execution but may also return a value. If we don't require the
    value, we still might need to terminate execution. This example
    seems to illustrate that having `isrequired[i]` be either `true` or
    `false` may be insufficiently expressive; we might need it to be
    three states, `:no`, `:yes`, `:exit`. During marking, encountering
    `:exit` would not force one to evaluate the returned SSAValue.
    timholy committed Jul 18, 2024
    Configuration menu
    Copy the full SHA
    6a9fb50 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2024

  1. Possible fix

    timholy committed Jul 20, 2024
    Configuration menu
    Copy the full SHA
    e5db600 View commit details
    Browse the repository at this point in the history
  2. Rewrite

    timholy committed Jul 20, 2024
    Configuration menu
    Copy the full SHA
    a1d2a28 View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2024

  1. fix test

    timholy committed Jul 21, 2024
    Configuration menu
    Copy the full SHA
    047a273 View commit details
    Browse the repository at this point in the history
  2. More sophisticated cf marking

    timholy committed Jul 21, 2024
    Configuration menu
    Copy the full SHA
    e049fa9 View commit details
    Browse the repository at this point in the history
  3. More fix

    timholy committed Jul 21, 2024
    Configuration menu
    Copy the full SHA
    e2e780b View commit details
    Browse the repository at this point in the history
  4. working

    timholy committed Jul 21, 2024
    Configuration menu
    Copy the full SHA
    b64850a View commit details
    Browse the repository at this point in the history
  5. explain

    timholy committed Jul 21, 2024
    Configuration menu
    Copy the full SHA
    459a02d View commit details
    Browse the repository at this point in the history
Loading