aboutsummaryrefslogtreecommitdiff
path: root/lib/compilers
Commit message (Collapse)AuthorAge
* Set Java default encoding to UTF-8 (#3096)gh-1238Mats Larsen2021-11-04
| | | The default encoding used for Java is now UTF-8. This did not have to be changed for the Scala or Kotlin compilers as those already default to UTF-8
* Await for things (#3086)gh-1229Matt Godbolt2021-10-31
| | | | | | | | | | | | | | * Await for things We had a number of things that aren't await()ing their promises. That led to non-deterministic compiler settings like Intel support. I used the IDE to find them all and fix the ones that I thought looked important. More generally we should use tslint (once we're all typescript) to ensure this more generally. I tried the eslint equivalent but it either overreacted or didn't catch anything. Closes #3085
* Seperate compiler finding process (#3022)gh-1168Patrick Quist2021-10-15
|
* Initial support for GNAT specific debug output (#3000)Marc Poulhiès2021-10-13
| | | | | | This change only gets the GNAT Debug expanded generated code (-gnatD). Signed-off-by: Marc Poulhiès <dkm@kataplop.net> Co-authored-by: Mats Larsen <me@supergrecko.com>
* Avoid calling compilerProps after compiler object construction (#3005)gh-1092Austin Morton2021-10-04
|
* Enable GCC dump for the GNAT Ada compiler (#2989)gh-1084Marc Poulhiès2021-10-04
| | | | | | | | * Enable GCC dump for the GNAT Ada compiler GNAT is part of GCC and can handle the regular GCC options for dump files. Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
* Implement LLVM IR output for ispc (#2972)gh-1080Mats Larsen2021-10-04
|
* Add support for generating SPIR-V assembly from OpenCL C and C++ for OpenCL ↵gh-1078Jason Zheng2021-10-04
| | | | | | | | | (#2940) * Add support for generating SPIR-V assembly from OpenCL C and C++ for OpenCL * Update cpp_for_opencl.amazon.properties * Update openclc.amazon.properties Co-authored-by: Patrick Quist <partouf@gmail.com>
* Show full java asm output when using switch expression (#2996)gh-1074Maurice Mohlek2021-10-05
| | | | | | Fixes #2995 Co-authored-by: Maurice Mohlek <maurice.mohlek@valtech.de> Co-authored-by: Mats Larsen <me@supergrecko.com>
* Add rustc Macro Expansion view (#2932)Mats Larsen2021-09-27
| | | Adds a new pane for producing the macro expansion of Rust code compiled with rustc.
* oopspartouf2021-09-13
|
* bugfixes pascal objdumppartouf2021-09-13
|
* Pascalchanges (#2881)Patrick Quist2021-09-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Changes to allow Program (vs Unit) in Object Pascal * add possibility of dpr * more flexibility with pascal filenames * lintfixes * i have no idea what im doing * apply changes to pascal-win * pascal fixes * pascal projectfile changes * work in progress * bugfixes * bla * bugfixes * mostly working Co-authored-by: paul mcgee <paul.mcgee.8@bigpond.com> Co-authored-by: Paul McGee <paulmcgee1969@gmail.com>
* Clean trunk and execution (#2916)Patrick Quist2021-09-04
|
* OCaml Improvements: objdump and a few refactorings (#2913)Haz2021-09-03
| | | | | | | | | | | | | | | | | | | | | * OCaml properties fixes - Improve defaults by adding local and system versions - Make no assumptions about whether local and system are the same - Enable OPAM workflows which rely on updating PATH - Fix version flag - Fix objdumper * OCaml output refactoring * Add an arg parser for OCaml Derived from Pascal (for now) * Rename default OCaml compiler ids * Add alias of old OCaml default compiler id Co-authored-by: Rubén Rincón Blanco <ruben@rinconblanco.es>
* Add support for Microsoft Visual C++ 6 (#2907)Kevin Adler2021-09-01
| | | | | | | | | | | | | | | | | | | | | A new compiler type 'win32-vc6' has been added, which uses a slightly modified version of asm-parser-vc to handle assembly output differences from current Visual Studio output. In particular, MSVC6 does not output a comment line containing the function's compile flags prior to the function body. The win32-vc parser uses this to identify the start of a function and initialize currentFunction. Instead, we use the regex that identifies a function name to do this. Otherwise, a TypeError occurs trying to set currentFunction.name when currentFunction is null. In addition, MSVC6 only outputs a file comment once (presumably, until a function from a different file is output). So instead of initializing currentFunction.file to undefined, it is set to currentFile instead. This should get set on the first function found in the file, but if not it is initialized to undefined, so the behavior there would be the same. Finally, the _DATA and _TLS segments are handled as well as some additional miscellaneous directives.
* Fix execution for Java with multifile ui (#2882)Mats Larsen2021-08-28
| | | | | * Fix execution for Java with multifile ui * Remove dev comment
* Multifile/IDE mode (#2725)Patrick Quist2021-08-26
|
* Support execution and binary mode in haskell. Closes #2854Matt Godbolt2021-08-14
|
* Make OCaml examples executable and objdumpable (#2853)Haz2021-08-14
| | | | | | | | | | | | Changes: - ocaml.default.properties: - add the relevant flags for execution and emitting binaries - add nicer version number reporting - let CE know `objdump` can be used on ocaml objects - ocaml.js: - update optionsForFilter for both executable and object handling - override the getter for executable to work within ocamlopt context
* Add support for heterogeneous compute (#2836)Matt Godbolt2021-08-14
| | | | | | | | | | | | | | | | | | | | | | | | * Extract device code from assembly files. This commit by itself does not actually add any viewing panes for the extracted device code, nor does it provide any means to provide device-specific postprocessing steps. * Add a rudimentary device view. This doesn't handle multiple device outputs correctly at the moment, and it provides no opportunity to view device code differently from non-device code for now. * Lint issues * Some more WIP getting it working. * Add device extraction code * More fixes, and keep state Co-authored-by: Joshua Cranmer <joshua.cranmer@intel.com> Co-authored-by: Patrick Quist <partouf@gmail.com>
* Override default compiler flags for OCaml (#2849)Haz2021-08-11
| | | Fixes github issue #2848
* lintfixesPatrick Quist2021-07-31
|
* Update to latest zig trunk (#2832)Joachim Schmidt2021-07-31
| | | | Unused function parameters (used in the custom panic handler) are now compile errors.
* Add support for Ruby (#2816)Quinton Miller2021-07-30
|
* Add support for Intel asm syntax (#2824)Michał Cichoń2021-07-28
|
* Reassign my copyright to Compiler Explorer AuthorsRabsRincon2021-07-27
|
* Add support for Circle (https://www.circle-lang.org/) (#2808)Michał Cichoń2021-07-25
| | | | | * Add support for circle-lang (closes #1845) * Add circle-128 version. * Support keywords starting with @ (thanks Matt!)
* Add rustc MIR output view (#2795)Mats Larsen2021-07-24
| | | | * Add Rustc MIR representation view * Enable MIR view for rust-cg-gcc
* Reassign my copyright to Compiler Explorer AuthorsMatt Godbolt2021-07-24
|
* Reassign my copyright to Compiler Explorer AuthorsRabsRincon2021-07-24
|
* cproc tweaksMatt Godbolt2021-07-19
|
* Support cproc C11 compiler (#2787)Marc Poulhiès2021-07-19
| | | | | | Add support for cproc C11 compiler. cproc is a lightweight compiler using the QBE backend. Fixes #2755
* Add support for HIP compilation for AMD GPUs. (#2759)Artem Belevich2021-07-19
| | | | | | | | | | | | * Added support for HIP compilation for AMD GPUs. At the moment it only supports stand-alone compilation w/o ROCm SDK. * Enable barebones HIP compilation. Clang by itself is good enough to compile simple kernels that do not need ROCm SDK headers and bitcode libraries. Closes #2760
* Adding rustc-cg-gcc (#2746)Marc Poulhiès2021-07-12
| | | | | | | | | | | | | GCC backend for rustc is still in a very early state. It is in the process of being merged in main rustc source: https://github.com/rust-lang/compiler-team/issues/442 Currently reusing main rust compiler class and simply remove -Cllvm= argument if any (only for intel asm syntax). Disabling binary until the result is more friendly (currently binary are too big). refs #2683
* Override CC env variable in Crystal propeties (#2776)Quinton Miller2021-07-12
|
* lint fixespartouf2021-07-08
|
* Add Crystal support (#2732)Quinton Miller2021-07-08
| | | | | | | | | | | | | | | | | | | * Add Crystal support * Fix copyright * Add ASM parser for Crystal * Add supportsLibraryCodeFilter * Update crystal-mode.js * use baseName * Force `square` call * Update default snippet Co-authored-by: Patrick Quist <partouf@gmail.com>
* Fix execution for JVM compilers (#2767)Mats Larsen2021-07-06
|
* Support execution of programs for JVM compilers (#2745)Mats Larsen2021-07-06
| | | | * Bare execution for Java programs * Support execution for Kotlin
* Config changes (#2764)Rubén Rincón Blanco2021-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Pass -g to TinyC by default Closes #2748 * Sort C++ libs and tools alphabetically * Sort C libs and tools alphabetically * Add missing Zig C & C++ versions * Enable semver for RISC-V Clang Issue #2739 * Add missing RISC-V Clang 12.0 Issue #2739 * Improve RISC-V Clang config * Improve C++ props file to make it more mantainable * Add missing Zig C compiler id in compiler list * Update etc/config/c++.amazon.properties * Show different group name for each RISCV version
* Initial sketch for how we could parse Rust output (#2761)Rubén Rincón Blanco2021-07-06
| | | | | | | | | * Initial sketch for how we could parse Rust output It has many issues, which I need to ask about, but ey, it works! * Fix spacing * Add tests for the new Rust output parsing
* Add initial scala support (#2737)Oleksandr2021-06-29
| | | | | | | * Add initial scala support * Fix scala 3 compiler flags * Use semver instead
* Fix up sandbox directory for interpretersMatt Godbolt2021-06-26
|
* Adds Zig-args (#2735)Rubén Rincón Blanco2021-06-25
| | | | | | | | | | | | | | * Adds Zig-args This is the first Zig library added to the site, so this implementation might be broken in unexpected ways See issue #2525 * Update lib/base-compiler.js Co-authored-by: Rubén Rincón Blanco <ruben@rinconblanco.es> Co-authored-by: Matt Godbolt <matt@godbolt.org>
* Added support for SASS disassembly for clang as a CUDA compiler. (#2728)Artem Belevich2021-06-21
| | | | | | | | * Added support for SASS disassembly for clang as a CUDA compiler. Clang `--cuda-device-only -c` produces the same kind of CUBIN output as `nvcc -cubin` and can use nvdisasm to disassemble it. * Enable SASS disassembly for clang as a CUDA compiler.
* Add Zig c++ (#2716)Rubén Rincón Blanco2021-06-16
| | | | | | As requested by #2707 It still has the same problems found in #2434, which that will get fixed in Zig 0.8.1
* exceptions for zig versions < 0.8.0Patrick Quist2021-06-09
|
* Add Kotlin/JVM support (#2637)Daniel Below2021-06-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add Kotlin/JVM support * Update CONTRIBUTORS.md * Use kotlinc-jvm instead of kotlinc * Fix alphabetical ordering * Filter kotlin compiler arguments Extract user options filtering for java into a separate function to handle filtering options with extra arguments. Filter kotlin compiler options: -d, -jdk-home, -kotlin-home, -script, -progressive * Filter -Xjavac user options Filter any option that starts with '-Xjavac', as it could be used to pass unwanted options through kotlinc to javac. * Fix year in copyright Co-authored-by: Rubén Rincón Blanco <ruben@rinconblanco.es> * Add kotlin.amazon.properties * Add JAVA_HOME to kotlin default exec options Query per-compiler property 'java_home' and set environment * Add java_home to kotlin properties Co-authored-by: Daniel Below <daniel.below@jetbrains.com> Co-authored-by: Rubén Rincón Blanco <ruben@rinconblanco.es>
* No array for eachMatt Godbolt2021-05-28
|