| Commit message (Collapse) | Author | Age |
... | |
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| | |
Fixes #5071
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For now, this removes all `llvm.dbg.*` calls from LLVM IR. This is
useful to keep coloring the line correspondence between source and IR,
while not polluting the IR with the debug intrinsics.
Admittedly, I don't have much of a clue of what's going on here, so I
might be missing obvious adaptions (e.g. can we disable this for all
non-LLVM compilers for now somehow?).
Also, not really a Node.JS testing wizard either... 🤷🏼
Just wanted this really bad for a workshop that's coming up soon ^^
Only tested with my system's default `clang` for now.
Fixes #5044
---------
Co-authored-by: Matt Godbolt <matt@godbolt.org>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In conjunction with
https://github.com/compiler-explorer/vala-builder/pull/1, this should
fix #4958
Vala uses `pkg-config` to locate libraries to link with and then passes
the relevant args to `CC`, so in the live environment, we need to
provide the `pkg-config` files for the minimum required libraries in the
compiler prefix, and then use this environment variable to allow
`pkg-config` to locate them.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
See https://gitlab.gnome.org/GNOME/vala/ for the language repository.
> Vala is a programming language that aims to bring modern programming
language features to GNOME developers without imposing any additional
runtime requirements and without using a different ABI compared to
applications and libraries written in C.
>
> `valac`, the Vala compiler, is a self-hosting compiler that translates
Vala source code into C source and header files. It uses the GObject
type system to create classes and interfaces declared in the Vala source
code.
>
> The syntax of Vala is similar to C#, modified to better fit the
GObject type system.
I've also created https://github.com/davidmhewitt/vala-builder based on
https://github.com/compiler-explorer/python-builder and tested that it
can build tarballs of arbitrary versions of Vala. I'd be happy to
transfer the ownership of this repository, or feel free to clone it into
the `compiler-explorer` org.
However, I'm a little unsure of how to join up the pieces and get this
Docker builder integrated with the `infra` repository. Let me know where
to go next and I'd be happy to open the relevant PRs.
|
| |
| |
| | |
This adds the ability to use TI's C2000 compiler with basic directive filtering and assembly code parsing.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
execution wrapper (#4883)
Some toolchains require passing non-standard, mandatory arguments to the
CLI tools in order to execute them (configuring licenses, selecting CPU
targets, etc.). This PR allows configuring extra command-line arguments
for the demangler, object dumper and the execution wrapper. The version
flag argument has been refactored into an array, so that more than one
argument can be passed, if necessary.
The changes are fully backwards compatible.
Co-authored-by: zebrapurring <>
|
| |
| |
| | |
https://github.com/compiler-explorer/compiler-explorer/issues/264
|
| |
| |
| |
| |
| |
| |
| |
| | |
Support for GCC cobol snapshot for external repository (until it is
merged in GCC, someday).
fixes https://github.com/compiler-explorer/compiler-explorer/issues/4893
Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add support for CompCert (https://github.com/AbsInt/CompCert) from
AbsInt.
As a first step, only x86 and x86_64 are supported.
fixes #595
Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
|
| | |
|
|/ |
|
|
|
|
| |
missed --parallelism in
https://github.com/compiler-explorer/compiler-explorer/pull/4821.
|
|
|
|
| |
Fair warning: this was just edited online, I've no clue if this works
(or at least still compiles)
|
|
|
|
|
| |
speculatively... (#4851)
also npm lint and format to make sure any changes turn up.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The recent change to the way NVCC compilation is handled broke support
for NVRTC. NVRTC can only compile device code, so the host-compilation
approach now used for NVCC (using --keep) is incompatible.
This PR gives the NVRTC compiler its own class and restores the old
behavior. The class is a copy of the old NvccCompiler class, with minor
updates to match the code in the new NvccCompiler class where possible
(plus TypeScript).
This PR also removes NVRTC from `cuda.gpu.properties` (because its
output cannot be executed), and updates the list of versions to match
NVCC.
cc @jrhemstad @trxcllnt
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The recent change to the way NVCC compilation is handled broke support
for NVRTC. NVRTC can only compile device code, so the host-compilation
approach now used for NVCC (using --keep) is incompatible.
This PR gives the NVRTC compiler its own class and restores the old
behavior. The class is a copy of the old NvccCompiler class, with minor
updates to match the code in the new NvccCompiler class where possible
(plus TypeScript).
This PR also removes NVRTC from `cuda.gpu.properties` (because its
output cannot be executed), and updates the list of versions to match
NVCC.
cc @jrhemstad @trxcllnt
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Makes the Compiler Explorer app, and all the tooling ESM compatible.
Things that have been done:
1. The package.json has `type: module` now
2. All relative imports have a .js ending
3. All directory imports are now directory/index.js to comply with ESM
standards
4. Dependency node-graceful is now imported into tree, because the
package is broken under esm
5. Dependency p-queue has been bumped to 7.x with ESM support
6. Dependency profanities has been bumped to 3.x with ESM support
7. Webpack config is now both ESM and CommonJS compatible
8. Non-ESM compatible imports have been rewritten
9. ESLint configuration has been tweaked to not fail on .js imports
10. Mocha is now hacked together and ran with ts-node-esm
11. Webpack is now hacked together and ran with ts-node-esm
12. Webpack config is now ESM compatible, so that it can be used in the
dev server
13. Cypress code still runs commonjs, and has been excluded from the
tsconfig
14. All sinon mock tests have been commented out, because sinon module
mocks do not work with ESModules (because ESModules are immutable)
A lot of tests are now giving warnings/errors to stdout, yet still pass.
Docenizer codegenerator scripts have been updated, but I did not re-run
them, and instead just changed their code.
---------
Co-authored-by: Matt Godbolt <matt@godbolt.org>
|
|
|
|
|
| |
Make trailing commas more consistent throughout the project, fixes
config conflict between eslint and prettier. Resolves an oversight in
#4766.
|
|
|
|
|
|
| |
This PR turns comma-dangle and indent eslint rules on for lib/. These
are rules inherited from the eslint config for static/, this PR just
makes things more consistent. Also turned
@typescript-eslint/no-var-requires back on while I was here.
|
|
|
|
|
|
|
|
|
|
| |
With the upcoming gcc 13 release and its shiny Modula-2 frontend, we
are introducing Modula-2 support in Compiler Explorer :)
Currently, only the gcc-snapshot build supports modula-2.
fixes #4688
Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The compile to binary object has been enabled by mistake for dmd and
ldc, so taking the opportunity to implement it.
ldc is sensitive to output filename extension (.s will force assembly
output, .o binary).
dmd accepts -c to skip the link step.
fixes #4649
Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
|
|
|
|
|
|
| |
https://github.com/compiler-explorer/compiler-explorer/pull/4674 wasn't
quite finished.
This goes the last mile, and shows the user the options from the
compiler-wrapper.
|
|
|
| |
If I understand this right this should populate the list of options for the "compiler options" drop-down
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently only list GCC compilers as a first step.
Will add clang in a followup change.
Port gcc.js to Typescript (simple renaming).
Package the objectivec language support for Monaco.
Add very basic example. Something more objc/objc++ specific would be better.
fixes #2942
Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
|