Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • ghc/ghc
  • bgamari/ghc
  • syd/ghc
  • ggreif/ghc
  • watashi/ghc
  • RolandSenn/ghc
  • mpickering/ghc
  • DavidEichmann/ghc
  • carter/ghc
  • harpocrates/ghc
  • ethercrow/ghc
  • mijicd/ghc
  • adamse/ghc
  • alexbiehl/ghc
  • gridaphobe/ghc
  • trofi/ghc
  • supersven/ghc
  • ppk/ghc
  • ulysses4ever/ghc
  • AndreasK/ghc
  • ghuntley/ghc
  • shayne-fletcher-da/ghc
  • fgaz/ghc
  • yav/ghc
  • osa1/ghc
  • mbbx6spp/ghc
  • JulianLeviston/ghc
  • reactormonk/ghc
  • rae/ghc
  • takenobu-hs/ghc
  • michalt/ghc
  • andrewthad/ghc
  • hsyl20/ghc
  • scottgw/ghc
  • sjakobi/ghc
  • angerman/ghc
  • RyanGlScott/ghc
  • hvr/ghc
  • howtonotwin/ghc
  • chessai/ghc
  • m-renaud/ghc
  • brprice/ghc
  • stevehartdata/ghc
  • sighingnow/ghc
  • kgardas/ghc
  • ckoparkar/ghc
  • alp/ghc
  • smaeul/ghc
  • kakkun61/ghc
  • sykloid/ghc
  • newhoggy/ghc
  • toonn/ghc
  • nineonine/ghc
  • Phyx/ghc
  • ezyang/ghc
  • tweag/ghc
  • langston/ghc
  • ndmitchell/ghc
  • rockbmb/ghc
  • artempyanykh/ghc
  • mniip/ghc
  • mynguyenbmc/ghc
  • alexfmpe/ghc
  • crockeea/ghc
  • nh2/ghc
  • vaibhavsagar/ghc
  • phadej/ghc
  • Haskell-mouse/ghc
  • lolotp/ghc
  • spacekitteh/ghc
  • michaelpj/ghc
  • mgsloan/ghc
  • HPCohen/ghc
  • tmobile/ghc
  • radrow/ghc
  • simonmar/ghc
  • _deepfire/ghc
  • Ericson2314/ghc
  • leitao/ghc
  • fumieval/ghc
  • trac-isovector/ghc
  • cblp/ghc
  • xich/ghc
  • ciil/ghc
  • erthalion/ghc
  • xldenis/ghc
  • autotaker/ghc
  • haskell-wasm/ghc
  • kcsongor/ghc
  • agander/ghc
  • Baranowski/ghc
  • trac-dredozubov/ghc
  • 23Skidoo/ghc
  • iustin/ghc
  • ningning/ghc
  • josefs/ghc
  • kabuhr/ghc
  • gallais/ghc
  • dten/ghc
  • expipiplus1/ghc
  • Pluralia/ghc
  • rohanjr/ghc
  • intricate/ghc
  • kirelagin/ghc
  • Javran/ghc
  • DanielG/ghc
  • trac-mizunashi_mana/ghc
  • pparkkin/ghc
  • bollu/ghc
  • ntc2/ghc
  • jaspervdj/ghc
  • JoshMeredith/ghc
  • wz1000/ghc
  • zkourouma/ghc
  • code5hot/ghc
  • jdprice/ghc
  • tdammers/ghc
  • J-mie6/ghc
  • trac-lantti/ghc
  • ch1bo/ghc
  • cgohla/ghc
  • lucamolteni/ghc
  • acairncross/ghc
  • amerocu/ghc
  • chreekat/ghc
  • txsmith/ghc
  • trupill/ghc
  • typetetris/ghc
  • sergv/ghc
  • fryguybob/ghc
  • erikd/ghc
  • trac-roland/ghc
  • setupminimal/ghc
  • Friede80/ghc
  • SkyWriter/ghc
  • xplorld/ghc
  • abrar/ghc
  • obsidiansystems/ghc
  • Icelandjack/ghc
  • adinapoli/ghc
  • trac-matthewbauer/ghc
  • heatsink/ghc
  • dwijnand/ghc
  • Cmdv/ghc
  • alinab/ghc
  • pepeiborra/ghc
  • fommil/ghc
  • luochen1990/ghc
  • rlupton20/ghc
  • applePrincess/ghc
  • lehins/ghc
  • ronmrdechai/ghc
  • leeadam/ghc
  • harendra/ghc
  • mightymosquito1991/ghc
  • trac-gershomb/ghc
  • lucajulian/ghc
  • Rizary/ghc
  • VictorCMiraldo/ghc
  • jamesbrock/ghc
  • andrewdmeier/ghc
  • luke/ghc
  • pranaysashank/ghc
  • cocreature/ghc
  • hithroc/ghc
  • obreitwi/ghc
  • slrtbtfs/ghc
  • kaol/ghc
  • yairchu/ghc
  • Mathemagician98/ghc
  • trac-taylorfausak/ghc
  • leungbk/ghc
  • MichaWiedenmann/ghc
  • chris-martin/ghc
  • TDecki/ghc
  • adithyaov/ghc
  • trac-gelisam/ghc
  • Lysxia/ghc
  • complyue/ghc
  • bwignall/ghc
  • sternmull/ghc
  • sonika/ghc
  • leif/ghc
  • broadwaylamb/ghc
  • myszon/ghc
  • danbroooks/ghc
  • Mechachleopteryx/ghc
  • zardyh/ghc
  • trac-vdukhovni/ghc
  • OmarKhaledAbdo/ghc
  • arrowd/ghc
  • Bodigrim/ghc
  • matheus23/ghc
  • cardenaso11/ghc
  • trac-Athas/ghc
  • mb720/ghc
  • DylanZA/ghc
  • liff/ghc
  • typedrat/ghc
  • trac-claude/ghc
  • jbm/ghc
  • Gertjan423/ghc
  • PHO/ghc
  • JKTKops/ghc
  • kockahonza/ghc
  • msakai/ghc
  • Sir4ur0n/ghc
  • barambani/ghc
  • vishnu.c/ghc
  • dcoutts/ghc
  • trac-runeks/ghc
  • trac-MaxGabriel/ghc
  • lexi.lambda/ghc
  • strake/ghc
  • spavikevik/ghc
  • JakobBruenker/ghc
  • rmanne/ghc
  • gdziadkiewicz/ghc
  • ani/ghc
  • iliastsi/ghc
  • smunix/ghc
  • judah/ghc
  • blackgnezdo/ghc
  • emilypi/ghc
  • trac-bpfoley/ghc
  • muesli4/ghc
  • trac-gkaracha/ghc
  • Kleidukos/ghc
  • nek0/ghc
  • TristanCacqueray/ghc
  • dwulive/ghc
  • mbakke/ghc
  • arybczak/ghc
  • Yang123321/ghc
  • maksbotan/ghc
  • QuietMisdreavus/ghc
  • trac-olshanskydr/ghc
  • emekoi/ghc
  • samuela/ghc
  • josephcsible/ghc
  • dramforever/ghc
  • lpsmith/ghc
  • DenisFrezzato/ghc
  • michivi/ghc
  • jneira/ghc
  • jeffhappily/ghc
  • Ivan-Yudin/ghc
  • nakaji-dayo/ghc
  • gdevanla/ghc
  • galen/ghc
  • fendor/ghc
  • yaitskov/ghc
  • rcythr/ghc
  • awpr/ghc
  • jeremyschlatter/ghc
  • Aver1y/ghc
  • mitchellvitez/ghc
  • merijn/ghc
  • tomjaguarpaw1/ghc
  • trac-NoidedSuper/ghc
  • erewok/ghc
  • trac-junji.hashimoto/ghc
  • adamwespiser/ghc
  • bjaress/ghc
  • jhrcek/ghc
  • leonschoorl/ghc
  • lukasz-golebiewski/ghc
  • sheaf/ghc
  • last-g/ghc
  • carassius1014/ghc
  • eschwartz/ghc
  • dwincort/ghc
  • felixwiemuth/ghc
  • TimWSpence/ghc
  • marcusmonteirodesouza/ghc
  • WJWH/ghc
  • vtols/ghc
  • theobat/ghc
  • BinderDavid/ghc
  • ckoparkar0/ghc
  • alexander-kjeldaas/ghc
  • dme2/ghc
  • philderbeast/ghc
  • aaronallen8455/ghc
  • rayshih/ghc
  • benkard/ghc
  • mpardalos/ghc
  • saidelman/ghc
  • leiftw/ghc
  • ca333/ghc
  • bwroga/ghc
  • nmichael44/ghc
  • trac-crobbins/ghc
  • felixonmars/ghc
  • adityagupta1089/ghc
  • hgsipiere/ghc
  • treeowl/ghc
  • alexpeits/ghc
  • CraigFe/ghc
  • dnlkrgr/ghc
  • kerckhove_ts/ghc
  • cptwunderlich/ghc
  • eiais/ghc
  • hahohihu/ghc
  • sanchayan/ghc
  • lemmih/ghc
  • sehqlr/ghc
  • trac-dbeacham/ghc
  • luite/ghc
  • trac-f-a/ghc
  • vados/ghc
  • luntain/ghc
  • fatho/ghc
  • alexbiehl-gc/ghc
  • dcbdan/ghc
  • tvh/ghc
  • liam-ly/ghc
  • timbobbarnes/ghc
  • GovanifY/ghc
  • shanth2600/ghc
  • gliboc/ghc
  • duog/ghc
  • moxonsghost/ghc
  • zander/ghc
  • masaeedu/ghc
  • georgefst/ghc
  • guibou/ghc
  • nicuveo/ghc
  • mdebruijne/ghc
  • stjordanis/ghc
  • emiflake/ghc
  • wygulmage/ghc
  • frasertweedale/ghc
  • coot/ghc
  • aratamizuki/ghc
  • tsandstr/ghc
  • mrBliss/ghc
  • Anton-Latukha/ghc
  • tadfisher/ghc
  • vapourismo/ghc
  • Sorokin-Anton/ghc
  • basile-henry/ghc
  • trac-mightybyte/ghc
  • AbsoluteNikola/ghc
  • cobrien99/ghc
  • songzh/ghc
  • blamario/ghc
  • aj4ayushjain/ghc
  • trac-utdemir/ghc
  • tangcl/ghc
  • hdgarrood/ghc
  • maerwald/ghc
  • arjun/ghc
  • ratherforky/ghc
  • haskieLambda/ghc
  • EmilGedda/ghc
  • Bogicevic/ghc
  • eddiejessup/ghc
  • kozross/ghc
  • AlistairB/ghc
  • 3Rafal/ghc
  • christiaanb/ghc
  • trac-bit/ghc
  • matsumonkie/ghc
  • trac-parsonsmatt/ghc
  • chisui/ghc
  • jaro/ghc
  • trac-kmiyazato/ghc
  • davidsd/ghc
  • Tritlo/ghc
  • I-B-3/ghc
  • lykahb/ghc
  • AriFordsham/ghc
  • turion1/ghc
  • berberman/ghc
  • christiantakle/ghc
  • zyklotomic/ghc
  • trac-ocramz/ghc
  • CSEdd/ghc
  • doyougnu/ghc
  • mmhat/ghc
  • why-not-try-calmer/ghc
  • plutotulp/ghc
  • kjekac/ghc
  • Manvi07/ghc
  • teo/ghc
  • cactus/ghc
  • CarrieMY/ghc
  • abel/ghc
  • yihming/ghc
  • tsakki/ghc
  • jessicah/ghc
  • oliverbunting/ghc
  • meld/ghc
  • friedbrice/ghc
  • Joald/ghc
  • abarbu/ghc
  • DigitalBrains1/ghc
  • sterni/ghc
  • alexDarcy/ghc
  • hexchain/ghc
  • minimario/ghc
  • zliu41/ghc
  • tommd/ghc
  • jazcarate/ghc
  • peterbecich/ghc
  • alirezaghey/ghc
  • solomon/ghc
  • mikael.urankar/ghc
  • davjam/ghc
  • int-index/ghc
  • MorrowM/ghc
  • nrnrnr/ghc
  • Sonfamm/ghc-test-only
  • afzt1/ghc
  • nguyenhaibinh-tpc/ghc
  • trac-lierdakil/ghc
  • MichaWiedenmann1/ghc
  • jmorag/ghc
  • Ziharrk/ghc
  • trac-MitchellSalad/ghc
  • juampe/ghc
  • jwaldmann/ghc
  • snowleopard/ghc
  • juhp/ghc
  • normalcoder/ghc
  • ksqsf/ghc
  • trac-jberryman/ghc
  • roberth/ghc
  • 1ntEgr8/ghc
  • epworth/ghc
  • MrAdityaAlok/ghc
  • JunmingZhao42/ghc
  • jappeace/ghc
  • trac-Gabriel439/ghc
  • alt-romes/ghc
  • HugoPeters1024/ghc
  • 10ne1/ghc-fork
  • agentultra/ghc
  • Garfield1002/ghc
  • ChickenProp/ghc
  • clyring/ghc
  • MaxHearnden/ghc
  • jumper149/ghc
  • vem/ghc
  • ketzacoatl/ghc
  • Rosuavio/ghc
  • jackohughes/ghc
  • p4l1ly/ghc
  • konsumlamm/ghc
  • shlevy/ghc
  • torsten.schmits/ghc
  • andremarianiello/ghc
  • amesgen/ghc
  • googleson78/ghc
  • InfiniteVerma/ghc
  • uhbif19/ghc
  • yiyunliu/ghc
  • raehik/ghc
  • mrkun/ghc
  • telser/ghc
  • 1Jajen1/ghc
  • slotThe/ghc
  • WinstonHartnett/ghc
  • mpilgrem/ghc
  • dreamsmasher/ghc
  • schuelermine/ghc
  • trac-Viwor/ghc
  • undergroundquizscene/ghc
  • evertedsphere/ghc
  • coltenwebb/ghc
  • oberblastmeister/ghc
  • agrue/ghc
  • lf-/ghc
  • zacwood9/ghc
  • steshaw/ghc
  • high-cloud/ghc
  • SkamDart/ghc
  • PiDelport/ghc
  • maoif/ghc
  • RossPaterson/ghc
  • CharlesTaylor7/ghc
  • ribosomerocker/ghc
  • trac-ramirez7/ghc
  • daig/ghc
  • NicolasT/ghc
  • FinleyMcIlwaine/ghc
  • lawtonnichols/ghc
  • jmtd/ghc
  • ozkutuk/ghc
  • wildsebastian/ghc
  • nikshalark/ghc
  • lrzlin/ghc
  • tobias/ghc
  • fw/ghc
  • hawkinsw/ghc
  • type-dance/ghc
  • rui314/ghc
  • ocharles/ghc
  • wavewave/ghc
  • TheKK/ghc
  • nomeata/ghc
  • trac-csabahruska/ghc
  • jonathanjameswatson/ghc
  • L-as/ghc
  • Axman6/ghc
  • barracuda156/ghc
  • trac-jship/ghc
  • jake-87/ghc
  • meooow/ghc
  • rebeccat/ghc
  • hamana55/ghc
  • Enigmage/ghc
  • kokobd/ghc
  • agevelt/ghc
  • gshen42/ghc
  • chrismwendt/ghc
  • MangoIV/ghc
  • teto/ghc
  • Sookr1/ghc
  • trac-thomasjm/ghc
  • barci2/ghc-dev
  • trac-m4dc4p/ghc
  • dixonary/ghc
  • breakerzirconia/ghc
  • alexsio27444/ghc
  • glocq/ghc
  • sourabhxyz/ghc
  • ryantrinkle/ghc
  • Jade/ghc
  • scedfaliako/ghc
  • martijnbastiaan/ghc
  • trac-george.colpitts/ghc
  • ammarbinfaisal/ghc
  • mimi.vx/ghc
  • lortabac/ghc
  • trac-zyla/ghc
  • benbellick/ghc
  • aadaa-fgtaa/ghc
  • jvanbruegge/ghc
  • archbung/ghc
  • gilmi/ghc
  • mfonism/ghc
  • alex-mckenna/ghc
  • Ei30metry/ghc
  • DiegoDiverio/ghc
  • jorgecunhamendes/ghc
  • liesnikov/ghc
  • akrmn/ghc
  • trac-simplifierticks/ghc
  • jacco/ghc
  • rhendric/ghc
  • damhiya/ghc
  • ryndubei/ghc
  • DaveBarton/ghc
  • trac-Profpatsch/ghc
  • GZGavinZhao/ghc
  • ncfavier/ghc
  • jameshaydon/ghc
  • ajccosta/ghc
  • dschrempf/ghc
  • cydparser/ghc
  • LinuxUserGD/ghc
  • elodielander/ghc
  • facundominguez/ghc
  • psilospore/ghc
  • lachrimae/ghc
  • dylan-thinnes/ghc-type-errors-plugin
  • hamishmack/ghc
  • Leary/ghc
  • lzszt/ghc
  • lyokha/ghc
  • trac-glaubitz/ghc
  • Rewbert/ghc
  • andreabedini/ghc
  • Jasagredo/ghc
  • sol/ghc
  • OlegAlexander/ghc
  • trac-sthibaul/ghc
  • avdv/ghc
  • Wendaolee/ghc
  • ur4t/ghc
  • daylily/ghc
  • boltzmannrain/ghc
  • mmzk1526/ghc
  • trac-fizzixnerd/ghc
  • soulomoon/ghc
  • rwmjones/ghc
  • j14i/ghc
  • tracsis/ghc
  • gesh/ghc
  • flip101/ghc
  • eldritch-cookie/ghc
  • LemonjamesD/ghc
  • pgujjula/ghc
  • skeuchel/ghc
  • noteed/ghc
  • gulin.serge/ghc
  • Torrekie/ghc
  • jlwoodwa/ghc
  • ayanamists/ghc
  • husong998/ghc
  • trac-edmundnoble/ghc
  • josephf/ghc
  • contrun/ghc
  • baulig/ghc
  • edsko/ghc
  • mzschr/ghc-issue-24732
  • ulidtko/ghc
  • Arsen/ghc
  • trac-sjoerd_visscher/ghc
  • crumbtoo/ghc
  • L0neGamer/ghc
  • DrewFenwick/ghc
  • benz0li/ghc
  • MaciejWas/ghc
  • jordanrule/ghc
  • trac-qqwy/ghc
  • LiamGoodacre/ghc
  • isomorpheme/ghc
  • trac-danidiaz/ghc
  • Kariim/ghc
  • MTaimoorZaeem/ghc
  • hololeap/ghc
  • ticat-fp/ghc
  • meritamen/ghc
  • criskell/ghc
  • trac-kraai/ghc
  • aergus/ghc
  • jdral/ghc
  • SamB/ghc
  • Tristian/ghc
  • ywgrit/ghc
  • KatsuPatrick/ghc
  • OsePedro/ghc
  • mpscholten/ghc
  • fp/ghc
  • zaquest/ghc
  • fangyi-zhou/ghc
  • augyg/ghc
  • rkirkman/ghc
