summaryrefslogtreecommitdiff
path: root/docs/UsersManual.rst
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2014-01-23 14:32:46 +0000
committerDavid Woodhouse <dwmw2@infradead.org>2014-01-23 14:32:46 +0000
commitc97dfe1b1d8195248085a23b9a918adb87efb35d (patch)
treefcf42743e5e4296758afa77e9f6eb3a03eb1ada4 /docs/UsersManual.rst
parent7950014000af728b6dbd0c0be2668b926fe86c0b (diff)
downloadclang-c97dfe1b1d8195248085a23b9a918adb87efb35d.tar.gz
clang-c97dfe1b1d8195248085a23b9a918adb87efb35d.tar.bz2
clang-c97dfe1b1d8195248085a23b9a918adb87efb35d.tar.xz
Add documentation for -m16 option on X86, fix typo
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@199894 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/UsersManual.rst')
-rw-r--r--docs/UsersManual.rst9
1 files changed, 8 insertions, 1 deletions
diff --git a/docs/UsersManual.rst b/docs/UsersManual.rst
index fb5cda5059..d832f99bae 100644
--- a/docs/UsersManual.rst
+++ b/docs/UsersManual.rst
@@ -1329,9 +1329,16 @@ to correctly compile many large C, C++, Objective-C, and Objective-C++
codebases.
On ``x86_64-mingw32``, passing i128(by value) is incompatible with the
-Microsoft x64 calling conversion. You might need to tweak
+Microsoft x64 calling convention. You might need to tweak
``WinX86_64ABIInfo::classify()`` in lib/CodeGen/TargetInfo.cpp.
+For the X86 target, clang supports the :option:`-m16` command line
+argument which enables 16-bit code output. This is broadly similar to
+using ``asm(".code16gcc")`` with the GNU toolchain. The generated code
+and the ABI remains 32-bit but the assembler emits instructions
+appropriate for a CPU running in 16-bit mode, with address-size and
+operand-size prefixes to enable 32-bit addressing and operations.
+
ARM
^^^