| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Previously the call to dirty_MUT_VAR in stg_atomicModifyMutVarzuzh was
missing its final argument.
Fixes #20414.
|
|
|
|
| |
These functions really do no marking; they merely trace pointers.
|
|
|
|
|
| |
We need to ensure that the TRecChunk itself is marked, in addition to
the TRecs it contains.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Given the previous commit, `-V` allows us to see some useful information
in CI (such as the call stack on failure) which normally people don't
want to see.
As a result the $VERBOSE variable now tweaks the diagnostic level one
level higher (to Diagnostic), which produces a lot of output.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before we really only had two verbosity levels, normal and verbose.
There are now three levels:
Normal: Commands show stderr (no stdout) and minimal build failure messages.
Verbose (-V): Commands also show stdout, build failure message contains
callstack and additional information
Diagnostic (-VV): Very verbose output showing all command lines and passing -v3 to cabal commands.
-V is similar to the default verbosity from before (but a little more
verbose)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change reduces the default verbosity of error messages to omit the
stack trace information from the printed output.
For example, before all errors would have a long call trace:
```
Error when running Shake build system:
at action, called at src/Rules.hs:39:19 in main:Rules
at need, called at src/Rules.hs:61:5 in main:Rules
* Depends on: _build/stage1/lib/package.conf.d/ghc-9.3.conf
* Depends on: _build/stage1/compiler/build/libHSghc-9.3.a
* Depends on: _build/stage1/compiler/build/GHC/Tc/Solver/Rewrite.o
* Depends on: _build/stage1/compiler/build/GHC/Tc/Solver/Rewrite.o _build/stage1/compiler/build/GHC/Tc/Solver/Rewrite.hi
at cmd', called at src/Builder.hs:330:23 in main:Builder
at cmd, called at src/Builder.hs:432:8 in main:Builder
* Raised the exception:
```
Which can be useful but it confusing for GHC rather than hadrian
developers.
Ticket #20386
|
|
|
|
|
| |
This flag is used to remove the output of core stats per binding in Core
dumps.
|
|
|
|
|
|
|
|
|
| |
Even in -j1 we now fork all the work into it's own thread so that Ctrl-C
exceptions are thrown on the main thread, which is blocked waiting for
the work thread to finish. The default exception handler then picks up
Ctrl-C exception and the dangling thread is killed.
Fixes #20292
|
|
|
|
|
|
| |
NoGhcTc is removed from HsMatchContext. As a result of this,
HsMatchContext GhcTc is now a valid type that has Id in it,
instead of Name and tcMatchesFun now takes Id instead of Name.
|
| |
|
|
|
|
|
| |
As of cbfc0e933660626c9f4eaf5480076b6fcd31dceb we set $HOME to a
non-existent directory to ensure hermeticity.
|
| |
|
|
|
|
| |
Otherwise we are dependent upon the C++ compiler's default language.
|
|
|
|
|
| |
Otherwise we may get warnings from the toolchain if the bootstrap
compiler was built with a different deployment target.
|
|
|
|
|
|
|
|
|
| |
Previously the C/C++ language version check in STG could throw an
undefined macro warning due to __STDC_VERSION__ when compiled with a C++
compiler. Fix this by defining __STDC_VERSION__==0 when compiling with a
C++ compiler.
Fixes #20394.
|
|
|
|
|
| |
The BSD sed implementation doesn't allow `sed -i COMMAND FILE`; one must
rather use `sed -i -e COMMAND FILE`.
|
| |
|
| |
|
|
|
|
| |
ipeMap.c failed to #include <string.h>
|
| |
|
|
|
|
|
| |
Previously the meaning of this flag was unclear and as a result I
suspect that CabalHaveLibffi could be incorrectly False.
|
|
|
|
|
|
| |
Previously both the --with-system-libffi path and the
non--with-system-libffi path set CabalUseSystemLibFFI=True. This was
wrong.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Otherwise cabal-install falls over.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Previously the cache persistence was implemented as various ad-hoc `cp`
commands at the end of the individual CI scripts. Here we move all of
this logic into `ci.sh`.
|
|
|
|
| |
`cabal update` is already implied by `ci.sh setup`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Emit an Info Table Provenance Entry (IPE) for every stack represeted info table
if -finfo-table-map is turned on.
To decode a cloned stack, lookupIPE() is used. It provides a mapping between
info tables and their source location.
Please see these notes for details:
- [Stacktraces from Info Table Provenance Entries (IPE based stack unwinding)]
- [Mapping Info Tables to Source Positions]
Metric Increase:
T12545
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add `StackSnapshot#` primitive type that represents a cloned stack (StgStack).
The cloning interface consists of two functions, that clone either the treads
own stack (cloneMyStack) or another threads stack (cloneThreadStack).
The stack snapshot is offline/cold, i.e. it isn't evaluated any further. This is
useful for analyses as it prevents concurrent modifications.
For technical details, please see Note [Stack Cloning].
Co-authored-by: Ben Gamari <bgamari.foss@gmail.com>
Co-authored-by: Matthew Pickering <matthewtpickering@gmail.com>
|
|
|
|
|
| |
Make it polymorphic in the type of the MVar's value. This simple generalization
makes it usable for `MVar a` instead of only `MVar ()` values.
|
| |
|
| |
|
| |
|
|
|
|
| |
fixes #20388
|
|
|
|
| |
The compiler should be independent of the target.
|
|
|
|
|
|
| |
Converts diagnostics in: (#20116)
- GHC.Tc.Gen.Default
- GHC.Tc.Gen.Export
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before the output contain a lot of verbose information about timining
various things to do with shake which wasn't so useful for developers.
```
shakeArgsWith 0.000s 0%
Function shake 0.010s 0%
Database read 0.323s 12% ===
With database 0.031s 1%
Running rules 2.301s 86% =========================
Pool finished (1786 threads, 5 max) 0.003s 0%
Cleanup 0.000s 0%
Total 2.669s 100%
Build completed in 2.67s
```
Now the output just contains the last line
```
Build completed in 2.67s
```
Ticket #20381
|