[PATCH] D61069: [MIPS] Use custom bitcast lowering to avoid excessive instructions

Mirko Brkusanin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 24 07:43:18 PDT 2019


mbrkusanin created this revision.
mbrkusanin added reviewers: atanasyan, petarj, sdardis, mstojanovic.
Herald added a subscriber: arichardson.

On Mips32r2 bitcast can be expanded to two sw instructions and an ldc1 when 
using bitcast i64 to double or an sdc1 and two lw instructions when using 
bitcast double to i64. By introducing custom lowering that uses mtc1/mthc1 we
can avoid excessive instructions.


https://reviews.llvm.org/D61069

Files:
  lib/Target/Mips/MipsISelLowering.cpp
  lib/Target/Mips/MipsSEISelLowering.cpp
  lib/Target/Mips/MipsSEISelLowering.h
  test/CodeGen/Mips/llvm-ir/bitcast.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61069.196451.patch
Type: text/x-patch
Size: 4825 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190424/c49cd507/attachment.bin>


More information about the llvm-commits mailing list