mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-13 12:53:53 +00:00
Move comments to the code they apply to.
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user