-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Open
Labels
area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMICLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Milestone
Description
Currently SPMI does not diff unwind info produced by the JIT:
runtime/src/coreclr/tools/superpmi/superpmi/neardiffer.cpp
Lines 1349 to 1381 in 57ed254
| cr2->applyRelocs(&rc, hotCodeBlock_2, hotCodeSize_2, orig_hotCodeBlock_2); | |
| cr2->applyRelocs(&rc, coldCodeBlock_2, coldCodeSize_2, orig_coldCodeBlock_2); | |
| cr2->applyRelocs(&rc, roDataBlock_2, roDataSize_2, orig_roDataBlock_2); | |
| if (!compareCodeSection(mc, cr1, cr2, hotCodeBlock_1, hotCodeSize_1, roDataBlock_1, roDataSize_1, | |
| orig_hotCodeBlock_1, orig_roDataBlock_1, orig_coldCodeBlock_1, coldCodeSize_1, | |
| hotCodeBlock_2, hotCodeSize_2, roDataBlock_2, roDataSize_2, orig_hotCodeBlock_2, | |
| orig_roDataBlock_2, orig_coldCodeBlock_2, coldCodeSize_2)) | |
| return false; | |
| if (!compareCodeSection(mc, cr1, cr2, coldCodeBlock_1, coldCodeSize_1, roDataBlock_1, roDataSize_1, | |
| orig_coldCodeBlock_1, orig_roDataBlock_1, orig_hotCodeBlock_1, hotCodeSize_1, | |
| coldCodeBlock_2, coldCodeSize_2, roDataBlock_2, roDataSize_2, orig_coldCodeBlock_2, | |
| orig_roDataBlock_2, orig_hotCodeBlock_2, hotCodeSize_2)) | |
| return false; | |
| if (!compareReadOnlyDataBlock(mc, cr1, cr2, roDataBlock_1, roDataSize_1, orig_roDataBlock_1, roDataBlock_2, | |
| roDataSize_2, orig_roDataBlock_2)) | |
| return false; | |
| if (!compareEHInfo(mc, cr1, cr2)) | |
| return false; | |
| if (!compareGCInfo(mc, cr1, cr2)) | |
| return false; | |
| if (!compareVars(mc, cr1, cr2)) | |
| return false; | |
| if (!compareBoundaries(mc, cr1, cr2)) | |
| return false; | |
| return true; |
Diffing this info could have prevented #112799, so it would probably be a good idea to diff it like the other outputs.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMICLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI