Michael Kenzel
Michael Kenzel
It would be really great to have some sort of `static_assert` during partial evaluation, e.g., ```rs pe_assert ( [, ] ) ``` to make compilation fail with a meaningful error...
This change skips `find_package(RV)` if the RV target was already imported as part of LLVM and makes RV a public dependency of thorin to allow for transitive dependencies. It also...
the following code will reproduce the issue: ```rust struct Req {} struct X { _: u32, req: Req } fn test(x: &mut X) { let mut p = x; let...
…when called from exported function if there is a variable in scope that is initialized to a different lambda depending on function parameter. repro: ```rust #[import(cc = "thorin")] fn nvvm(_dev:...
the following code will reproduce the issue: ```rust #[import(cc = "thorin")] fn nvvm(_dev: i32, _grid: (i32, i32, i32), _block: (i32, i32, i32), _body: fn() -> ()) -> (); #[import(cc =...
The following code will reproduce the issue: ```rust fn test() { let blub = @|cont: fn()->()| {}; while (true) { blub(continue) } } ``` Compiling the above code results in:...
We currently rely on the following hack in order to have code adapt to the CUDA target architecture: ```rust #[import(cc = "device", name = "[]{return __CUDA_ARCH__;}")] fn cuda_device_arch() -> i32;...
the following code will reproduce the issue: ```rust struct Req {} struct X { req: Req } fn test(x: &mut X) { let mut p = x; let r =...
This adds a parameter to allocate a given amount of dynamic shared memory upon kernel launch. corresponding runtime changes: https://github.com/AnyDSL/runtime/pull/41