aboutsummaryrefslogtreecommitdiff
path: root/lib/compilers/julia.ts
Commit message (Collapse)AuthorAge
* eslint root setting and fixes (#6307)gh-11409Patrick Quist2024-04-16
|
* [julia] Add LLVM IrView (#6285)gh-11202Mosè Giordano2024-04-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Julia is based on LLVM like other toolchains supported by Compiler Explorer, and it can emit LLVM IR, but at the moment we only expose it via the flag `--format=llvm` to the compiler wrapper. With this PR we add a proper LLVM IR viewer, like the other LLVM-based toolchains. We add a new option for the wrapper to emit the entire LLVM module, which has the benefit of being parsable by Compiler Explorer, so that we can automatically filter out debug information and metadata annotations. Preview (from https://github.com/compiler-explorer/compiler-explorer/issues/4597#issuecomment-2018956112): ![image](https://github.com/compiler-explorer/compiler-explorer/assets/765740/7c2f80b4-9c92-4761-9f6e-393d0ad26935) We removed the custom `<[source code line] [number of output lines] [function name] [method types]>` line in the output of the `code_*` functions, together with the custom ASM parsing, because they invalidate the output (it isn't valid ASM nor LLVM), and create more problems than they solve. This PR was prepared in collaboration with @vchuravy. This should eventually address #4597, once inlined LLVM functions are handled by the IR parser in Compiler Explorer, I think @vchuravy can comment more on that issue. --------- Co-authored-by: Valentin Churavy <v.churavy@gmail.com>
* [julia] Do not modify in-place `options` in `runCompiler` (#6281)gh-11069Mosè Giordano2024-03-25
|
* Improve the type of ExecutionOptions.env (#5206)gh-8009Jeremy Rifkin2023-06-28
|
* 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
* Transition to ECMAScript Modules (#4780)gh-6536Mats Jun Larsen2023-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Fix trailing comma issue (#4775)gh-6504Jeremy Rifkin2023-02-26
| | | | | Make trailing commas more consistent throughout the project, fixes config conflict between eslint and prettier. Resolves an oversight in #4766.
* Turn some auto-fixable eslint rules back on (#4766)gh-6434Jeremy Rifkin2023-02-23
| | | | | | 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.
* Type work for some handlers and stuff related to the compiler-finder (#4752)gh-6407Jeremy Rifkin2023-02-22
|
* Add JuliaParser (#4674)gh-6214Valentin Churavy2023-02-10
| | | If I understand this right this should populate the list of options for the "compiler options" drop-down
* Tsify lib/compilers (#4609)gh-6026Jeremy Rifkin2023-01-29
|
* cleanup importsgh-5818partouf2023-01-14
|
* Add Julia (#4595)gh-5817Alex2023-01-14