History log of /external/llvm/test/MC/ARM/eh-directive-save.s
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
18cba562c8016f8095643b5dd8c4b34b294b62dd 09-Jun-2013 Logan Chien <tzuhsiang.chien@gmail.com> Fix ARM unwind opcode assembler in several cases.

Changes to ARM unwind opcode assembler:

* Fix multiple .save or .vsave directives. Besides, the
order is preserved now.

* For the directives which will generate multiple opcodes,
such as ".save {r0-r11}", the order of the unwind opcode
is fixed now, i.e. the registers with less encoding value
are popped first.

* Fix the $sp offset calculation. Now, we can use the
.setfp, .pad, .save, and .vsave directives at any order.

Changes to test cases:

* Add test cases to check the order of multiple opcodes
for the .save directive.

* Fix the incorrect $sp offset in the test case. The
stack pointer offset specified in the test case was
incorrect. (Changed test cases: ehabi-mc-section.ll and
ehabi-mc.ll)

* The opcode to restore $sp are slightly reordered. The
behavior are not changed, and the new output is same
as the output of GNU as. (Changed test cases:
eh-directive-pad.s and eh-directive-setfp.s)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/test/MC/ARM/eh-directive-save.s
c24a374331fc97dd215937c8f0a9bf5271f39657 10-May-2013 Logan Chien <tzuhsiang.chien@gmail.com> Implement AsmParser for ARM unwind directives.

This commit implements the AsmParser for fnstart, fnend,
cantunwind, personality, handlerdata, pad, setfp, save, and
vsave directives.

This commit fixes some minor issue in the ARMELFStreamer:

* The switch back to corresponding section after the .fnend
directive.

* Emit the unwind opcode while processing .fnend directive
if there is no .handlerdata directive.

* Emit the unwind opcode to .ARM.extab while processing
.handlerdata even if .personality directive does not exist.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/test/MC/ARM/eh-directive-save.s