Move comments to the code they apply to.

This commit is contained in:
Zoltan Somogyi
2016-02-26 05:20:34 +11:00
parent d08fa4dcd9
commit 76aa8a5a74

View File

@@ -347,27 +347,6 @@
**
** Single-precision floats do form part of the grade option string
** and they imply unboxed floats.
**
** Part 12 (i.e. MR_NEW_MERCURYFILE_STRUCT) can't be set
** by the `--grade' option; it is intended to be set by the configure script
** at configuration time. So we don't include it in the grade option string.
**
** Part 13 used to record the absence/presence of the .regparm grade component
** with MR_HIGHLEVEL_CODE, and the absence/presence of the .picreg grade
** component for !MR_HIGHLEVEL_CODE and MR_USE_GCC_GLOBAL_REGISTERS.
** Neither is in use anymore.
**
** The .regparm part specified an optimized calling convention of 32-bit x86
** machines, which turns out to be a pessimizing calling convention on x86/64.
**
** Once upon a time, on x86 machines with MR_USE_GCC_GLOBAL_REGISTERS,
** we reserved three global registers if we could, but had to be content
** with two if we were generating position independent code, since PIC needed
** a register for itself. However, the difference caused problems in linking
** object files compiled with different numbers of global registers reserved,
** and gcc bugs kept generating crashes with three reserved registers,
** so we now always reserve only two global registers. Therefore the
** distinction that .picreg used to record has vanished.
*/
#if MR_TAGBITS == 0
@@ -398,6 +377,12 @@
#define MR_GRADE_OPT_PART_11 MR_GRADE_OPT_PART_10
#endif
/*
** Part 12 (i.e. MR_NEW_MERCURYFILE_STRUCT) can't be set by the `--grade'
** option; it is intended to be set by the configure script at configuration
** time. We therefore don't include it in the grade option string.
*/
#ifdef MR_NEW_MERCURYFILE_STRUCT
#define MR_GRADE_PART_12 MR_PASTE2(MR_GRADE_PART_11, _file)
#else
@@ -405,6 +390,25 @@
#endif
#define MR_GRADE_OPT_PART_12 MR_GRADE_OPT_PART_11
/*
** Part 13 used to record the absence/presence of the .regparm grade component
** with MR_HIGHLEVEL_CODE, and the absence/presence of the .picreg grade
** component for !MR_HIGHLEVEL_CODE and MR_USE_GCC_GLOBAL_REGISTERS.
** Neither is in use anymore.
**
** The .regparm part specified an optimized calling convention of 32-bit x86
** machines, which turns out to be a pessimizing calling convention on x86/64.
**
** Once upon a time, on x86 machines with MR_USE_GCC_GLOBAL_REGISTERS,
** we reserved three global registers if we could, but had to be content
** with two if we were generating position independent code, since PIC needed
** a register for itself. However, the difference caused problems in linking
** object files compiled with different numbers of global registers reserved,
** and gcc bugs kept generating crashes with three reserved registers,
** so we now always reserve only two global registers. Therefore the
** distinction that .picreg used to record has vanished.
*/
#define MR_GRADE_PART_13 MR_GRADE_PART_12
#define MR_GRADE_OPT_PART_13 MR_GRADE_OPT_PART_12