[PATCH] Enable FastISel on ARM for Linux and NaCl

JF Bastien jfb at google.com
Tue May 28 17:09:24 PDT 2013


Here's an updated patch with, I hope, cleaner conditionals (tests are the
same). FastISel has: Thumb2 support on iOS; ARM support on iOS, Linux and
NaCl.


On Tue, May 28, 2013 at 12:19 PM, Eric Christopher <echristo at gmail.com>wrote:

> Are you meaning to support thumb1 + linux and nacl? If not, how about
> we make the conditional a little cleaner? Or just separate it up
> anyhow?
>
> -eric
>
> On Tue, May 28, 2013 at 11:50 AM, JF Bastien <jfb at google.com> wrote:
> > FastISel was only enabled for iOS ARM and Thumb2, this patch enables it
> for
> > ARM (not Thumb2) on Linux and NaCl.
> >
> > Thumb2 support needs a bit more work, mainly around register class
> > restrictions.
> >
> > The patch punts to SelectionDAG when doing TLS relocation on non-Darwin
> > targets. I will fix this and other FastISel-to-SelectionDAG failures in a
> > separate patch.
> >
> > The patch also forces FastISel to retain frame pointers: iOS always keeps
> > them for backtracking (so emitted code won't change because of this), but
> > Linux was getting much worse code that was incorrect when using big
> frames
> > (such as test-suite's lencod). I'll also fix this in a later patch, it
> will
> > probably require a peephole so that FastISel doesn't rematerialize frame
> > pointers back-to-back.
> >
> > The test changes are straightforward, similar to:
> >
> >
> http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130513/174279.html
> > They all add a vararg test that got dropped in that change.
> >
> > I ran all of test-suite on A15 hardware with --optimize-option=-O0 and
> all
> > the tests pass.
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130528/e14d02b9/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fastisel-2.patch
Type: application/octet-stream
Size: 2065 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130528/e14d02b9/attachment.obj>


More information about the llvm-commits mailing list