[llvm-dev] LLVM v3.9.0 and math built-ins
Martin J. O'Riordan via llvm-dev
llvm-dev at lists.llvm.org
Wed Sep 21 02:44:01 PDT 2016
My edits are just experiments to see if I could fix it, but I am not familiar with this area of the code and my approach is inevitably naïve.
All the best,
From: Friedman, Eli [mailto:efriedma at codeaurora.org]
Sent: 20 September 2016 18:14
To: Martin J. O'Riordan <martin.oriordan at movidius.com>; mehdi.amini at apple.com
Cc: 'LLVM Developers' <llvm-dev at lists.llvm.org>
Subject: Re: [llvm-dev] LLVM v3.9.0 and math built-ins
On 9/20/2016 4:12 AM, Martin J. O'Riordan via llvm-dev wrote:
I modified my sources to force ‘readnone’ and even tried ‘setDoesNotAccessMemory()’ on the math functions, but this still results in one call occurring and the code generated is effectively:
%1 = tail call float @exp(float 1.000000e+00)
; Function Attrs: readnone
declare float @exp(float) local_unnamed_addr #1
You have to set readonly on the call, not the function ("tail call float @exp(float 1.000000e+00) readonly") ; the attributes on a function declaration are generally ignored by LLVM.
For the difference between 3.8 and 3.9, see https://llvm.org/bugs/show_bug.cgi?id=30464 .
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev