[PATCH] [AArch64] enable rematerialization of float 0 values

Geoff Berry gberry at codeaurora.org
Fri Mar 20 15:04:12 PDT 2015


Hi Tim,

Yep, that worked great.  I've attached a new version incorporating your suggestions and a test case.

--
Geoff Berry
Employee of Qualcomm Innovation Center, Inc.
 Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project

-----Original Message-----
From: Tim Northover [mailto:t.p.northover at gmail.com] 
Sent: Friday, March 20, 2015 4:32 PM
To: Geoff Berry
Cc: Matthias Braun; LLVM Commits
Subject: Re: [PATCH] [AArch64] enable rematerialization of float 0 values

On 20 March 2015 at 12:57, Geoff Berry <gberry at codeaurora.org> wrote:
> Do you have any other ideas for generating a FMOV 0 that I can force to be spilled?

How about something like this:

define void @foo() {
  tail call void @bar(float 0.000000e+00)
  tail call void asm sideeffect "",
"~{s0},~{s1},~{s2},~{s3},~{s4},~{s5},~{s6},~{s7},~{s8},~{s9},~{s10},~{s11},~{s12},~{s13},~{s14},~{s15},~{s16},~{s17},~{s18},~{s19},~{s20},~{s21},~{s22},~{s23},~{s24},~{s25},~{s26},~{s27},~{s28},~{s29},~{s30},~{s31}"()
#2
  tail call void @bar(float 0.000000e+00)
  ret void
}

declare void @bar(float)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: aarch64-remat-float0-take3.patch
Type: application/octet-stream
Size: 1929 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150320/18028ea8/attachment.obj>


More information about the llvm-commits mailing list