From 59a2fc1ad5d380c32c59bc8b87283ada0db44466 Mon Sep 17 00:00:00 2001
From: Ralf Jung <jung@mpi-sws.org>
Date: Thu, 11 Aug 2022 16:01:37 -0400
Subject: [PATCH] prepare for merge into gpfsl repo

---
 .gitignore                      | 20 ------------
 .gitlab-ci.yml                  | 51 ------------------------------
 LICENSE                         | 28 -----------------
 Makefile                        | 55 --------------------------------
 README.md                       | 56 ---------------------------------
 _CoqProject                     | 17 ----------
 {theories => orc11}/base.v      |  0
 {theories => orc11}/event.v     |  0
 {theories => orc11}/location.v  |  0
 {theories => orc11}/mem_order.v |  0
 {theories => orc11}/memory.v    |  0
 {theories => orc11}/progress.v  |  0
 {theories => orc11}/thread.v    |  0
 {theories => orc11}/tview.v     |  0
 {theories => orc11}/value.v     |  0
 {theories => orc11}/view.v      |  0
 16 files changed, 227 deletions(-)
 delete mode 100644 .gitignore
 delete mode 100644 .gitlab-ci.yml
 delete mode 100644 LICENSE
 delete mode 100644 Makefile
 delete mode 100644 README.md
 delete mode 100644 _CoqProject
 rename {theories => orc11}/base.v (100%)
 rename {theories => orc11}/event.v (100%)
 rename {theories => orc11}/location.v (100%)
 rename {theories => orc11}/mem_order.v (100%)
 rename {theories => orc11}/memory.v (100%)
 rename {theories => orc11}/progress.v (100%)
 rename {theories => orc11}/thread.v (100%)
 rename {theories => orc11}/tview.v (100%)
 rename {theories => orc11}/value.v (100%)
 rename {theories => orc11}/view.v (100%)

diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index bb243f15..00000000
--- a/.gitignore
+++ /dev/null
@@ -1,20 +0,0 @@
-*.vo
-*.vio
-*.v.d
-*.coq.d
-*.vok
-*.vos
-*.glob
-*.cache
-*.aux
-\#*\#
-.\#*
-*~
-*.bak
-.coq-native/
-Makefile.coq
-Makefile.coq.conf
-builddep/
-*.crashcoqide
-.coqdeps.d
-_opam
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
deleted file mode 100644
index 95b41442..00000000
--- a/.gitlab-ci.yml
+++ /dev/null
@@ -1,51 +0,0 @@
-image: ralfjung/opam-ci:opam2
-
-stages:
-  - build
-
-variables:
-  CPU_CORES: "10"
-  OCAML: "ocaml-base-compiler.4.14.0"
-
-.template: &template
-  stage: build
-  tags:
-  - fp
-  script:
-  - git clone https://gitlab.mpi-sws.org/iris/ci.git ci -b opam2
-  - ci/buildjob
-  cache:
-    key: "$CI_JOB_NAME"
-    paths:
-    - _opam/
-  only:
-  - master@iris/orc11
-  - /^ci/@iris/orc11
-  except:
-  - triggers
-  - schedules
-  - api
-
-## Build jobs
-
-build-coq.8.15.1:
-  <<: *template
-  variables:
-    OPAM_PINS: "coq version 8.15.1"
-    DENY_WARNINGS: "1"
-    OPAM_PKG: "1"
-    CI_COQCHK: "1"
-  tags:
-  - fp-timing
-
-build-coq.8.14.1:
-  <<: *template
-  variables:
-    OPAM_PINS: "coq version 8.14.1"
-    DENY_WARNINGS: "1"
-
-build-coq.8.13.2:
-  <<: *template
-  variables:
-    OPAM_PINS: "coq version 8.13.2"
-    DENY_WARNINGS: "1"
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index dc298ab5..00000000
--- a/LICENSE
+++ /dev/null
@@ -1,28 +0,0 @@
-All files in this development are distributed under the terms of the BSD
-license, included below.
-
-Copyright: orc11 developers and contributors
-
-------------------------------------------------------------------------------
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-    * Neither the name of the copyright holder nor the names of its contributors
-      may be used to endorse or promote products derived from this software
-      without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Makefile b/Makefile
deleted file mode 100644
index ac8dba01..00000000
--- a/Makefile
+++ /dev/null
@@ -1,55 +0,0 @@
-# Default target
-all: Makefile.coq
-	+@$(MAKE) -f Makefile.coq all
-.PHONY: all
-
-# Permit local customization
--include Makefile.local
-
-# Forward most targets to Coq makefile (with some trick to make this phony)
-%: Makefile.coq phony
-	@#echo "Forwarding $@"
-	+@$(MAKE) -f Makefile.coq $@
-phony: ;
-.PHONY: phony
-
-clean: Makefile.coq
-	+@$(MAKE) -f Makefile.coq clean
-	@# Make sure not to enter the `_opam` folder.
-	find [a-z]*/ \( -name "*.d" -o -name "*.vo" -o -name "*.vo[sk]" -o -name "*.aux" -o -name "*.cache" -o -name "*.glob" -o -name "*.vio" \) -print -delete || true
-	rm -f Makefile.coq .lia.cache builddep/*
-.PHONY: clean
-
-# Create Coq Makefile.
-Makefile.coq: _CoqProject Makefile
-	"$(COQBIN)coq_makefile" -f _CoqProject -o Makefile.coq $(EXTRA_COQFILES)
-
-# Install build-dependencies
-OPAMFILES=$(wildcard *.opam)
-BUILDDEPFILES=$(addsuffix -builddep.opam, $(addprefix builddep/,$(basename $(OPAMFILES))))
-
-builddep/%-builddep.opam: %.opam Makefile
-	@echo "# Creating builddep package for $<."
-	@mkdir -p builddep
-	@sed <$< -E 's/^(build|install|remove):.*/\1: []/; s/"(.*)"(.*= *version.*)$$/"\1-builddep"\2/;' >$@
-
-builddep-opamfiles: $(BUILDDEPFILES)
-.PHONY: builddep-opamfiles
-
-builddep: builddep-opamfiles
-	@# We want opam to not just install the build-deps now, but to also keep satisfying these
-	@# constraints.  Otherwise, `opam upgrade` may well update some packages to versions
-	@# that are incompatible with our build requirements.
-	@# To achieve this, we create a fake opam package that has our build-dependencies as
-	@# dependencies, but does not actually install anything itself.
-	@echo "# Installing builddep packages."
-	@opam install $(OPAMFLAGS) $(BUILDDEPFILES)
-.PHONY: builddep
-
-# Backwards compatibility target
-build-dep: builddep
-.PHONY: build-dep
-
-# Some files that do *not* need to be forwarded to Makefile.coq.
-# ("::" lets Makefile.local overwrite this.)
-Makefile Makefile.local _CoqProject $(OPAMFILES):: ;
diff --git a/README.md b/README.md
deleted file mode 100644
index ea9e5526..00000000
--- a/README.md
+++ /dev/null
@@ -1,56 +0,0 @@
-# ORC11 (Operational Repaired C11) COQ DEVELOPMENT
-
-ORC11 provides an operational version of [RC11] without SC accesses and SC fences,
-and with a race detector for non-atomics.
-
-In [thread.v](theories/thread.v), the definition of the semantics
-is decomposed into 3 relations `lbl_machine_step`, `drf_pre`, and `drf_post`.
-`lbl_machine_step` concerns the main semantics of views, while `drf_pre` and
-`drf_post` implement the race detector (Section 5.1 of the RBrlx paper).
-
-## Race detector simplified
-
-The race detector is summarized as follows (NA: non-atomic / AT : atomic):
-* An NA write must have seen all other operations
-* An NA read must have seen all writes (NA & AT)
-* An AT write must have seen all NA operations (read & writes)
-* An AT read must have seen all NA writes
-
-| Must have seen   | NA write | NA read  | AT write | AT read |
-| -----------------| --------:| --------:| --------:| -------:|
-| NA write         | +        | +        | +        | +       |
-| NA read          | +        |          | +        |         |
-| AT write         | +        | +        |          |         |
-| AT read          | +        |          |          |         |
-
-
-## Prerequisites
-
-This version is known to compile with:
-
- - Coq 8.13.2 / 8.14.1 / 8.15.1
- - A development version of [stdpp]. See the [opam](opam) file for the exact
-    version.
-
-The easiest way to install the correct versions of the dependencies is through
-opam (2.0.0 or newer).  You will need the Coq and Iris opam repositories:
-
-    opam repo add coq-released https://coq.inria.fr/opam/released
-    opam repo add iris-dev https://gitlab.mpi-sws.org/iris/opam.git
-
-Once you got opam set up, run `make build-dep` to install the right versions
-of the dependencies.
-
-## Updating
-
-After doing `git pull`, the development may fail to compile because of outdated
-dependencies.  To fix that, please run `opam update` followed by
-`make build-dep`.
-
-## Building Instructions
-
-Run `make -jN` to build the full development, where `N` is the number of your
-CPU cores.
-
-[RC11]: http://plv.mpi-sws.org/scfix/
-[stdpp]: https://gitlab.mpi-sws.org/iris/stdpp
diff --git a/_CoqProject b/_CoqProject
deleted file mode 100644
index 329d13de..00000000
--- a/_CoqProject
+++ /dev/null
@@ -1,17 +0,0 @@
--Q theories orc11
-# We sometimes want to locally override notation, and there is no good way to do that with scopes.
--arg -w -arg -notation-overridden
-# Cannot use non-canonical projections as it causes massive unification failures
-# (https://github.com/coq/coq/issues/6294).
--arg -w -arg -redundant-canonical-projection
-
-theories/base.v
-theories/value.v
-theories/mem_order.v
-theories/event.v
-theories/location.v
-theories/view.v
-theories/memory.v
-theories/tview.v
-theories/thread.v
-theories/progress.v
diff --git a/theories/base.v b/orc11/base.v
similarity index 100%
rename from theories/base.v
rename to orc11/base.v
diff --git a/theories/event.v b/orc11/event.v
similarity index 100%
rename from theories/event.v
rename to orc11/event.v
diff --git a/theories/location.v b/orc11/location.v
similarity index 100%
rename from theories/location.v
rename to orc11/location.v
diff --git a/theories/mem_order.v b/orc11/mem_order.v
similarity index 100%
rename from theories/mem_order.v
rename to orc11/mem_order.v
diff --git a/theories/memory.v b/orc11/memory.v
similarity index 100%
rename from theories/memory.v
rename to orc11/memory.v
diff --git a/theories/progress.v b/orc11/progress.v
similarity index 100%
rename from theories/progress.v
rename to orc11/progress.v
diff --git a/theories/thread.v b/orc11/thread.v
similarity index 100%
rename from theories/thread.v
rename to orc11/thread.v
diff --git a/theories/tview.v b/orc11/tview.v
similarity index 100%
rename from theories/tview.v
rename to orc11/tview.v
diff --git a/theories/value.v b/orc11/value.v
similarity index 100%
rename from theories/value.v
rename to orc11/value.v
diff --git a/theories/view.v b/orc11/view.v
similarity index 100%
rename from theories/view.v
rename to orc11/view.v
-- 
GitLab