Skip to content

Conversation

atrick
Copy link
Contributor

@atrick atrick commented Jan 29, 2019

This pattern is normally folded away:

%ga = global_addr @Gvar : $*Int64
%ptr = address_to_pointer %ga : $*Int64 to $Builtin.RawPointer
%adr = pointer_to_address %ptr : $Builtin.RawPointer to [strict] $*Int64
%access = begin_access [read] [dynamic] [no_nested_conflict] %adr : $*Int64

However, now that we handle address-type phi arguments in the SIL
verifier, we could see this pattern. [In the long term, when
address-type phis are universally prohibited, all of this stuff
becomes irrelevant.]

Fixes rdar://47555992 [Source Compat] AudioKit: SIL verification
failed: Unknown formal access pattern: storage.

This pattern is normally folded away:

  %ga = global_addr @Gvar : $*Int64
  %ptr = address_to_pointer %ga : $*Int64 to $Builtin.RawPointer
  %adr = pointer_to_address %ptr : $Builtin.RawPointer to [strict] $*Int64
  %access = begin_access [read] [dynamic] [no_nested_conflict] %adr : $*Int64

However, now that we handle address type phi arguments in the SIL
verifier, we could see this pattern. [In the long term, when
address-type phis are universally prohibited, all of this stuff
becomes irrelevant.]

Fixes <rdar://47555992> [Source Compat] AudioKit: SIL verification
failed: Unknown formal access pattern: storage.
@atrick
Copy link
Contributor Author

atrick commented Jan 29, 2019

@swift-ci test.

@atrick
Copy link
Contributor Author

atrick commented Jan 29, 2019

@swift-ci test source compatibility.

@atrick atrick requested a review from shajrawi January 29, 2019 01:41
@atrick
Copy link
Contributor Author

atrick commented Jan 29, 2019

Reviewed by @eeckstein .

@atrick atrick merged commit 6819ba9 into swiftlang:master Jan 29, 2019
@atrick atrick deleted the fix-verify-access branch February 22, 2019 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant