aboutsummaryrefslogtreecommitdiff
path: root/lib/compilers
Commit message (Collapse)AuthorAge
* ada: add stack-usage support for GNAT (#5218)gh-8031Marc Poulhiès2023-06-30
| | | | | | | | GNAT is gcc based, but its --help doesn't show all of gcc's option and the base compiler doesn't detect its support for -fstack-usage. Force the support (currently we only have GNAT as an Ada compiler). Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
* Common utilities and type work (#5200)gh-8021Jeremy Rifkin2023-06-28
| | | | | This PR refactors some common utilities out of lib/ and into shared/ and eliminates some use of underscore.js, as well as general type improvements done along the way.
* Improve the type of ExecutionOptions.env (#5206)gh-8009Jeremy Rifkin2023-06-28
|
* Support control flow graphs for more compilers (#5209)gh-8008Jeremy Rifkin2023-06-28
| | | | | This PR should make cfg generation available for all clang compilers, icc, and any compiler whose instructionSet property is x86, arm, or llvm.
* Add the movfuscator (#5193)gh-7994Jeremy Rifkin2023-06-26
| | | | | | Resolves #985 Builder: https://github.com/compiler-explorer/misc-builder/pull/65 Infra: https://github.com/compiler-explorer/infra/pull/1041
* resolve #5014 (#5197)gh-7964Guo Ci2023-06-25
|
* C64 emulation (#5198)gh-7958Patrick Quist2023-06-23
|
* Add temporary triage for #2986gh-7919Jeremy2023-06-21
|
* Fix #5183gh-7914Matt Godbolt2023-06-19
|
* Add instruction set info for generating arm control flow graphs (#5158)gh-7898Jeremy Rifkin2023-06-19
| | | | | Fixes #4410 On top of #5156
* New C3 compiler options (#5122)gh-7890aliaegik2023-06-19
| | | | | | | | Regarding the issue discussed in https://github.com/compiler-explorer/compiler-explorer/pull/5086#issuecomment-1578715708 --------- Co-authored-by: Rubén Rincón Blanco <git@rinconblanco.es>
* Support control flow graphs from the IR pane (#5155)gh-7888Jeremy Rifkin2023-06-19
| | | | | | | | | | | | | On top of #5154 ![image](https://github.com/compiler-explorer/compiler-explorer/assets/51220084/7bf25b5b-8988-42ff-9d8c-233e6d817997) Additionally, while I was here, added support for multiple control flow graphs to be opened from one compiler instead of disabling the button once one is opened. And improved the implementation for how this was done for the llvm opt pipeline. And did some type work along the way.
* Added TypeScript Native ver 0.0.35-alpha (#5136)gh-7882Alex D2023-06-19
| | | Added TypeScript Native ver 0.0.35-alpha
* add Stack Usage Viewer (#5160)gh-7881Guo Ci2023-06-19
| | | | For #4834
* War on @ts-expect-error (#5171)gh-7856Jeremy Rifkin2023-06-18
| | | | | Following up on #5170, let's just get rid of @ts-expect-error and @ts-ignore completely in the codebase. (Well almost) On top of #5170
* Quickfix for #5111gh-7697Jeremy2023-06-11
|
* Improve cache handling on the frontend, cache executions on the backend, and ↵gh-7689Jeremy Rifkin2023-06-11
| | | | improve controls on the exec pane (#5111)
* Turn on @typescript-eslint/await-thenable (#5131)gh-7683Jeremy Rifkin2023-06-11
|
* Identify unused imports during lint (#5130)Jeremy Rifkin2023-06-11
|
* LLVM IR pane improvements (#5078)gh-7669Jeremy Rifkin2023-06-11
| | | | | | | | | | | | This PR will add filtering and other output options to the LLVM IR pane ![image](https://github.com/compiler-explorer/compiler-explorer/assets/51220084/ffc865ea-b3fa-441f-b501-4ec4b68e261f) ![image](https://github.com/compiler-explorer/compiler-explorer/assets/51220084/936be326-b55e-40cd-ba47-22b121c1acfb) Closes #5062 Related to #5045
* Fix formattingMatt Godbolt2023-06-06
|
* Update mlir.ts for issue #5902 (#5102)sameeranjoshi2023-06-06
| | | | | | | | Fix for https://github.com/compiler-explorer/compiler-explorer/issues/5092 --------- Co-authored-by: Jeremy Rifkin <51220084+jeremy-rifkin@users.noreply.github.com>
* bugfix asm arg overrides can be undefined (#5107)Patrick Quist2023-06-06
| | | Fixes #5093
* Fix cobol binary modes and objdump (#5110)Patrick Quist2023-06-06
| | | Fixes #4857
* fix intel notation for cobol (#5109)Patrick Quist2023-06-06
|
* New Language: C3 (#5086)aliaegik2023-06-06
| | | | | | | | | | | | | | | | | | | | | | | | Related to: https://github.com/compiler-explorer/infra/pull/1017 C3 is a system programming language based on C. It is an evolution of C enabling the same paradigms and retaining the same syntax as far as possible. Design Principles: Procedural "get things done"-type of language. Try to stay close to C - only change what's really necessary. C ABI compatibility and excellent C integration. Learning C3 should be easy for a C programmer. Data is inert. Avoid "big ideas" & the "more is better" fallacy. Introduce some higher level conveniences where the value is great. You can try it out live on its tutorial website: https://www.learn-c3.org Source code: https://github.com/c3lang/c3c --------- Co-authored-by: Rubén Rincón Blanco <git@rinconblanco.es>
* using asSafeVer and cleanupsASDAlexander772023-06-06
|
* improved version controlASDAlexander772023-06-06
|
* double quote fixASDAlexander772023-06-01
|
* support for tsc version 33 and aboveASDAlexander772023-06-01
|
* add support to query and parse c standard versions (#5082)gh-7518Patrick Quist2023-05-30
| | | Fixes #5071
* Add new "Debug intrinsics" filter. (#5045)gh-7478fodinabor2023-05-22
| | | | | | | | | | | | | | | | | | | | 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>
* Compiler overrides (#5001)gh-7408Patrick Quist2023-05-16
|
* A somewhat hacky way of making circle link against clang trunk's libs (#5024)gh-7349Matt Godbolt2023-05-09
|
* Offer timetrace json to view somewhere (#4967)gh-7162Patrick Quist2023-04-23
|
* solidity dont fail on missing generatedSources (#4968)gh-7113Patrick Quist2023-04-19
|
* fix golang env vars (#4975)gh-7112Patrick Quist2023-04-19
|
* vala: Add an option to set PKG_CONFIG_PATH envvar (#4959)gh-7089David Hewitt2023-04-17
| | | | | | | | | | | 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.
* Add the Vala programming language (#4955)gh-7078David Hewitt2023-04-10
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Add minimal TI-C2000 compiler support (#4625)gh-7049Jeremy Overesch2023-04-05
| | | This adds the ability to use TI's C2000 compiler with basic directive filtering and assembly code parsing.
* Upgrade all minor versions; format; bump sonar and css minimizer (#4920)gh-6999Matt Godbolt2023-04-01
|
* Support configuring extra arguments for the demangler, objdumper and ↵gh-6987zebrapurring2023-04-01
| | | | | | | | | | | | | | 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 <>
* Add d8 for disassembling javascript (#4721)gh-6985Gaurav Gautam2023-04-01
| | | https://github.com/compiler-explorer/compiler-explorer/issues/264
* Initial support for GCC cobol (#4908)gh-6951Marc Poulhiès2023-03-29
| | | | | | | | 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>
* Limits + windows linking (#4898)gh-6942Patrick Quist2023-03-23
|
* add properties and test for cewrapper (#4761)gh-6911Patrick Quist2023-03-18
|
* Support for CompCert (#4878)gh-6903Marc Poulhiès2023-03-17
| | | | | | | | | | 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>
* add back --parallelism (#4885)gh-6902kasperk812023-03-17
| | | | missed --parallelism in https://github.com/compiler-explorer/compiler-explorer/pull/4821.
* GnuCOBOL: allow use of default copybooks (#4858)gh-6800Simon Sobisch2023-03-12
| | | | Fair warning: this was just edited online, I've no clue if this works (or at least still compiles)
* Bump all minor versions - npm update; also bump webpack version ↵gh-6756Matt Godbolt2023-03-12
| | | | | speculatively... (#4851) also npm lint and format to make sure any changes turn up.