Eric Hein
Eric Hein
I recently discovered Tapir's ability to spawn statements, but found a few examples that crash the compiler. Here's one: ``` #include void demo(long * x, long * y) { *y...
Tapir's expected syntax for the grain size pragma doesn't match other Cilk compilers. Example: ``` #include long array[10000]; void foo() { #pragma cilk grainsize = 100 cilk_for (long i =...
When a cilk_spawn expression is outlined into a function, all sub-expressions are moved into the outlined function. For example, in `cilk_spawn foo(x + y)`, the values of `x` and `y`...
During outlining, Tapir creates a new function name by concatenating the name of the original function with the name of the outlined block. https://github.com/wsmoses/Tapir-LLVM/blob/681753321c1a53c248e3c957aa0835c25704b3fe/lib/Transforms/Tapir/Outline.cpp#L241 When compiling C++, the new name...