Title | Register scanning approach is not reliable |
Status | open |
Priority | essential |
Assigned user | Gareth Rees |
Organization | Ravenbrook |
Description | Filip Strömbäck reports [1] that setjmp is not a reliable method of spilling registers onto the stack. |
Analysis | The analysis we gave in design.mps.sol.setjmp.justify [2] is not correct. A compiler can arrange for longjmp to reconstruct the registers using (for example) debug information, and so avoid the need to spill all the registers to the jump buffer. |
How found | customer |
Evidence | [1] https://info.ravenbrook.com/mail/2019/05/20/13-08-23/0/ [2] https://www.ravenbrook.com/project/mps...r/design/stack-scan#.sol.setjmp.justify |
Created by | Gareth Rees |
Created on | 2019-06-04 11:43:26 |
Last modified by | Gareth Rees |
Last modified on | 2019-06-04 11:43:26 |
History | 2019-06-04 GDR Created. |