Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement validity checks #3085

Merged
merged 12 commits into from
Mar 25, 2024
Merged

Commits on Mar 16, 2024

  1. Implement validity checks

    This is still incomplete, but hopefully it can be merged as an unstable
    feature.
    
    This instruments the function body with assertion checks to see if users
    are generating invalid values. This covers:
      - Union access
      - Raw pointer dereference
      - Transmute value
      - Field assignment of struct with invalid values
      - Aggregate assignment
    
    Things not covered today should trigger ICE or verification failure.
    celinval committed Mar 16, 2024
    Configuration menu
    Copy the full SHA
    c5e891b View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2024

  1. Configuration menu
    Copy the full SHA
    28c0a5a View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2024

  1. Apply suggestions from code review

    Co-authored-by: Zyad Hassan <88045115+zhassan-aws@users.noreply.github.com>
    celinval and zhassan-aws authored Mar 21, 2024
    Configuration menu
    Copy the full SHA
    3386248 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    067e2c8 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    08ea850 View commit details
    Browse the repository at this point in the history
  4. Fix build

    celinval committed Mar 21, 2024
    Configuration menu
    Copy the full SHA
    4f8d007 View commit details
    Browse the repository at this point in the history
  5. Make aggregate check more robust

    This check today was relying on the tuple layout, which is not
    guaranteed. Instead, only check for the first operand.
    
    This is actually simpler.
    celinval committed Mar 21, 2024
    Configuration menu
    Copy the full SHA
    84c88e2 View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2024

  1. Configuration menu
    Copy the full SHA
    3f54ee3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    97d6c76 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f1423af View commit details
    Browse the repository at this point in the history

Commits on Mar 25, 2024

  1. Configuration menu
    Copy the full SHA
    a2bb65f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f600a52 View commit details
    Browse the repository at this point in the history