f8e021ce4621688f8f57bf98302cba23f5d7e0f1 |
|
30-Sep-2014 |
Stephen Hines <srhines@google.com> |
Undefined fseeko/ftello for Windows builds. Bug: 14416410 These are "defined" when building under mingw, so they can't be used as identifiers in LLVM. Once we fix this in upstream, we can pull the patch back and revert this one. Change-Id: Ib576a9617ca685ab3625a2d2d66f652bcb7f2c3e
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
208130f11331eccab26c0a6f3146cd1891e53e33 |
|
03-Nov-2013 |
Bob Wilson <bob.wilson@apple.com> |
Convert calls to __sinpi and __cospi into __sincospi_stret This adds an SimplifyLibCalls case which converts the special __sinpi and __cospi (float & double variants) into a __sincospi_stret where appropriate to remove duplicated work. Patch by Tim Northover git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193943 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
8c20158fb0e1e5d747077f065eb0170c5af1fbfa |
|
20-Aug-2013 |
Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
[SystemZ] Use SRST to optimize memchr SystemZTargetLowering::emitStringWrapper() previously loaded the character into R0 before the loop and made R0 live on entry. I'd forgotten that allocatable registers weren't allowed to be live across blocks at this stage, and it confused LiveVariables enough to cause a miscompilation of f3 in memchr-02.ll. This patch instead loads R0 in the loop and leaves LICM to hoist it after RA. This is actually what I'd tried originally, but I went for the manual optimisation after noticing that R0 often wasn't being hoisted. This bug forced me to go back and look at why, now fixed as r188774. We should also try to optimize null checks so that they test the CC result of the SRST directly. The select between null and the SRST GPR result could then usually be deleted as dead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
19262ee0725a09b7c621a3d2eb66ba1513ae932a |
|
16-Aug-2013 |
Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
[SystemZ] Use SRST to implement strlen and strnlen It would also make sense to use it for memchr; I'm working on that now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188547 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
4fc7355a21e1fa838406e15459aaf54a58fcf909 |
|
16-Aug-2013 |
Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
[SystemZ] Use MVST to implement strcpy and stpcpy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188546 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
e1b2af731e2a45344a7c502232f66c55cd746da0 |
|
16-Aug-2013 |
Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
[SystemZ] Use CLST to implement strcmp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
41418d17cced656f91038b2482bc9d173b4974b0 |
|
08-Aug-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add ISD::FROUND for libm round() All libm floating-point rounding functions, except for round(), had their own ISD nodes. Recent PowerPC cores have an instruction for round(), and so here I'm adding ISD::FROUND so that round() can be custom lowered as well. For the most part, this is straightforward. I've added an intrinsic and a matching ISD node just like those for nearbyint() and friends. The SelectionDAG pattern I've named frnd (because ISD::FP_ROUND has already claimed fround). This will be used by the PowerPC backend in a follow-up commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187926 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
72c8331ec1437f8c33fff1dac1ea0ebb11009411 |
|
22-Jul-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Treat nothrow forms of ::operator delete and ::operator delete[] as deallocation functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186798 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
f0f85eab0469ac93f9bb6c7d19aca2c35868d83a |
|
03-Jul-2013 |
Michael Gottesman <mgottesman@apple.com> |
Added posix function gettimeofday to LibFunc::Func for all platforms but Windows. *NOTE* In a recent version of posix, they added the restrict keyword to the arguments for this function. From some spelunking it seems that on some platforms, the call has restrict on its arguments and others it does not. Thus I left off the restrict keyword from the function prototype in the comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185501 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
b704d23062aa78b00999b75dcdcb628d4d84ee3f |
|
27-May-2013 |
Preston Gurd <preston.gurd@intel.com> |
Convert sqrt functions into sqrt instructions when -ffast-math is in effect. When -ffast-math is in effect (on Linux, at least), clang defines __FINITE_MATH_ONLY__ > 0 when including <math.h>. This causes the preprocessor to include <bits/math-finite.h>, which renames the sqrt functions. For instance, "sqrt" is renamed as "__sqrt_finite". This patch adds the 3 new names in such a way that they will be treated as equivalent to their respective original names. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182739 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
cf70590c38ef580758c8a255519959fc7160fdb2 |
|
05-Mar-2013 |
Meador Inge <meadori@codesourcery.com> |
Add more functions to the TLI. This patch adds many more functions to the target library information. All of the functions being added were discovered while doing the migration of the simplify-libcalls attribute annotation functionality to the functionattrs pass. As a part of that work the attribute annotation logic will query TLI to determine if a function should be annotated or not. Signed-off-by: Meador Inge <meadori@codesourcery.com> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176514 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
255f89faee13dc491cb64fbeae3c763e7e2ea4e6 |
|
03-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort the #include lines for the include/... tree with the script. AKA: Recompile *ALL* the source code! This one went much better. No manual edits here. I spot-checked for silliness and grep-checked for really broken edits and everything seemed good. It all still compiles. Yell if you see something that looks goofy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
6098c6b56be5a8e3c7ac5273110589f251b03573 |
|
22-Nov-2012 |
Meador Inge <meadori@codesourcery.com> |
Add more functions to the target library information. I discovered a few more missing functions while migrating optimizations from the simplify-libcalls pass to the instcombine (I already added some in r167659). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168501 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
939f5002027e3ccb710ac1c3050dc25471251565 |
|
10-Nov-2012 |
Meador Inge <meadori@codesourcery.com> |
Add more functions to the target library information. In the process of migrating optimizations from the simplify-libcalls pass to the instcombine pass I noticed that a few functions are missing from the target library information. These functions need to be available for querying in the instcombine library call simplifiers. More functions will probably be added in the future as more simplifiers are migrated to instcombine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167659 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
8e0d1c03ca7fd86e6879b4e37d0d7f0e982feef6 |
|
29-Aug-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make MemoryBuiltins aware of TargetLibraryInfo. This disables malloc-specific optimization when -fno-builtin (or -ffreestanding) is specified. This has been a problem for a long time but became more severe with the recent memory builtin improvements. Since the memory builtin functions are used everywhere, this required passing TLI in many places. This means that functions that now have an optional TLI argument, like RecursivelyDeleteTriviallyDeadFunctions, won't remove dead mallocs anymore if the TLI argument is missing. I've updated most passes to do the right thing. Fixes PR13694 and probably others. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162841 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
6871d1eceba0455707de29708c36ae3c2778c160 |
|
22-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Add a few functions to TargetLibraryInfo as part of PR13574. Patch by Weiming Zhao <weimingz@codeaurora.org>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162329 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
982dc84762fc0c2ca35e6947d648a690dd22343c |
|
03-Aug-2012 |
Bob Wilson <bob.wilson@apple.com> |
Try to reduce the compile time impact of r161232. The previous change caused fast isel to not attempt handling any calls to builtin functions. That included things like "printf" and caused some noticable regressions in compile time. I wanted to avoid having fast isel keep a separate list of functions that had to be kept in sync with what the code in SelectionDAGBuilder.cpp was handling. I've resolved that here by moving the list into TargetLibraryInfo. This is somewhat redundant in SelectionDAGBuilder but it will ensure that we keep things consistent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161263 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
d1e672e0234b99dbff78baed0e47d033cf963abe |
|
03-Aug-2012 |
Bob Wilson <bob.wilson@apple.com> |
Add new getLibFunc method to TargetLibraryInfo. This just provides a way to look up a LibFunc::Func enum value for a function name. Alphabetize the enums and function names so we can use a binary search. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
51004dff923259c90591621e7151408ad94e0eb8 |
|
25-Jul-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
make all Emit*() functions consult the TargetLibraryInfo information before creating a call to a library function. Update all clients to pass the TLI information around. Previous draft reviewed by Eli. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
8d32463a9fa2aba9de552350a5019099edf0b90d |
|
24-Jul-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
add a few more functions to TargetLibraryInfo: fputc, memchr, memcmp, putchar, puts, strchr, strncmp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
0841e63ede092283d824843a068df3f7b0b90dd8 |
|
24-Jul-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
TargetLibraryInfo: add strn?cat, strn?cpy, and strn?len git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160678 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
d5bda5ec663f43710fe462f44b77ddbcf8fe9d9e |
|
18-Apr-2012 |
Joe Groff <arcata@gmail.com> |
fix pr12559: mark unavailable win32 math libcalls also fix SimplifyLibCalls to use TLI rather than compile-time conditionals to enable optimizations on floor, ceil, round, rint, and nearbyint git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
6a7df9aae620801d97da72d718e9aff76eebac9b |
|
12-Feb-2012 |
Nick Lewycky <nicholas@mxc.ca> |
Remove redundant getAnalysis<> calls in GlobalOpt. Add a few Itanium ABI calls to TargetLibraryInfo and use one of them in GlobalOpt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
2d24e2a396a1d211baaeedf32148a3b657240170 |
|
20-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
243eb9ecbbc6775e346e94025bd255bbceac9fca |
|
08-Dec-2011 |
Owen Anderson <resistor@mac.com> |
Enhance both TargetLibraryInfo and SelectionDAGBuilder so that the latter can use the former to prevent the formation of libm SDNode's when -fno-builtin is passed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
32b6c59ad068d2bb2466dd33bc17d8c865760215 |
|
01-Dec-2011 |
Chad Rosier <mcrosier@apple.com> |
Add a few more functions to TargetLibraryInfo. More of rdar://10500969. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
8ff4115ef0bcad0a46750bb2bd4376a61b346362 |
|
30-Nov-2011 |
Chad Rosier <mcrosier@apple.com> |
Add a few functions to TargetLibraryInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145508 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
683e47b1dd8672b0b026a45022cf91f4faf7df9b |
|
30-Nov-2011 |
Chad Rosier <mcrosier@apple.com> |
Alphabetize TargetLibraryInfo enum and fix doxygen comments. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145468 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
3d925d24e8c54cde05228258c25cc21687cad922 |
|
30-Nov-2011 |
Chad Rosier <mcrosier@apple.com> |
Add support for sqrt, sqrtl, and sqrtf in TargetLibraryInfo. Disable (fptrunc (sqrt (fpext x))) -> (sqrtf x) transformation if -fno-builtin is specified. rdar://10466410 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
9d434dbff3eb0501efc3457acec2401afdffef2f |
|
17-Nov-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Add support for custom names for library functions in TargetLibraryInfo. Add a custom name for fwrite and fputs on x86-32 OSX. Make SimplifyLibCalls honor the custom names for fwrite and fputs. Fixes <rdar://problem/9815881>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144876 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
40f5fbcc5c95bb96c43ce2d06d57ae9b7f852539 |
|
21-May-2011 |
Chris Lattner <sabre@nondot.org> |
add a copy ctor to TargetLibraryInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131806 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
149f5283f93ec85b96888c284f56099a72cc2731 |
|
01-May-2011 |
Chris Lattner <sabre@nondot.org> |
enhance memcpyopt to obey -fno-builtin and friends. This addresses a problem reported on cfe-dev. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130661 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
022708f221e2a9ea1a42c07c7cd7817a8de881dc |
|
03-Mar-2011 |
Richard Osborne <richard@xmos.com> |
Optimize fprintf -> iprintf if there are no floating point arguments and siprintf is available on the target. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126940 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
419454ad3720b8cf4613d9e790669c8beaccd1a4 |
|
03-Mar-2011 |
Richard Osborne <richard@xmos.com> |
Optimize sprintf -> siprintf if there are no floating point arguments and siprintf is available on the target. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
3649824bec09768cbdee7aa7cfbbcdd865373626 |
|
03-Mar-2011 |
Richard Osborne <richard@xmos.com> |
Optimize printf -> iprintf if there are no floating point arguments and iprintf is available on the target. Currently iprintf is only marked as being available on the XCore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126935 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
188a7e00e784f78d6b5b250a64ac5c374f0fd3f0 |
|
18-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add a way to disable all builtins, wire it up to opt's -disable-simplifylibcalls flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
398c0d8b7417dedbe244020ffb67abb54aaa1c59 |
|
18-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add memset and memcpy, though they are always available for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|
ce99120084f549a523213064648662a704e8b789 |
|
18-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
introduce a new TargetLibraryInfo pass, which transformations can use to query about available library functions. For now this just has memset_pattern16, which exists on darwin, but it can be extended for a bunch of other things in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125965 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Target/TargetLibraryInfo.h
|