Rob Springer
Rob Springer
Looks like a hang in LLVM's register allocation: ``` Run till exit from #0 0x000055555e3ee595 in llvm::RegAllocBase::allocatePhysRegs (this=0x68f3f86a118) at llvm-project/llvm/lib/CodeGen/RegAllocBase.cpp:112 ``` I'll see how much I can minimize the reproducer...
Really bizarre. Here's my reproducer: If MAX_CYCLES is 86, it runs in about a second and a half. If it's 87, it hangs foreverrrr. ``` //const MAX_CYCLES = u32:86; //...
Not forever - at MAX_CYCLES = 87 it takes 35 seconds. At 97, it takes 45 seconds. At 128, it takes 92, and at 192 it takes >300...so it's not...
This ain't done. That patch was just the first step.
It could also assign it two different member elements, with the same effect.
@meheff : Is this complete?
From my recent work, it sure looks like passing channels to functions would be helpful - otherwise, you've got to place a lot of logic in your proc's `next()`, and...
Patch pending internal review. Sorry about the bug!
That seems like a good way to do this. (Although I think that I've run into issues with array-casting altering the expected bit order of the underlying data or something...
Similar: can't instantiate an imported struct! ``` import foo let bar = foo::Type { ... }; ``` will throw an error. You can work around this with `type baz =...