Now two classes are responsible for verification: one of them can track GC
pointers and know whether a pointer is relocated or not and another based on
that information can verify uses of GC pointers.
Details
Diff Detail
Event Timeline
lib/IR/SafepointIRVerifier.cpp | ||
---|---|---|
140 | Please, check it in as separate NFC. This is a big patch, and it is hard to follow what is going on while you're mixing refactoring and functional changes. | |
241 | Do you really need this field? It is only used in verifyFunction, why not just pass the function into it as parameter? | |
245 | Please, give it more explanation what do you mean by "can be safely ignored". | |
365 | {} not needed | |
367 | Else is not needed. | |
372 | Could you please add a comment what is going on here? | |
412 | How about removeUnrelocatedDefs? It would be more consistent with what debug message in this function is. |
lib/IR/SafepointIRVerifier.cpp | ||
---|---|---|
140 | Nothing here is a functional change but I agree that this change should be a separate patch. |
lib/IR/SafepointIRVerifier.cpp | ||
---|---|---|
241 | We need F both in constructor and verifyFunction and it must be the same value so it's better leave it as a field. |
LGTM
lib/IR/SafepointIRVerifier.cpp | ||
---|---|---|
475–485 | Should be "transferred", but since it was in the ogirinal code, I'm OK if you fix it in follow-up NFC. |
Please, check it in as separate NFC. This is a big patch, and it is hard to follow what is going on while you're mixing refactoring and functional changes.