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

update to GHC 9.2.8 #2230

Merged
merged 16 commits into from
Oct 31, 2023
Next Next commit
update to GHC 9.2.7
clayrat committed Jul 28, 2023

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
commit 66bbb340fe3c14d31ce05ce8333e7d505c59e22d
21 changes: 11 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -166,14 +166,15 @@ On each line, the report will contain the time taken by each test.
Comparison charts in `svg` format can be generated by invoking

```
cabal v2-run plot-performance -- -b path_to_before_summary.csv -a path_to_after_summary.csv -s 50 -f "benchmark" -o outdir
cabal v2-run plot-performance -- -b path_to_before_summary.csv -a path_to_after_summary.csv -s 50 -f "benchmark"
```

This will generate three files `filtered.svg` (a subset of tests with a `benchmark` prefix, enabled by the `-f` option),
`top.svg` and `bot.svg` (top 50 speedups and slowdowns over the entire test set, both enabled by the `-s` option) under
the `outdir` directory. The `-f` and `-s` options can be used/omitted independently. If both are omitted, a single
`perf.svg` will be produced covering the full input test set. Additionally, their effects can be combined by providing
a third `-c` option (this will produce 2 files `filtered-top.svg` and `filtered-bot.svg` instead of 3).
`top.svg` and `bot.svg` (top 50 speedups and slowdowns over the entire test set, both enabled by the `-s` option) in the
current directory. The `-f` and `-s` options can be used/omitted independently. If both are omitted, a single `perf.svg`
will be produced covering the full input test set. Additionally, their effects can be combined by providing a third `-c`
option (this will produce 2 files `filtered-top.svg` and `filtered-bot.svg` instead of 3). An optional key `-o` can be
supplied to specify an output directory for the generated files.

There is also a legacy script `scripts/plot-performance/chart_perf.sh` that can be used to generate comparison charts
in both `svg` and `png` formats. It requires [gnuplot](http://www.gnuplot.info/) to run and assumes both files contain
@@ -358,14 +359,14 @@ using**.
[BareSpec]: liquidhaskell-boot/src/Language/Haskell/Liquid/Types/Specs.hs#L362
[LiftedSpec]: liquidhaskell-boot/src/Language/Haskell/Liquid/Types/Specs.hs#L559
[TargetSrc]: liquidhaskell-boot/src/Language/Haskell/Liquid/Types/Specs.hs#L158
[Ghc monad]: https://hackage.haskell.org/package/ghc-9.2.5/docs/GHC.html#t:Ghc
[HscEnv]: https://hackage.haskell.org/package/ghc-9.2.5/docs/GHC.html#t:HscEnv
[DynFlags]: https://hackage.haskell.org/package/ghc-9.2.5/docs/GHC.html#t:DynFlags
[GhcMonad]: https://hackage.haskell.org/package/ghc-9.2.5/docs/GHC.html#t:GhcMonad
[Ghc monad]: https://hackage.haskell.org/package/ghc-9.2.7/docs/GHC.html#t:Ghc
[HscEnv]: https://hackage.haskell.org/package/ghc-9.2.7/docs/GHC.html#t:HscEnv
[DynFlags]: https://hackage.haskell.org/package/ghc-9.2.7/docs/GHC.html#t:DynFlags
[GhcMonad]: https://hackage.haskell.org/package/ghc-9.2.7/docs/GHC.html#t:GhcMonad
[typechecking phase]: liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin.hs#L211-L226
[ghcide]: https://github.com/haskell/ghcide
[findRelevantSpecs]: liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin/SpecFinder.hs#L65
[core binds]: https://hackage.haskell.org/package/ghc-9.2.5/docs/CoreSyn.html#t:CoreBind
[core binds]: https://hackage.haskell.org/package/ghc-9.2.7/docs/CoreSyn.html#t:CoreBind
[configureGhcTargets]: liquidhaskell-boot/src-ghc/Liquid/GHC/Interface.hs#L254
[processTargetModule]: liquidhaskell-boot/src-ghc/Liquid/GHC/Interface.hs#L483
[processModule]: liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin.hs#L509
2 changes: 1 addition & 1 deletion cabal.project
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
with-compiler: ghc-9.2.5
with-compiler: ghc-9.2.7

packages: .
./liquid-fixpoint
4 changes: 2 additions & 2 deletions liquidhaskell-boot/liquidhaskell-boot.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: liquidhaskell-boot
version: 0.9.2.5.0
version: 0.9.2.7.0
synopsis: Liquid Types for Haskell
description: Liquid Types for Haskell.
license: BSD-3-Clause
@@ -10,7 +10,7 @@ maintainer: Ranjit Jhala <[email protected]>
category: Language
homepage: https://github.com/ucsd-progsys/liquidhaskell
build-type: Simple
tested-with: GHC == 9.2.5
tested-with: GHC == 9.2.7

data-files: include/CoreToLogic.lg
syntax/liquid.css
8 changes: 4 additions & 4 deletions liquidhaskell.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: liquidhaskell
version: 0.9.2.5.0
version: 0.9.2.7.0
synopsis: Liquid Types for Haskell
description: Liquid Types for Haskell.
license: BSD-3-Clause
@@ -11,7 +11,7 @@ maintainer: Ranjit Jhala <[email protected]>
category: Language
homepage: https://github.com/ucsd-progsys/liquidhaskell
build-type: Custom
tested-with: GHC == 9.2.5
tested-with: GHC == 9.2.7
extra-source-files: CHANGES.md
README.md

@@ -82,8 +82,8 @@ library
hs-source-dirs: src

build-depends: base >= 4.11.1.0 && < 5,
liquidhaskell-boot == 0.9.2.5.0,
bytestring == 0.11.3.1,
liquidhaskell-boot == 0.9.2.7.0,
bytestring == 0.11.4.0,
containers == 0.6.5.1,
ghc-prim
default-language: Haskell98
2 changes: 1 addition & 1 deletion src/Data/ByteString_LHAssumptions.hs
Original file line number Diff line number Diff line change
@@ -12,7 +12,7 @@ invariant { bs : Data.ByteString.ByteString | 0 <= bslen bs }

invariant { bs : Data.ByteString.ByteString | bslen bs == stringlen bs }

assume Data.ByteString.Internal.empty :: { bs : Data.ByteString.ByteString | bslen bs == 0 }
assume Data.ByteString.Internal.Type.empty :: { bs : Data.ByteString.ByteString | bslen bs == 0 }

assume Data.ByteString.singleton :: _ -> { bs : Data.ByteString.ByteString | bslen bs == 1 }