[project @ 2002-01-26 17:58:47 by rje]
This is a simple fix for a rather obscure bug. In the heap/stack checking code, we were creating info tables with names of the form stg_gc_X_ret_info, and giving them entry points with names of the form stg_gc_X_ret. Unfortunately, the mangler expects that if an info table is called Y_info, the entry point should be called Y_ret or Y_entry. In this case, the mangler thus looks for stg_gc_X_ret_ret and stg_gc_X_ret_entry, neither of which exists. As a result, the entry points aren't placed directly after the info tables. Fortunately, the code for the entry points was defined emmediately after the info table definition, and so was *usually* in the right place already. However, in certain circumstances (that can result from some tweaks on my private tree, and might possibly occur by other means), this was not happening, and thus any attempts to enter the entry point for this info table will cause problems. The fix is quite simple: rename the info tables so that the mangler finds the entry points and puts them in the right places. I don't think this commit is likely to have a notable effect on anything else.