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.