641 results
Show changes
Showing
with 2527 additions and 1803 deletions
......@@ -6,9 +6,9 @@ set -Eeuo pipefail
# This is a script for preparing and uploading a release of GHC.
#
# Usage,
# 1. Update $ver
# 2. Set $SIGNING_KEY to your key id (prefixed with '=')
# 3. Create a directory and place the source and binary tarballs there
# 1. Set $SIGNING_KEY to your key id (prefixed with '=')
# 2. Create a directory named after the release name (e.g. 9.6.1-rc1 or 9.6.1)
# 3. Place the source and binary tarballs in this directory
# 4. Run this script from that directory
#
# You can also invoke the script with an argument to perform only
......@@ -34,10 +34,10 @@ set -Eeuo pipefail
: ${SIGNING_KEY:="=Benjamin Gamari <ben@well-typed.com>"}
# Infer release name from directory name
# Infer friendly release name from directory name
: ${rel_name:=$(basename $(pwd))}
# Infer version from tarball names
# Infer project version from tarball names
: ${ver:=$(ls ghc-*.tar.* | sed -ne 's/ghc-\([0-9]\+\.[0-9]\+\.[0-9]\+\(\.[0-9]\+\)\?\).\+/\1/p' | head -n1)}
if [ -z "$ver" ]; then echo "Failed to infer \$ver"; exit 1; fi
......@@ -59,8 +59,10 @@ usage() {
echo " prepare_docs prepare the documentation directory"
echo " upload_docs upload documentation downloads.haskell.org"
echo " upload upload the tarballs and documentation to downloads.haskell.org"
echo " set_symlink <symlink>"
echo " set the given symlink (e.g. latest) to the current version"
echo " purge_all purge entire release from the CDN"
echo " purge_file file purge a given file from the CDN"
echo " purge_file <file> purge a given file from the CDN"
echo " verify verify the signatures in this directory"
echo
}
......@@ -78,6 +80,7 @@ function hash_files() {
echo $(find -maxdepth 1 \
-iname '*.xz' \
-o -iname '*.lz' \
-o -iname '*.gz' \
-o -iname '*.bz2' \
-o -iname '*.zip' \
)
......@@ -136,7 +139,7 @@ function upload() {
}
function purge_all() {
dir="$(echo $rel_name | sed s/-release//)"
local dir="$(echo $rel_name | sed s/-release//)"
# Purge CDN cache
curl -X PURGE http://downloads.haskell.org/ghc/
curl -X PURGE http://downloads.haskell.org/~ghc/
......@@ -145,77 +148,46 @@ function purge_all() {
curl -X PURGE http://downloads.haskell.org/~ghc/$dir
curl -X PURGE http://downloads.haskell.org/~ghc/$dir/
for i in *; do
purge_file $i
purge_file "$i"
done
}
function purge_file() {
curl -X PURGE http://downloads.haskell.org/~ghc/$rel_name/$i
curl -X PURGE http://downloads.haskell.org/~ghc/$rel_name/$i/
curl -X PURGE http://downloads.haskell.org/~ghc/$rel_name/$i/docs/
curl -X PURGE http://downloads.haskell.org/ghc/$rel_name/$i
curl -X PURGE http://downloads.haskell.org/ghc/$rel_name/$i/
curl -X PURGE http://downloads.haskell.org/ghc/$rel_name/$i/docs/
dirs=(
"~ghc/$rel_name"
"ghc/$rel_name"
"~ghc/$ver"
"ghc/$ver"
)
for dir in ${dirs[@]}; do
curl -X PURGE http://downloads.haskell.org/$dir/$1
curl -X PURGE http://downloads.haskell.org/$dir/$1/
curl -X PURGE http://downloads.haskell.org/$dir/$1/docs/
done
}
function prepare_docs() {
echo "THIS COMMAND IS DEPRECATED, THE DOCS FOLDER SHOULD BE PREPARED BY THE FETCH SCRIPT"
local tmp
rm -Rf docs
if [ -z "$GHC_TREE" ]; then
tmp="$(mktemp -d)"
tar -xf "ghc-$ver-src.tar.xz" -C "$tmp"
GHC_TREE="$tmp/ghc-$ver"
fi
mkdocs="$GHC_TREE/distrib/mkDocs/mkDocs"
if [ ! -e "$mkdocs" ]; then
echo "Couldn't find GHC mkDocs at $mkdocs."
echo "Perhaps you need to override GHC_TREE?"
rm -Rf "$tmp"
exit 1
fi
windows_bindist="$(ls ghc-$ver-x86_64-unknown-mingw32.tar.xz | head -n1)"
linux_bindist="$(ls ghc-$ver-x86_64-deb9-linux.tar.xz | head -n1)"
echo "Windows bindist: $windows_bindist"
echo "Linux bindist: $linux_bindist"
$ENTER_FHS_ENV $mkdocs $linux_bindist $windows_bindist
if [ -d "$tmp" ]; then rm -Rf "$tmp"; fi
mkdir -p docs/html
tar -Jxf "$linux_bindist"
cp -R "ghc-$ver/docs/users_guide/build-html/users_guide docs/html/users_guide"
#cp -R ghc-$ver/utils/haddock/doc/haddock docs/html/haddock
rm -R "ghc-$ver"
tar -Jxf docs/libraries.html.tar.xz -C docs/html
mv docs/index.html docs/html
}
function recompress() {
set -Eeuo pipefail
combine <(basename -s .xz *.xz) not <(basename -s .lz *.lz) | \
parallel 'echo "Recompressing {}.xz to {}.lz"; unxz -c {}.xz | lzip - -o {}.lz'
for darwin_bindist in $(ls ghc-*-darwin.tar.xz); do
local dest="$(basename $darwin_bindist .xz).bz2"
if [[ ! -f "$dest" ]]; then
echo "Recompressing Darwin bindist to bzip2..."
unxz -c "$darwin_bindist" | bzip2 > "$dest"
fi
needed=()
for i in ghc-*.tar.xz; do
needed+=( "$(basename $i .xz).gz" )
done
for i in ghc-*-darwin.tar.xz; do
needed+=( "$(basename $i .xz).bz2" )
done
for windows_bindist in $(ls ghc-*-mingw32*.tar.xz); do
local tmp="$(mktemp -d tmp.XXX)"
local dest="$(realpath $(basename $windows_bindist .tar.xz).zip)"
echo $dest
if [[ ! -f "$dest" ]]; then
echo "Recompressing Windows bindist to zip..."
tar -C "$tmp" -xf "$windows_bindist"
ls $tmp
(cd "$tmp"; zip -9 -r "$dest" *)
fi
rm -R "$tmp"
for i in ghc-*-mingw32.tar.xz; do
needed+=( "$(basename $i .tar.xz).zip" )
done
recompress-all -j10 ${needed[@]}
}
function upload_docs() {
......@@ -230,6 +202,14 @@ function upload_docs() {
"$GHC_TREE/.gitlab/rel_eng/upload_ghc_libs.py" upload --docs=hackage_docs ${args[@]}
}
function set_symlink() {
local SYMLINK="$1"
# Check to make sure that the indicated version actually exists.
curl "https://downloads.haskell.org/ghc/$ver" > /dev/null || (echo "$ver doesn't exist"; exit 1)
echo -e "rm ghc/$SYMLINK\nln -s $ver ghc/$SYMLINK" | sftp ghc@downloads-origin.haskell.org
curl -X PURGE "http://downloads.haskell.org/~ghc/$SYMLINK"
}
if [ "x$1" == "x" ]; then
recompress
gen_hashes
......
......@@ -49,6 +49,10 @@ def prep_base():
shutil.copy('config.guess', 'libraries/base')
shutil.copy('config.sub', 'libraries/base')
def prep_ghc_internal():
shutil.copy('config.guess', 'libraries/ghc-internal')
shutil.copy('config.sub', 'libraries/ghc-internal')
def build_copy_file(pkg: Package, f: Path):
target = Path('_build') / 'stage1' / pkg.path / 'build' / f
dest = pkg.path / f
......@@ -89,19 +93,35 @@ def prep_ghc():
build_copy_file(PACKAGES['ghc'], 'GHC/Platform/Constants.hs')
build_copy_file(PACKAGES['ghc'], 'GHC/Settings/Config.hs')
def prep_ghc_boot_th():
# Drop references to `ghc-internal` from `hs-source-dirs` as Hackage rejects
# out-of-sdist references and this packages is only uploaded for documentation
# purposes.
modify_file(PACKAGES['ghc-boot-th'], 'ghc-boot-th.cabal',
lambda s: s.replace('../ghc-internal/src', '')
.replace('GHC.Internal.TH.Lib', '')
.replace('GHC.Internal.TH.Syntax', '')
.replace('GHC.Internal.ForeignSrcLang', '')
.replace('GHC.Internal.LanguageExtensions', '')
.replace('GHC.Internal.Lexeme', '')
)
PACKAGES = {
pkg.name: pkg
for pkg in [
Package('base', Path("libraries/base"), prep_base),
Package('ghc-internal', Path("libraries/ghc-internal"), prep_ghc_internal),
Package('ghc-experimental', Path("libraries/ghc-experimental"), no_prep),
Package('ghc-prim', Path("libraries/ghc-prim"), prep_ghc_prim),
Package('integer-gmp', Path("libraries/integer-gmp"), no_prep),
Package('ghc-bignum', Path("libraries/ghc-bignum"), prep_ghc_bignum),
Package('template-haskell', Path("libraries/template-haskell"), no_prep),
Package('ghc-heap', Path("libraries/ghc-heap"), no_prep),
Package('ghc-boot', Path("libraries/ghc-boot"), prep_ghc_boot),
Package('ghc-boot-th', Path("libraries/ghc-boot-th"), no_prep),
Package('ghc-boot-th', Path("libraries/ghc-boot-th"), prep_ghc_boot_th),
Package('ghc-compact', Path("libraries/ghc-compact"), no_prep),
Package('ghc', Path("compiler"), prep_ghc),
Package('ghci', Path("libraries/ghci"), no_prep),
]
}
# Dict[str, Package]
......
......@@ -91,11 +91,6 @@
path = libraries/stm
url = https://gitlab.haskell.org/ghc/packages/stm.git
ignore = untracked
[submodule "utils/haddock"]
path = utils/haddock
url = https://gitlab.haskell.org/ghc/haddock.git
ignore = untracked
branch = ghc-head
[submodule "nofib"]
path = nofib
url = https://gitlab.haskell.org/ghc/nofib.git
......@@ -109,7 +104,7 @@
url = https://gitlab.haskell.org/ghc/libffi-tarballs.git
ignore = untracked
[submodule "gmp-tarballs"]
path = libraries/ghc-bignum/gmp/gmp-tarballs
path = libraries/ghc-internal/gmp/gmp-tarballs
url = https://gitlab.haskell.org/ghc/gmp-tarballs.git
[submodule "libraries/exceptions"]
path = libraries/exceptions
......@@ -120,3 +115,6 @@
[submodule "libraries/os-string"]
path = libraries/os-string
url = https://gitlab.haskell.org/ghc/packages/os-string
[submodule "libraries/file-io"]
path = libraries/file-io
url = https://gitlab.haskell.org/ghc/packages/file-io.git
# Confused about what this is? See
# https://gitlab.haskell.org/help/user/project/code_owners
# https://docs.gitlab.com/ee/user/project/codeowners/
# Catch-all
* @bgamari
......@@ -40,6 +40,7 @@
/compiler/GHC/HsToCore/Foreign/Wasm.hs @TerrorJack
/compiler/GHC/Tc/Deriv/ @RyanGlScott
/compiler/GHC/CmmToAsm/ @simonmar @bgamari @AndreasK
/compiler/GHC/CmmToAsm/RV64/ @supersven @angerman
/compiler/GHC/CmmToAsm/Wasm/ @TerrorJack
/compiler/GHC/CmmToLlvm/ @angerman
/compiler/GHC/StgToCmm/ @simonmar @osa1
......@@ -55,17 +56,20 @@
/compiler/GHC/Wasm/ @nrnrnr
/compiler/GHC/JS/ @luite @doyougnu @hsyl20 @JoshMeredith
/compiler/GHC/StgToJS/ @luite @doyougnu @hsyl20 @JoshMeredith
/compiler/GHC/Runtime/Interpreter/Wasm.hs @TerrorJack
[Core libraries]
/libraries/base/ @hvr
/libraries/ghci/ @simonmar
/libraries/template-haskell/ @rae
/testsuite/tests/interface-stability/ @core-libraries
[Internal utilities and libraries]
/utils/iserv-proxy/ @angerman @simonmar
/utils/iserv/ @angerman @simonmar
/utils/fs/ @Phyx
/utils/jsffi @TerrorJack
/utils/haddock @Kleidukos
[WinIO related code]
/libraries/base/GHC/Event/Windows/ @Phyx
......
......@@ -66,9 +66,6 @@ def autoreconf():
for dir_ in ['.', 'rts'] + glob.glob('libraries/*/'):
if os.path.isfile(os.path.join(dir_, 'configure.ac')):
print("Booting %s" % dir_)
# Update config.sub in submodules
if dir_ != '.' and os.path.isfile(os.path.join(dir_, 'config.sub')):
shutil.copyfile('config.sub', os.path.join(dir_, 'config.sub'))
processes[dir_] = subprocess.Popen(['sh', '-c', reconf_cmd], cwd=dir_)
# Wait for all child processes to finish.
......
......@@ -12,11 +12,13 @@ packages: ./compiler
-- ./libraries/deepseq/
./libraries/directory/
./libraries/exceptions/
./libraries/file-io/
./libraries/filepath/
-- ./libraries/ghc-bignum/
./libraries/ghc-boot/
-- ./libraries/ghc-boot-th/
./libraries/ghc-compact
./libraries/ghc-experimental
./libraries/ghc-heap
./libraries/ghci
-- ./libraries/ghc-prim
......@@ -25,6 +27,7 @@ packages: ./compiler
./libraries/hpc
-- ./libraries/integer-gmp
./libraries/mtl/
./libraries/os-string/
./libraries/parsec/
-- ./libraries/pretty/
./libraries/process/
......@@ -39,7 +42,11 @@ packages: ./compiler
./libraries/Win32/
./libraries/xhtml/
./utils/ghc-pkg
./utils/ghc-toolchain
./utils/ghc-toolchain/exe
./utils/haddock
./utils/haddock/haddock-api
./utils/haddock/haddock-library
./utils/hp2ps
./utils/hpc
./utils/hsc2hs
......@@ -61,15 +68,10 @@ constraints: ghc +internal-interpreter +dynamic-system-linke,
any.pretty installed,
any.template-haskell installed
allow-newer:
ghc-paths:Cabal,
*:base,
*:ghc-prim,
tree-diff:time
benchmarks: False
tests: False
allow-boot-library-installs: False
allow-boot-library-installs: True
-- Workaround for https://github.com/haskell/cabal/issues/7297
package *
......
-xc
-Irts
-Wimplicit
-include
rts/include/ghcversion.h
-Irts/include
-I.hie-bios/stage0/lib
-I_build/stage1/rts/build/include/
-I_build/stage1/rts/build
-I_build/stage1/rts/build/include
-Irts
-Ilibraries/ghc-internal/include
-I_build/stage1/libraries/ghc-internal/build/include
-Ilibraries/ghc-bignum/include
-I_build/stage1/libraries/ghc-bignum/build/include
-Wno-unknown-pragmas
-Wall
-Wextra
-Wstrict-prototypes
-Wmissing-prototypes
-Wmissing-declarations
-Winline
-Wpointer-arith
-Wmissing-noreturn
-Wnested-externs
-Wredundant-decls
-Wundef
-DFS_NAMESPACE=rts
-DCOMPILING_RTS
-DTHREADED_RTS
-DDEBUG
-DDYNAMIC
-DPROFILING
import GHC.Cmm.Expr
#if !(defined(MACHREGS_i386) || defined(MACHREGS_x86_64) \
|| defined(MACHREGS_powerpc) || defined(MACHREGS_aarch64))
|| defined(MACHREGS_powerpc) || defined(MACHREGS_aarch64) \
|| defined(MACHREGS_riscv64))
import GHC.Utils.Panic.Plain
#endif
import GHC.Platform.Reg
......@@ -1120,6 +1121,105 @@ freeReg REG_D6 = False
freeReg _ = True
#elif defined(MACHREGS_riscv64)
-- zero reg
freeReg 0 = False
-- link register
freeReg 1 = False
-- stack pointer
freeReg 2 = False
-- global pointer
freeReg 3 = False
-- thread pointer
freeReg 4 = False
-- frame pointer
freeReg 8 = False
-- made-up inter-procedural (ip) register
-- See Note [The made-up RISCV64 TMP (IP) register]
freeReg 31 = False
# if defined(REG_Base)
freeReg REG_Base = False
# endif
# if defined(REG_Sp)
freeReg REG_Sp = False
# endif
# if defined(REG_SpLim)
freeReg REG_SpLim = False
# endif
# if defined(REG_Hp)
freeReg REG_Hp = False
# endif
# if defined(REG_HpLim)
freeReg REG_HpLim = False
# endif
# if defined(REG_R1)
freeReg REG_R1 = False
# endif
# if defined(REG_R2)
freeReg REG_R2 = False
# endif
# if defined(REG_R3)
freeReg REG_R3 = False
# endif
# if defined(REG_R4)
freeReg REG_R4 = False
# endif
# if defined(REG_R5)
freeReg REG_R5 = False
# endif
# if defined(REG_R6)
freeReg REG_R6 = False
# endif
# if defined(REG_R7)
freeReg REG_R7 = False
# endif
# if defined(REG_R8)
freeReg REG_R8 = False
# endif
# if defined(REG_F1)
freeReg REG_F1 = False
# endif
# if defined(REG_F2)
freeReg REG_F2 = False
# endif
# if defined(REG_F3)
freeReg REG_F3 = False
# endif
# if defined(REG_F4)
freeReg REG_F4 = False
# endif
# if defined(REG_F5)
freeReg REG_F5 = False
# endif
# if defined(REG_F6)
freeReg REG_F6 = False
# endif
# if defined(REG_D1)
freeReg REG_D1 = False
# endif
# if defined(REG_D2)
freeReg REG_D2 = False
# endif
# if defined(REG_D3)
freeReg REG_D3 = False
# endif
# if defined(REG_D4)
freeReg REG_D4 = False
# endif
# if defined(REG_D5)
freeReg REG_D5 = False
# endif
# if defined(REG_D6)
freeReg REG_D6 = False
# endif
freeReg _ = True
#else
freeReg = panic "freeReg not defined for this platform"
......
This diff is collapsed.
This diff is collapsed.
......@@ -47,7 +47,7 @@ templateHaskellNames = [
litPName, varPName, tupPName, unboxedTupPName, unboxedSumPName,
conPName, tildePName, bangPName, infixPName,
asPName, wildPName, recPName, listPName, sigPName, viewPName,
typePName,
typePName, invisPName, orPName,
-- FieldPat
fieldPatName,
-- Match
......@@ -62,7 +62,7 @@ templateHaskellNames = [
fromEName, fromThenEName, fromToEName, fromThenToEName,
listEName, sigEName, recConEName, recUpdEName, staticEName, unboundVarEName,
labelEName, implicitParamVarEName, getFieldEName, projectionEName,
typeEName,
typeEName, forallEName, forallVisEName, constrainedEName,
-- FieldExp
fieldExpName,
-- Body
......@@ -75,12 +75,14 @@ templateHaskellNames = [
funDName, valDName, dataDName, newtypeDName, typeDataDName, tySynDName,
classDName, instanceWithOverlapDName,
standaloneDerivWithStrategyDName, sigDName, kiSigDName, forImpDName,
pragInlDName, pragOpaqueDName, pragSpecDName, pragSpecInlDName, pragSpecInstDName,
pragInlDName, pragOpaqueDName,
pragSpecDName, pragSpecInlDName, pragSpecEDName, pragSpecInlEDName,
pragSpecInstDName,
pragRuleDName, pragCompleteDName, pragAnnDName, pragSCCFunDName, pragSCCFunNamedDName,
defaultSigDName, defaultDName,
dataFamilyDName, openTypeFamilyDName, closedTypeFamilyDName,
dataInstDName, newtypeInstDName, tySynInstDName,
infixLDName, infixRDName, infixNDName,
infixLWithSpecDName, infixRWithSpecDName, infixNWithSpecDName,
roleAnnotDName, patSynDName, patSynSigDName,
implicitParamBindDName,
-- Cxt
......@@ -141,6 +143,9 @@ templateHaskellNames = [
-- Overlap
overlappableDataConName, overlappingDataConName, overlapsDataConName,
incoherentDataConName,
-- NamespaceSpecifier
noNamespaceSpecifierDataConName, typeNamespaceSpecifierDataConName,
dataNamespaceSpecifierDataConName,
-- DerivStrategy
stockStrategyName, anyclassStrategyName,
newtypeStrategyName, viaStrategyName,
......@@ -159,7 +164,8 @@ templateHaskellNames = [
liftClassName, quoteClassName,
-- And the tycons
qTyConName, nameTyConName, patTyConName, fieldPatTyConName, matchTyConName,
qTyConName, nameTyConName, patTyConName,
fieldPatTyConName, matchTyConName,
expQTyConName, fieldExpTyConName, predTyConName,
stmtTyConName, decsTyConName, conTyConName, bangTypeTyConName,
varBangTypeTyConName, typeQTyConName, expTyConName, decTyConName,
......@@ -175,21 +181,23 @@ templateHaskellNames = [
-- Quasiquoting
quoteDecName, quoteTypeName, quoteExpName, quotePatName]
thSyn, thLib, qqLib :: Module
thSyn = mkTHModule (fsLit "Language.Haskell.TH.Syntax")
thLib = mkTHModule (fsLit "Language.Haskell.TH.Lib.Internal")
qqLib = mkTHModule (fsLit "Language.Haskell.TH.Quote")
thSyn, thLib, qqLib, liftLib :: Module
thSyn = mkTHModule (fsLit "GHC.Internal.TH.Syntax")
thLib = mkTHModule (fsLit "GHC.Internal.TH.Lib")
qqLib = mkTHModule (fsLit "GHC.Internal.TH.Quote")
liftLib = mkTHModule (fsLit "GHC.Internal.TH.Lift")
mkTHModule :: FastString -> Module
mkTHModule m = mkModule thUnit (mkModuleNameFS m)
mkTHModule m = mkModule ghcInternalUnit (mkModuleNameFS m)
libFun, libTc, thFun, thTc, thCls, thCon :: FastString -> Unique -> Name
libFun, libTc, thFun, thTc, thCls, thCon, liftFun :: FastString -> Unique -> Name
libFun = mk_known_key_name varName thLib
libTc = mk_known_key_name tcName thLib
thFun = mk_known_key_name varName thSyn
thTc = mk_known_key_name tcName thSyn
thCls = mk_known_key_name clsName thSyn
thCon = mk_known_key_name dataName thSyn
liftFun = mk_known_key_name varName liftLib
thFld :: FastString -> FastString -> Unique -> Name
thFld con = mk_known_key_name (fieldName con) thSyn
......@@ -199,7 +207,7 @@ qqFld = mk_known_key_name (fieldName (fsLit "QuasiQuoter")) qqLib
-------------------- TH.Syntax -----------------------
liftClassName :: Name
liftClassName = thCls (fsLit "Lift") liftClassKey
liftClassName = mk_known_key_name clsName liftLib (fsLit "Lift") liftClassKey
quoteClassName :: Name
quoteClassName = thCls (fsLit "Quote") quoteClassKey
......@@ -235,8 +243,6 @@ returnQName = thFun (fsLit "returnQ") returnQIdKey
bindQName = thFun (fsLit "bindQ") bindQIdKey
sequenceQName = thFun (fsLit "sequenceQ") sequenceQIdKey
newNameName = thFun (fsLit "newName") newNameIdKey
liftName = thFun (fsLit "lift") liftIdKey
liftStringName = thFun (fsLit "liftString") liftStringIdKey
mkNameName = thFun (fsLit "mkName") mkNameIdKey
mkNameG_vName = thFun (fsLit "mkNameG_v") mkNameG_vIdKey
mkNameG_dName = thFun (fsLit "mkNameG_d") mkNameG_dIdKey
......@@ -249,7 +255,9 @@ mkModNameName = thFun (fsLit "mkModName") mkModNameIdKey
unTypeName = thFld (fsLit "TExp") (fsLit "unType") unTypeIdKey
unTypeCodeName = thFun (fsLit "unTypeCode") unTypeCodeIdKey
unsafeCodeCoerceName = thFun (fsLit "unsafeCodeCoerce") unsafeCodeCoerceIdKey
liftTypedName = thFun (fsLit "liftTyped") liftTypedIdKey
liftName = liftFun (fsLit "lift") liftIdKey
liftStringName = liftFun (fsLit "liftString") liftStringIdKey
liftTypedName = liftFun (fsLit "liftTyped") liftTypedIdKey
-------------------- TH.Lib -----------------------
......@@ -271,7 +279,7 @@ charPrimLName = libFun (fsLit "charPrimL") charPrimLIdKey
-- data Pat = ...
litPName, varPName, tupPName, unboxedTupPName, unboxedSumPName, conPName,
infixPName, tildePName, bangPName, asPName, wildPName, recPName, listPName,
sigPName, viewPName, typePName :: Name
sigPName, viewPName, typePName, invisPName, orPName :: Name
litPName = libFun (fsLit "litP") litPIdKey
varPName = libFun (fsLit "varP") varPIdKey
tupPName = libFun (fsLit "tupP") tupPIdKey
......@@ -287,7 +295,9 @@ recPName = libFun (fsLit "recP") recPIdKey
listPName = libFun (fsLit "listP") listPIdKey
sigPName = libFun (fsLit "sigP") sigPIdKey
viewPName = libFun (fsLit "viewP") viewPIdKey
orPName = libFun (fsLit "orP") orPIdKey
typePName = libFun (fsLit "typeP") typePIdKey
invisPName = libFun (fsLit "invisP") invisPIdKey
-- type FieldPat = ...
fieldPatName :: Name
......@@ -306,7 +316,8 @@ varEName, conEName, litEName, appEName, appTypeEName, infixEName, infixAppName,
sectionLName, sectionRName, lamEName, lamCaseEName, lamCasesEName, tupEName,
unboxedTupEName, unboxedSumEName, condEName, multiIfEName, letEName,
caseEName, doEName, mdoEName, compEName, staticEName, unboundVarEName,
labelEName, implicitParamVarEName, getFieldEName, projectionEName, typeEName :: Name
labelEName, implicitParamVarEName, getFieldEName, projectionEName, typeEName,
forallEName, forallVisEName, constrainedEName :: Name
varEName = libFun (fsLit "varE") varEIdKey
conEName = libFun (fsLit "conE") conEIdKey
litEName = libFun (fsLit "litE") litEIdKey
......@@ -348,6 +359,9 @@ implicitParamVarEName = libFun (fsLit "implicitParamVarE") implicitParamVarEIdKe
getFieldEName = libFun (fsLit "getFieldE") getFieldEIdKey
projectionEName = libFun (fsLit "projectionE") projectionEIdKey
typeEName = libFun (fsLit "typeE") typeEIdKey
forallEName = libFun (fsLit "forallE") forallEIdKey
forallVisEName = libFun (fsLit "forallVisE") forallVisEIdKey
constrainedEName = libFun (fsLit "constrainedE") constrainedEIdKey
-- type FieldExp = ...
fieldExpName :: Name
......@@ -374,13 +388,14 @@ recSName = libFun (fsLit "recS") recSIdKey
-- data Dec = ...
funDName, valDName, dataDName, newtypeDName, typeDataDName, tySynDName, classDName,
instanceWithOverlapDName, sigDName, kiSigDName, forImpDName, pragInlDName,
pragSpecDName, pragSpecInlDName, pragSpecInstDName, pragRuleDName,
pragSpecDName, pragSpecInlDName, pragSpecEDName, pragSpecInlEDName,
pragSpecInstDName, pragRuleDName,
pragAnnDName, pragSCCFunDName, pragSCCFunNamedDName,
standaloneDerivWithStrategyDName, defaultSigDName, defaultDName,
dataInstDName, newtypeInstDName, tySynInstDName, dataFamilyDName,
openTypeFamilyDName, closedTypeFamilyDName, infixLDName, infixRDName,
infixNDName, roleAnnotDName, patSynDName, patSynSigDName,
pragCompleteDName, implicitParamBindDName, pragOpaqueDName :: Name
openTypeFamilyDName, closedTypeFamilyDName, infixLWithSpecDName,
infixRWithSpecDName, infixNWithSpecDName, roleAnnotDName, patSynDName,
patSynSigDName, pragCompleteDName, implicitParamBindDName, pragOpaqueDName :: Name
funDName = libFun (fsLit "funD") funDIdKey
valDName = libFun (fsLit "valD") valDIdKey
dataDName = libFun (fsLit "dataD") dataDIdKey
......@@ -399,6 +414,8 @@ pragInlDName = libFun (fsLit "pragInlD")
pragOpaqueDName = libFun (fsLit "pragOpaqueD") pragOpaqueDIdKey
pragSpecDName = libFun (fsLit "pragSpecD") pragSpecDIdKey
pragSpecInlDName = libFun (fsLit "pragSpecInlD") pragSpecInlDIdKey
pragSpecEDName = libFun (fsLit "pragSpecED") pragSpecEDIdKey
pragSpecInlEDName = libFun (fsLit "pragSpecInlED") pragSpecInlEDIdKey
pragSpecInstDName = libFun (fsLit "pragSpecInstD") pragSpecInstDIdKey
pragRuleDName = libFun (fsLit "pragRuleD") pragRuleDIdKey
pragCompleteDName = libFun (fsLit "pragCompleteD") pragCompleteDIdKey
......@@ -411,9 +428,9 @@ tySynInstDName = libFun (fsLit "tySynInstD")
openTypeFamilyDName = libFun (fsLit "openTypeFamilyD") openTypeFamilyDIdKey
closedTypeFamilyDName = libFun (fsLit "closedTypeFamilyD") closedTypeFamilyDIdKey
dataFamilyDName = libFun (fsLit "dataFamilyD") dataFamilyDIdKey
infixLDName = libFun (fsLit "infixLD") infixLDIdKey
infixRDName = libFun (fsLit "infixRD") infixRDIdKey
infixNDName = libFun (fsLit "infixND") infixNDIdKey
infixLWithSpecDName = libFun (fsLit "infixLWithSpecD") infixLWithSpecDIdKey
infixRWithSpecDName = libFun (fsLit "infixRWithSpecD") infixRWithSpecDIdKey
infixNWithSpecDName = libFun (fsLit "infixNWithSpecD") infixNWithSpecDIdKey
roleAnnotDName = libFun (fsLit "roleAnnotD") roleAnnotDIdKey
patSynDName = libFun (fsLit "patSynD") patSynDIdKey
patSynSigDName = libFun (fsLit "patSynSigD") patSynSigDIdKey
......@@ -655,6 +672,17 @@ overlappingDataConName = thCon (fsLit "Overlapping") overlappingDataConKey
overlapsDataConName = thCon (fsLit "Overlaps") overlapsDataConKey
incoherentDataConName = thCon (fsLit "Incoherent") incoherentDataConKey
-- data NamespaceSpecifier = ...
noNamespaceSpecifierDataConName,
typeNamespaceSpecifierDataConName,
dataNamespaceSpecifierDataConName :: Name
noNamespaceSpecifierDataConName =
thCon (fsLit "NoNamespaceSpecifier") noNamespaceSpecifierDataConKey
typeNamespaceSpecifierDataConName =
thCon (fsLit "TypeNamespaceSpecifier") typeNamespaceSpecifierDataConKey
dataNamespaceSpecifierDataConName =
thCon (fsLit "DataNamespaceSpecifier") dataNamespaceSpecifierDataConKey
{- *********************************************************************
* *
Class keys
......@@ -762,6 +790,13 @@ overlappingDataConKey = mkPreludeDataConUnique 210
overlapsDataConKey = mkPreludeDataConUnique 211
incoherentDataConKey = mkPreludeDataConUnique 212
-- data NamespaceSpecifier = ...
noNamespaceSpecifierDataConKey,
typeNamespaceSpecifierDataConKey,
dataNamespaceSpecifierDataConKey :: Unique
noNamespaceSpecifierDataConKey = mkPreludeDataConUnique 213
typeNamespaceSpecifierDataConKey = mkPreludeDataConUnique 214
dataNamespaceSpecifierDataConKey = mkPreludeDataConUnique 215
{- *********************************************************************
* *
Id keys
......@@ -816,7 +851,7 @@ liftStringIdKey = mkPreludeMiscIdUnique 230
-- data Pat = ...
litPIdKey, varPIdKey, tupPIdKey, unboxedTupPIdKey, unboxedSumPIdKey, conPIdKey,
infixPIdKey, tildePIdKey, bangPIdKey, asPIdKey, wildPIdKey, recPIdKey,
listPIdKey, sigPIdKey, viewPIdKey, typePIdKey :: Unique
listPIdKey, sigPIdKey, viewPIdKey, typePIdKey, invisPIdKey, orPIdKey :: Unique
litPIdKey = mkPreludeMiscIdUnique 240
varPIdKey = mkPreludeMiscIdUnique 241
tupPIdKey = mkPreludeMiscIdUnique 242
......@@ -833,6 +868,8 @@ listPIdKey = mkPreludeMiscIdUnique 252
sigPIdKey = mkPreludeMiscIdUnique 253
viewPIdKey = mkPreludeMiscIdUnique 254
typePIdKey = mkPreludeMiscIdUnique 255
invisPIdKey = mkPreludeMiscIdUnique 256
orPIdKey = mkPreludeMiscIdUnique 257
-- type FieldPat = ...
fieldPatIdKey :: Unique
......@@ -855,7 +892,8 @@ varEIdKey, conEIdKey, litEIdKey, appEIdKey, appTypeEIdKey, infixEIdKey,
fromEIdKey, fromThenEIdKey, fromToEIdKey, fromThenToEIdKey,
listEIdKey, sigEIdKey, recConEIdKey, recUpdEIdKey, staticEIdKey,
unboundVarEIdKey, labelEIdKey, implicitParamVarEIdKey, mdoEIdKey,
getFieldEIdKey, projectionEIdKey, typeEIdKey :: Unique
getFieldEIdKey, projectionEIdKey, typeEIdKey, forallEIdKey,
forallVisEIdKey, constrainedEIdKey :: Unique
varEIdKey = mkPreludeMiscIdUnique 270
conEIdKey = mkPreludeMiscIdUnique 271
litEIdKey = mkPreludeMiscIdUnique 272
......@@ -893,6 +931,9 @@ mdoEIdKey = mkPreludeMiscIdUnique 303
getFieldEIdKey = mkPreludeMiscIdUnique 304
projectionEIdKey = mkPreludeMiscIdUnique 305
typeEIdKey = mkPreludeMiscIdUnique 306
forallEIdKey = mkPreludeMiscIdUnique 802
forallVisEIdKey = mkPreludeMiscIdUnique 803
constrainedEIdKey = mkPreludeMiscIdUnique 804
-- type FieldExp = ...
fieldExpIdKey :: Unique
......@@ -923,10 +964,11 @@ funDIdKey, valDIdKey, dataDIdKey, newtypeDIdKey, tySynDIdKey, classDIdKey,
pragRuleDIdKey, pragAnnDIdKey, defaultSigDIdKey, dataFamilyDIdKey,
openTypeFamilyDIdKey, closedTypeFamilyDIdKey, dataInstDIdKey,
newtypeInstDIdKey, tySynInstDIdKey, standaloneDerivWithStrategyDIdKey,
infixLDIdKey, infixRDIdKey, infixNDIdKey, roleAnnotDIdKey, patSynDIdKey,
patSynSigDIdKey, pragCompleteDIdKey, implicitParamBindDIdKey,
kiSigDIdKey, defaultDIdKey, pragOpaqueDIdKey, typeDataDIdKey,
pragSCCFunDKey, pragSCCFunNamedDKey :: Unique
infixLWithSpecDIdKey, infixRWithSpecDIdKey, infixNWithSpecDIdKey,
roleAnnotDIdKey, patSynDIdKey, patSynSigDIdKey, pragCompleteDIdKey,
implicitParamBindDIdKey, kiSigDIdKey, defaultDIdKey, pragOpaqueDIdKey,
typeDataDIdKey, pragSCCFunDKey, pragSCCFunNamedDKey,
pragSpecEDIdKey, pragSpecInlEDIdKey :: Unique
funDIdKey = mkPreludeMiscIdUnique 320
valDIdKey = mkPreludeMiscIdUnique 321
dataDIdKey = mkPreludeMiscIdUnique 322
......@@ -949,9 +991,9 @@ dataInstDIdKey = mkPreludeMiscIdUnique 338
newtypeInstDIdKey = mkPreludeMiscIdUnique 339
tySynInstDIdKey = mkPreludeMiscIdUnique 340
closedTypeFamilyDIdKey = mkPreludeMiscIdUnique 341
infixLDIdKey = mkPreludeMiscIdUnique 342
infixRDIdKey = mkPreludeMiscIdUnique 343
infixNDIdKey = mkPreludeMiscIdUnique 344
infixLWithSpecDIdKey = mkPreludeMiscIdUnique 342
infixRWithSpecDIdKey = mkPreludeMiscIdUnique 343
infixNWithSpecDIdKey = mkPreludeMiscIdUnique 344
roleAnnotDIdKey = mkPreludeMiscIdUnique 345
standaloneDerivWithStrategyDIdKey = mkPreludeMiscIdUnique 346
defaultSigDIdKey = mkPreludeMiscIdUnique 347
......@@ -965,6 +1007,8 @@ pragOpaqueDIdKey = mkPreludeMiscIdUnique 354
typeDataDIdKey = mkPreludeMiscIdUnique 355
pragSCCFunDKey = mkPreludeMiscIdUnique 356
pragSCCFunNamedDKey = mkPreludeMiscIdUnique 357
pragSpecEDIdKey = mkPreludeMiscIdUnique 358
pragSpecInlEDIdKey = mkPreludeMiscIdUnique 359
-- type Cxt = ...
cxtIdKey :: Unique
......
This diff is collapsed.
module GHC.Builtin.PrimOps where
import GHC.Prelude ()
-- See W1 of Note [Tracking dependencies on primitives] in GHC.Internal.Base
import GHC.Base ()
data PrimOp
......@@ -16,6 +16,7 @@ import GHC.Prelude
import {-# SOURCE #-} GHC.Core.Opt.ConstantFold (primOpRules)
import GHC.Core.TyCo.Rep ( scaledThing )
import GHC.Core.Type
import GHC.Core.Predicate( tyCoVarsOfTypeWellScoped )
import GHC.Core.FVs (mkRuleInfo)
import GHC.Builtin.PrimOps
......
This diff is collapsed.
......@@ -15,6 +15,7 @@ mkBoxedTupleTy :: [Type] -> Type
coercibleTyCon, heqTyCon :: TyCon
unitTy :: Type
unitTyCon :: TyCon
liftedTypeKindTyConName :: Name
constraintKindTyConName :: Name
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.