]> granicus.if.org Git - clang/commit
[mips][msa] Enable inlinse assembly for MSA.
authorDaniel Sanders <daniel.sanders@imgtec.com>
Tue, 12 Nov 2013 12:56:01 +0000 (12:56 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Tue, 12 Nov 2013 12:56:01 +0000 (12:56 +0000)
commit838f9337a1af51fb02cfe0abeccba5069619cb05
tree8c97ef4a593255b0261cdff3e845e375ec1cc37f
parenta30d2475cbc488b099d3c775603585e21760bb73
[mips][msa] Enable inlinse assembly for MSA.

Like GCC, this re-uses the 'f' constraint and a new 'w' print-modifier:
  asm ("ldi.w %w0, 1", "=f"(result));

Unlike GCC, the 'w' print-modifer is not _required_ to produce the intended
output. This is a consequence of differences in the internal handling of
the registers in each compiler. To be source-compatible between the
compilers, users must use the 'w' print-modifier.

MSA registers (including control registers) are supported in clobber lists.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194476 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Basic/Targets.cpp
test/CodeGen/mips-clobber-reg.c
test/CodeGen/mips-inline-asm-modifiers.c