From: Reid Kleckner Date: Thu, 15 Sep 2016 15:11:49 +0000 (+0000) Subject: Document our extension to the COFF .section directive flags X-Git-Tag: llvmorg-4.0.0-rc1~9674 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8ddf07cc546e12ab199ad5ae7bb22e76cd8127ed;p=platform%2Fupstream%2Fllvm.git Document our extension to the COFF .section directive flags llvm-svn: 281616 --- diff --git a/llvm/docs/Extensions.rst b/llvm/docs/Extensions.rst index f702921..6c50abf 100644 --- a/llvm/docs/Extensions.rst +++ b/llvm/docs/Extensions.rst @@ -165,6 +165,22 @@ and ``.bar`` is associated to ``.foo``. .section .foo,"bw",discard, "sym" .section .bar,"rd",associative, "sym" +MC supports these flags in the COFF ``.section`` directive: + + - ``b``: BSS section (``IMAGE_SCN_CNT_INITIALIZED_DATA``) + - ``d``: Data section (``IMAGE_SCN_CNT_UNINITIALIZED_DATA``) + - ``n``: Section is not loaded (``IMAGE_SCN_LNK_REMOVE``) + - ``r``: Read-only + - ``s``: Shared section + - ``w``: Writable + - ``x``: Executable section + - ``y``: Not readable + - ``D``: Discardable (``IMAGE_SCN_MEM_DISCARDABLE``) + +These flags are all compatible with gas, with the exception of the ``D`` flag, +which gnu as does not support. For gas compatibility, sections with a name +starting with ".debug" are implicitly discardable. + ELF-Dependent -------------