This patch handles unaligned loads and stores in Mips JIT. Mips backend
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Tue, 8 Nov 2011 12:47:11 +0000 (12:47 +0000)
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>
Tue, 8 Nov 2011 12:47:11 +0000 (12:47 +0000)
commitad6eef4a6518ea5736cfec60b174019be805060d
tree470168d1a6f30e74435c7b494f237c95198de2b2
parentd63e7bf5560c4f9d8e6e6044fc01ec7ccfe851a0
This patch handles unaligned loads and stores in Mips JIT. Mips backend
implements unaligned loads and stores with assembler macro-instructions
ulw, usw, ulh, ulhu, ush, and this patch emits corresponding instructions
instead of these macros. Since each unaligned load/store is expanded
into two corresponding loads/stores where offset for second load/store is
modified by +3 (for words) or +1 (for halfwords).

Patch by Petar Jovanovic and Sasa Stankovic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144081 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MipsCodeEmitter.cpp
lib/Target/Mips/MipsJITInfo.cpp