[PATCH] D22680: [mips][fastisel] Handle 0-4 arguments without SelectionDAG.

Daniel Sanders via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 22 07:46:19 PDT 2016


dsanders created this revision.
dsanders added a reviewer: sdardis.
dsanders added a subscriber: llvm-commits.
Herald added subscribers: sdardis, dsanders.

Implements fastLowerArguments() to avoid the need to fall back on
SelectionDAG for 0-4 argument functions that don't do tricky things like
passing double in a pair of i32's.

This allows us to move all except one test to -fast-isel-abort=3. The
remaining one has function prototypes of the form 'i32 (i32, double, double)'
which requires floats to be passed in GPR's.

https://reviews.llvm.org/D22680

Files:
  lib/Target/Mips/MipsFastISel.cpp
  test/CodeGen/Mips/Fast-ISel/br1.ll
  test/CodeGen/Mips/Fast-ISel/bswap1.ll
  test/CodeGen/Mips/Fast-ISel/callabi.ll
  test/CodeGen/Mips/Fast-ISel/constexpr-address.ll
  test/CodeGen/Mips/Fast-ISel/div1.ll
  test/CodeGen/Mips/Fast-ISel/fastalloca.ll
  test/CodeGen/Mips/Fast-ISel/fpcmpa.ll
  test/CodeGen/Mips/Fast-ISel/fpext.ll
  test/CodeGen/Mips/Fast-ISel/fpintconv.ll
  test/CodeGen/Mips/Fast-ISel/fptrunc.ll
  test/CodeGen/Mips/Fast-ISel/icmpa.ll
  test/CodeGen/Mips/Fast-ISel/loadstore2.ll
  test/CodeGen/Mips/Fast-ISel/loadstoreconv.ll
  test/CodeGen/Mips/Fast-ISel/loadstrconst.ll
  test/CodeGen/Mips/Fast-ISel/logopm.ll
  test/CodeGen/Mips/Fast-ISel/memtest1.ll
  test/CodeGen/Mips/Fast-ISel/nullvoid.ll
  test/CodeGen/Mips/Fast-ISel/overflt.ll
  test/CodeGen/Mips/Fast-ISel/rem1.ll
  test/CodeGen/Mips/Fast-ISel/retabi.ll
  test/CodeGen/Mips/Fast-ISel/shftopm.ll
  test/CodeGen/Mips/Fast-ISel/simplestore.ll
  test/CodeGen/Mips/Fast-ISel/simplestorefp1.ll
  test/CodeGen/Mips/Fast-ISel/simplestorei.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D22680.65077.patch
Type: text/x-patch
Size: 22499 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160722/9ee97e72/attachment.bin>


More information about the llvm-commits mailing list