Skip to content

Public globals - #2

Merged
xavierleroy merged 5 commits into
masterfrom
public-globals
Nov 25, 2014
Merged

Public globals#2
xavierleroy merged 5 commits into
masterfrom
public-globals

Conversation

@xavierleroy

Copy link
Copy Markdown
Contributor

As recently discussed on the compcert-users mailing list, this branch marks global definitions as either public (visible from the outside) or static (private to the compilation unit). Then, pointer values exchanged with the outside world (e.g. results of volatile read operations) are restricted to public global names.
This makes it possible to prove the correctness of compilation passes that add or remove static global definitions. As an application, this branch proves the correctness of the Unusedglob pass (removal of unreferenced static definitions), which was not verified before.

Restrict pointer event values to public global names.
Update proofs accordingly. PowerPC and ARM need updating.
…lobal definitions). Assorted changes to ia32/Op.v. PowerPC and ARM need updating.
@xavierleroy

Copy link
Copy Markdown
ContributorAuthor

Rebased on current master.

xavierleroy added a commit that referenced this pull request Nov 25, 2014
@xavierleroy
xavierleroy merged commit 52f9c87 into masterNov 25, 2014
@xavierleroy
xavierleroy deleted the public-globals branch November 25, 2014 09:17
Lin23299 pushed a commit to Lin23299/CompCert that referenced this pull request Feb 25, 2022
Proof of cc_asm_ref and cc_asm_compose
xavierleroy added a commit that referenced this pull request Jul 21, 2026
So that they can be used more widely in the future.
Sign up for freeto 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

@xavierleroy