]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/config/stormy16/stormy-abi
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / config / stormy16 / stormy-abi
index 8bd2ebd486f0764ab1edb7069dda5d5ed026d1f5..8c6d590d4ec1dfc9b9b4c905e87ac157939fc0b1 100644 (file)
@@ -105,7 +105,7 @@ count->     r2
        ...
        last procedure parameter word
 
-and initialises 'count' to be the number of bytes of non-variable
+and initializes 'count' to be the number of bytes of non-variable
 arguments to the function.
 
 ELF File Format
@@ -131,25 +131,37 @@ RELA relocs are used exclusively.  The relocation types defined are:
 
 Name                   Value   Field   Calculation     Overflow
 ----------------------------------------------------------------
-R_XSTORMY16_NONE               0       none    none            none
-R_XSTORMY16_32         1       32      S + A           none
-R_XSTORMY16_16         2       16      S + A           unsigned
-R_XSTORMY16_8          3       8       S + A           unsigned
-R_XSTORMY16_PC32               4       32      S + A - P       none
-R_XSTORMY16_PC16               5       16      S + A - P       signed
-R_XSTORMY16_PC8                6       8       S + A - P       signed
-R_XSTORMY16_REL_12     7       16:12:0 S + A - P       signed
-R_XSTORMY16_24               32:23:1 (S + A) >> 1    unsigned
-R_XSTORMY16_GNU_VTINHERIT 9    n/a     n/a             n/a
-R_XSTORMY16_GNU_VTENTRY        10      n/a     n/a             n/a
-
-In the 'Calculation' column, 'S' is the value of the symbol to which
-the reloc refers, 'A' is the addend, and 'P' represents the place of
-the storage unit being relocated.
+R_XSTORMY16_NONE           0     none      none           none
+R_XSTORMY16_32             1      32       S + A          none
+R_XSTORMY16_16             2      16       S + A          either
+R_XSTORMY16_8              3       8       S + A          unsigned
+R_XSTORMY16_PC32           4      32       S + A - P      none
+R_XSTORMY16_PC16           5      16       S + A - P      signed
+R_XSTORMY16_PC8            6       8       S + A - P      signed
+R_XSTORMY16_REL_12         7      16:12:0  S + A - P      signed
+R_XSTORMY16_24             8      32:23:1 (S + A) >> 1    unsigned
+R_XSTORMY16_FPTR16         9      16       S + A          either
+R_XSTORMY16_LO16           10     16       S + A          none
+R_XSTORMY16_HI16           11     32:16:16 S + A          none
+R_XSTORMY16_12             12     16:12:0  S + A          signed
+R_XSTORMY16_GNU_VTINHERIT  128    n/a      n/a            n/a
+R_XSTORMY16_GNU_VTENTRY    129    n/a      n/a            n/a
 
 In the 'Field' column, the first number indicates whether the
 relocation refers to a byte, word or doubleword.  The second number,
-if any, indicates the size of the bitfield into which the relocation
+if any, indicates the size of the bit-field into which the relocation
 is to occur (and also the size for overflow checking).  The third
-number indicates the first bit of the bitfield in the word or
+number indicates the first bit of the bit-field in the word or
 doubleword, counting the LSB as bit 0.
+
+In the 'Calculation' column, 'S' is the value of the symbol to which
+the reloc refers, 'A' is the addend, and 'P' represents the place of
+the storage unit being relocated.
+
+In the 'Overflow' column, 'none' means that any overflow of the
+computation performed in the 'Calculation' column is ignored.
+'signed' means that the overflow is only reported if it happens when
+the values are treated as signed quantities.  'unsigned' is the same,
+except that the values are treated as unsigned quantities.  'either'
+means that overflow is reported for either signed or unsigned
+overflow.