[mips] Do not allow -opt-bisect-limit to skip the PIC call optimization pass.
authorVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>
Thu, 27 Oct 2016 15:50:36 +0000 (15:50 +0000)
committerVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>
Thu, 27 Oct 2016 15:50:36 +0000 (15:50 +0000)
commitcfb005a0ee6ca75c79805324d377b32d1325774a
tree5a63a4089ef0d36c3b09597047ac87177f95bfe6
parent820e1326d726f8219b0de369f8dc14c666197c17
[mips] Do not allow -opt-bisect-limit to skip the PIC call optimization pass.

r282428 added the MipsOptimizePICCall as an opt-in pass that can be
skipped when using the -opt-bisect-limit option. However, this pass is
needed because it generates code that conforms to the o32 ABI
specification by using the $t9 register for PIC calls with JALR
instructions.

This bug was exposed by the fact that skipFunction() also checks for
the "optnone" attribute. This caused functions with that attribute to
break the requirements of the o32 ABI.

llvm-svn: 285305
llvm/lib/Target/Mips/MipsOptimizePICCall.cpp
llvm/test/CodeGen/Mips/call-optimization.ll