question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Consider expanding JIT Asm support

See original GitHub issue

Currently the JIT Asm results target only targets Desktop CLR and does not let you select 32-bit vs 64-bit (you can select 32-bit vs 64-bit for the main C# compiler only).

Given that most runtime improvements are happening on CoreCLR, it would be beneficial if you could select the target runtime for the JIT Asm target (if nothing else).

Given that the compiler can target any cpu target (AnyCPU, x86, x64, ARM64, etc), it would be also be beneficial if you could select which assembly output you want.

This effectively gives you the following options:

  • Language (C# vs VB vs F#)
    • Language Version would also be nice (i.e. LangVersion=7.3 vs Preview vs Latest)
  • Compiler Version (Latest Release vs Preview Branches)
  • Results (all of this applies to JIT Asm, I think there are sandboxing concerns for things like Run)
  • Runtime (Desktop vs CoreCLR vs Maybe Mono)
    • Runtime Version would also be nice
    • Target CPU would be nice (x86 vs x64 vs ARM vs ARM64)
  • Configuration (Debug vs Release)

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:10
  • Comments:9 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
ashmindcommented, Oct 7, 2021

Hi everyone! Thanks for your discussion so far.

Revisiting this ticket after a while, I think it is quite wide and so is a bit hard to track. For example, I can only mark it as done once every mentioned feature is implemented – and looking at glance it’s not immediately clear which ones already are.

Please create individual tickets for specific requests, e.g. Mono support, and it will be more likely those can get prioritized and done, or at least discussed in more detail.

And I’ll close this one for now.

0reactions
MichalPetrykacommented, Oct 5, 2021

Having Mono runtime could be useful for checking how the codegen would look in game engines that use it, for example Unity. Would be nice if it was added.

Read more comments on GitHub >

github_iconTop Results From Across the Web

1 BeamAsm, the Erlang JIT
BeamAsm provides load-time conversion of Erlang BEAM instructions into native code on x86-64. This allows the loader to eliminate any instruction dispatching ...
Read more >
4. Kaleidoscope: Adding JIT and Optimizer Support
This chapter describes two new techniques: adding optimizer support to your language, and adding JIT compiler support. These additions will demonstrate how ...
Read more >
JIT Optimization and Debugging - Visual Studio (Windows)
Code that is optimized is more difficult to debug than code that isn't. Learn about JIT optimization, and about when and how to...
Read more >
AsmJit
AsmJit is a lightweight library suitable for low-latency machine code ... Support for sections that can be used to separate code and data...
Read more >
How does a JIT compiler actually emit and then call ...
If I was writing a normal compiler, I couldsimply write the desired binary to a file, to be run later by the system...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found