[mips][mips16] Re-work the inline assembly stubs to work with IAS. NFC.
authorDaniel Sanders <daniel.sanders@imgtec.com>
Wed, 21 Oct 2015 12:44:14 +0000 (12:44 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Wed, 21 Oct 2015 12:44:14 +0000 (12:44 +0000)
commit49d94c2d2df85a4bebe6523459db02586ec289e8
tree31ed6a4d45b6a06ac21f866d7f394781541e357b
parent198a6c5be5990008347b191f3cdd5713e3463cd6
[mips][mips16] Re-work the inline assembly stubs to work with IAS. NFC.

Summary:
Previously, we were inserting an InlineAsm statement for each line of the
inline assembly. This works for GAS but it triggers prologue/epilogue
emission when IAS is in use. This caused:
    .set noreorder
    .cpload $25
to be emitted as:
    .set push
    .set reorder
    .set noreorder
    .set pop
    .set push
    .set reorder
    .cpload $25
    .set pop
which led to assembler errors and caused the test to fail.

The whitespace-after-comma changes included in this patch are necessary to
match the output when IAS is in use.

Reviewers: vkalintiris

Subscribers: rkotler, llvm-commits, dsanders

Differential Revision: http://reviews.llvm.org/D13653

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@250895 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/Mips16HardFloat.cpp
test/CodeGen/Mips/hf16call32.ll
test/CodeGen/Mips/hf16call32_body.ll
test/CodeGen/Mips/hf1_body.ll