-
-
Notifications
You must be signed in to change notification settings - Fork 415
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gen_digestof_box uses wrong type for phi expression #2683
Comments
It happens to me on x86 and 32bit arm (linux) as well, so I believe @jasonbking is correct and |
That makes me feel better that I've found a legitimate bug, and not just a platform quirk :). So we know there's a potential mismatch in return types of |
This is an oversight from #2615, sorry for that. Replacing |
This is fixed by merging #2691 |
While porting pony to illumos, I kept triggering an LLVM assertion 'Assertion failed: getType() == V->getType() && "All operands to PHI node must be the same type as the PHI node!" on LLVM 3.9.1 (on LLVM 5.0 and 6.0 I'd get either strange libponyc test failures or segfaults). The problem appears to be the following line from src/libponyc/codegen/genreference.c:377
All the other __digestof functions created appear to return the type contained in c->intptr, which for a 32-binary is i32, not i64 (adding some print statements prior to the assertion confirm this). It seems like the above line should also use c->intptr so the correct type is used for both 32 and 64-bit.
The text was updated successfully, but these errors were encountered: