Title | Unclear why StackProbeDEPTH is 500 |
Status | closed |
Priority | nice |
Assigned user | Gareth Rees |
Organization | Ravenbrook |
Description | In config.h [1] the constant StackProbeDEPTH is defined for platforms **I3MV and W3I6MV: #if defined(MPS_ARCH_I3) && defined(MPS_BUILD_MV) #define StackProbeDEPTH ((Size)500) #elif defined(MPS_PF_W3I6MV) #define StackProbeDEPTH ((Size)500) #else #define StackProbeDEPTH ((Size)0) #endif But there is no analysis explaining where the value 500 comes from, or how to ensure that it can be correctly maintained in future. |
Analysis | It looks as though DRJ wrote the original stack probe code [2] [3] [4] [5] [6] [7] [8] and added the StackProbeDEPTH parameter [9] [10] so I asked him [11], but he didn't remember [12]. |
How found | inspection |
Evidence | [1] <http://www.ravenbrook.com/project/mps/master/code/config.h >[2] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19030 >[3] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19031 >[4] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19032 >[5] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19033 >[6] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19034 >[7] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19036 >[8] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19038 >[9] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19049 >[10] < https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?%40describe+19050 >[11] < https://info.ravenbrook.com/mail/2013/10/29/16-45-21/0/ >[12] < https://info.ravenbrook.com/mail/2013/10/29/17-14-25/0/ > |
Introduced in | 1.110.0 |
Created by | Gareth Rees |
Created on | 2013-10-29 15:40:17 |
Last modified by | Gareth Rees |
Last modified on | 2014-10-24 10:16:39 |
History | 2013-10-29 GDR Created. |
Change | Effect | Date | User | Description |
---|---|---|---|---|
187380 | closed | 2014-10-24 10:16:28 | Gareth Rees | Analysis justifying the value of StackProbeDEPTH. |