Commit Graph

136569 Commits

Author SHA1 Message Date
Craig Topper
abbe1e899e [X86] Cleanup patterns for AVX/SSE for PS operations. Always try to look for bitcasts from floating point types. If only AVX1 is supported we also need to handle integer types with floating point ops without looking for bitcasts.
Previously SSE1 had a pattern that looked for integer types without bitcasts, but the type wasn't legal with only SSE1 and SSE2 add an identical pattern for the integer instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278089 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 03:06:28 +00:00
Craig Topper
4f5ecb323c [X86] Remove unnecessary bitcast from the front of AVX1Only 256-bit logical operation patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278088 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 03:06:26 +00:00
Matthias Braun
9a82d30088 X86InstrInfo: Update liveness in classifyLea()
We need to update liveness information when we create COPYs in
classifyLea().

This fixes http://llvm.org/28301

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278086 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 01:47:26 +00:00
Derek Schuff
e7c619024b [WebAssembly] Fix bugs in WebAssemblyLowerEmscriptenExceptions pass
* Delete extra '_' prefixes from JS library function names. fixImports()
  function in JS glue code deals with this for wasm.
* Change command-line option names in order to be consistent with
  asm.js.
* Add missing lowering code for llvm.eh.typeid.for intrinsics
* Delete commas in mangled function names
* Fix a function argument attributes bug. Because we add the pointer to
  the original callee as the first argument of invoke wrapper, all
  argument attribute indices have to be incremented by one.

Patch by Heejin Ahn

Differential Revision: https://reviews.llvm.org/D23258

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278081 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 00:29:55 +00:00
Sean Silva
2058f10aaa Consistently use CGSCCAnalysisManager
Besides a general consistently benefit, the extra layer of indirection
allows the mechanical part of https://reviews.llvm.org/D23256 that
requires touching every transformation and analysis to be factored out
cleanly.

Thanks to David for the suggestion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278080 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 00:28:56 +00:00
Sean Silva
a4f9d70f9b Consistently use LoopAnalysisManager
One exception here is LoopInfo which must forward-declare it (because
the typedef is in LoopPassManager.h which depends on LoopInfo).

Also, some includes for LoopPassManager.h were needed since that file
provides the typedef.

Besides a general consistently benefit, the extra layer of indirection
allows the mechanical part of https://reviews.llvm.org/D23256 that
requires touching every transformation and analysis to be factored out
cleanly.

Thanks to David for the suggestion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278079 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 00:28:52 +00:00
Sean Silva
2fb9a98752 Consistently use ModuleAnalysisManager
Besides a general consistently benefit, the extra layer of indirection
allows the mechanical part of https://reviews.llvm.org/D23256 that
requires touching every transformation and analysis to be factored out
cleanly.

Thanks to David for the suggestion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278078 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 00:28:38 +00:00
Sean Silva
20b343c051 Consistently use FunctionAnalysisManager
Besides a general consistently benefit, the extra layer of indirection
allows the mechanical part of https://reviews.llvm.org/D23256 that
requires touching every transformation and analysis to be factored out
cleanly.

Thanks to David for the suggestion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278077 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 00:28:15 +00:00
Saleem Abdulrasool
b79146f48d CodeView: extract the OMF Directory Header
The DebugDirectory contains a pointer to the CodeView info structure which is a
derivative of the OMF debug directory.  The structure has evolved a bit over
time, and PDB 2.0 used a slightly different definition from PDB 7.0.  Both of
these are specific to CodeView and not COFF.  Reflect this by moving the
structure definitions into the DebugInfo/CodeView headers.  Define a generic
DebugInfo union type that can be used to pass around a reference to the
DebugInfo irrespective of the versioning.  NFC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278075 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 00:25:12 +00:00
Sanjay Patel
f7c3c99642 [x86] split combineVSelectWithAllOnesOrZeros into a helper function; NFCI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278074 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-09 00:01:11 +00:00
Derek Schuff
d55ce11c46 [WebAssembly] Fix CFI index to account for padding nullptr function
The WebAssembly linker now creates a dummy function at index 0 to
prevent miscomparisons with the NULL pointer, see
https://github.com/WebAssembly/binaryen/pull/658. Thanks to pcc for
pointing out this problem!

Patch by Dominic Chen

Differential Revision: https://reviews.llvm.org/D23137

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278073 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 23:56:01 +00:00
Rui Ueyama
922b42a995 Revert "Do not ignore SizeOfOptionalHeader in COFF header even if PE header is not present."
This reverts commit r278066 to unbreak buildbots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278070 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 23:07:03 +00:00
Lang Hames
06c9df2f1c Revert r278065 while I investigate some build-bot breakage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278069 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 22:57:30 +00:00
Rui Ueyama
2ea3c70816 Do not ignore SizeOfOptionalHeader in COFF header even if PE header is not present.
Attribute SizeOfOptionalHeader is ignored if no PE header is present
in the file. This attribute should be ignored according to standard,
however there are uses of this field even though it should not be used.

This change does not conform to PE/COFF standard, but there are several
COFF files without PE header, where you had to add up SizeOfOptionalHeader
in order to get proper section headers. Other tools and their own parsers
do take this into account.

Patch by Marek Milkovič!

https://reviews.llvm.org/D22750

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278066 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 22:54:22 +00:00
Lang Hames
fbda7015e7 [RuntimeDyld][Orc][MCJIT] Add partial weak-symbol support to RuntimeDyld.
This patch causes RuntimeDyld to check for existing definitions when it
encounters weak symbols. If a definition already exists then the new weak
definition is discarded. All symbol lookups within a "logical dylib" should now
agree on the address of any given weak symbol. This allows the JIT to better
match the behavior of the static linker for C++ code.

This support is only partial, as it does not allow strong definitions that
occur after the first weak definition (in JIT symbol lookup order) to override
the previous weak definitions. Support for this will be added in a future
patch.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278065 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 22:53:37 +00:00
Charles Davis
d77fdcbf64 Revert "[X86] Support the "ms-hotpatch" attribute."
This reverts commit r278048. Something changed between the last time I
built this--it takes awhile on my ridiculously slow and ancient
computer--and now that broke this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278053 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 21:20:15 +00:00
Justin Bogner
5090f4a7d3 InstCombine: Remove a redundant #ifdef NDEBUG. NFC
The DEBUG() macro already does this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278049 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 21:02:11 +00:00
Charles Davis
cedd288a90 [X86] Support the "ms-hotpatch" attribute.
Summary:
Based on two patches by Michael Mueller.

This is a target attribute that causes a function marked with it to be
emitted as "hotpatchable". This particular mechanism was originally
devised by Microsoft for patching their binaries (which they are
constantly updating to stay ahead of crackers, script kiddies, and other
ne'er-do-wells on the Internet), but is now commonly abused by Windows
programs to hook API functions.

This mechanism is target-specific. For x86, a two-byte no-op instruction
is emitted at the function's entry point; the entry point must be
immediately preceded by 64 (32-bit) or 128 (64-bit) bytes of padding.
This padding is where the patch code is written. The two byte no-op is
then overwritten with a short jump into this code. The no-op is usually
a `movl %edi, %edi` instruction; this is used as a magic value
indicating that this is a hotpatchable function.

Reviewers: majnemer, sanjoy, rnk

Subscribers: dberris, llvm-commits

Differential Revision: https://reviews.llvm.org/D19908

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278048 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 21:01:39 +00:00
Geoff Berry
d2aa4c0c88 [MemorySSA] Fix windows build breakage caused by r278028 (take 2)
r278028: [MemorySSA] Ensure address stability of MemorySSA object.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278041 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 19:33:27 +00:00
Krzysztof Parzyszek
e19c2467cc [Hexagon] Add pattern for 64-bit mulhs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278040 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 19:24:25 +00:00
Michael Zolotukhin
363a89eadc [LoopUnroll] Simplify loops created by unrolling.
Summary:
Currently loop-unrolling doesn't preserve loop-simplified form. This patch
fixes it by resimplifying affected loops.

Reviewers: chandlerc, sanjoy, hfinkel

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D23148

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278038 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 19:02:15 +00:00
Mehdi Amini
a27deb3b9a RefreshCallGraph does not modify the SCC, adding "const" to make it clear (NFC)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278037 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 18:51:05 +00:00
Geoff Berry
555c63f414 [MemorySSA] Fix windows build breakage caused by r278028
r278028: [MemorySSA] Ensure address stability of MemorySSA object.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278035 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 18:27:22 +00:00
Elliot Colp
c97b57bee4 Re-add SystemZ SNaN test
The floating-point bug affecting ninja-x64-msvc-RA-centos6 is fixed (r277813) so this test should
now pass


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278034 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 18:11:13 +00:00
Lang Hames
32217d6ae4 [BuildingAJIT] Fix a couple of typos in the Chapter 3 draft.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278033 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 18:09:56 +00:00
Nirav Dave
cf83621dcd [X86] Improve code size on X86 segment moves
Moves of a value to a segment register from a 16-bit register is
equivalent to one from it's corresponding 32-bit register. Match gas's
behavior and rewrite instructions to the shorter of equivalent forms.

Reviewers: rnk, ab

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D23166

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278031 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 18:01:04 +00:00
Geoff Berry
eee9c604a1 [MemorySSA] Ensure address stability of MemorySSA object.
Summary:
Ensure that the MemorySSA object never changes address when using the
new pass manager since the walkers contained by MemorySSA cache pointers
to it at construction time.  This is achieved by wrapping the
MemorySSAAnalysis result in a unique_ptr.  Also add some asserts that
check for this bug.

Reviewers: george.burgess.iv, dberlin

Subscribers: mcrosier, hfinkel, chandlerc, silvas, llvm-commits

Differential Revision: https://reviews.llvm.org/D23171

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278028 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 17:52:01 +00:00
Oliver Stannard
b85d8f463e [ARM] Add support for embedded position-independent code
This patch adds support for some new relocation models to the ARM
backend:

* Read-only position independence (ROPI): Code and read-only data is accessed
  PC-relative. The offsets between all code and RO data sections are known at
  static link time. This does not affect read-write data.
* Read-write position independence (RWPI): Read-write data is accessed relative
  to the static base register (r9). The offsets between all writeable data
  sections are known at static link time. This does not affect read-only data.

These two modes are independent (they specify how different objects
should be addressed), so they can be used individually or together. They
are otherwise the same as the "static" relocation model, and are not
compatible with SysV-style PIC using a global offset table.

These modes are normally used by bare-metal systems or systems with
small real-time operating systems. They are designed to avoid the need
for a dynamic linker, the only initialisation required is setting r9 to
an appropriate value for RWPI code.

I have only added support to SelectionDAG, not FastISel, because
FastISel is currently disabled for bare-metal targets where these modes
would be used.

Differential Revision: https://reviews.llvm.org/D23195



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278015 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 15:28:31 +00:00
Zhan Jun Liau
c6b5e8816e [SystemZ] Add support for the .insn directive
Summary:
Add support for the .insn directive.

.insn is an s390 specific directive that allows encoding of an instruction
instead of using a mnemonic. The motivating case is some code in node.js that
requires support for the .insn directive.

Reviewers: koriakin, uweigand

Subscribers: koriakin, llvm-commits

Differential Revision: https://reviews.llvm.org/D21809

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278012 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 15:13:08 +00:00
Nico Weber
43949cd3ed Revert r2277979.
For some reason, MSVC2013's cl.exe crashes with
  fatal error C1001: An internal error has occurred in the compiler
with this when compiling e.g. LoopDistribute.cpp.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278011 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 14:51:53 +00:00
Sebastian Pop
9ecdabae84 GVN-hoist: enable by default
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278010 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 14:46:15 +00:00
Artur Pilipenko
fe11e980a9 [LVI] NFC. On the fast dest path use inverse predicate instead of inverse range result
Gathering constantins from a condition on the false path ask makeAllowedICmpRegion about inverse predicate instead of inversing the resulting range.

This change was separated from the review "[LVI] Make LVI smarter about comparisons with non-constants" (https://reviews.llvm.org/D23205#inline-198361)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278009 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 14:33:11 +00:00
Artur Pilipenko
b827587818 [LVI] NFC. Rename confusing local NegOffset to Offset
NegOffset is not necessarily negative


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278008 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 14:13:56 +00:00
Artur Pilipenko
c14eb9a19e [LVI] NFC. Extract LHS, RHS, Predicate locals in getValueFromCondition
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278007 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 14:08:37 +00:00
Silviu Baranga
1eae80e95d [AArch64] PR28877: Don't assume we're running after legalization when creating vcvtfp2fxs
Summary:
The DAG combine transformation that was generating the
aarch64_neon_vcvtfp2fxs node was assuming that all
inputs where legal and wasn't accounting that the input
could be a v4f64 if we're trying to do the transformation
before legalization. We now bail out in this case.

All illegal types besides v4f64 were already rejected.

Fixes https://llvm.org/bugs/show_bug.cgi?id=28877.

Reviewers: jmolloy

Subscribers: aemerson, rengolin, llvm-commits

Differential Revision: https://reviews.llvm.org/D23261

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278002 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 13:13:57 +00:00
Daniel Sanders
7dd6fd6b28 Re-commit r277988: [mips][ias] Fix all the hacks related to MIPS-specific unary operators (%hi/%lo/%gp_rel/etc.).
Hopefully with the MSVC builds fixed. I've added a missing '#include <tuple>'
that gcc and clang don't seem to need.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277995 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 11:50:25 +00:00
Simon Pilgrim
b1fa5760b3 Fix Wdocumentation unknown parameter warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277994 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 11:49:24 +00:00
Simon Pilgrim
4185a585cb [X86][SSE] Assert if the shuffle mask indices are not -1 or within a valid input range
As discussed in post-review rL277959

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277993 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 11:07:34 +00:00
Daniel Sanders
0985f50be7 Revert r277988: [mips][ias] Fix all the hacks related to MIPS-specific unary operators (%hi/%lo/%gp_rel/etc.).
It seems that MSVC doesn't like std::tie().



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277990 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 09:33:14 +00:00
Daniel Sanders
007417372d [mips][ias] Fix all the hacks related to MIPS-specific unary operators (%hi/%lo/%gp_rel/etc.).
Summary:
They are now lexed as a single token on targets where
MCAsmInfo::HasMipsExpressions is true and then parsed in a similar way to
the '~' operator as part of MCExpr::parseExpression.

As a result:
* expressions and immediates no longer have different parsing rules. The
  difference is now solely down to whether evaluateAsAbsolute() succeeds.
* %hi(%neg(%gp_rel(x))) are no longer parsed as a single operator and
  decomposed into the three MipsMCExpr nodes. They are parsed directly as
  three MipsMCExpr nodes.
  * parseMemOperand no longer needs to eat all the surrounding parenthesis
    to get at the outermost operator to make this work
* %hi(%neg(%gp_rel(x))) and %lo(%neg(%gp_rel(x))) are no longer the only
  3-in-1 relocs that parse for N64. They're still the only combinations that
  are permitted in relocatable expressions though. Fixing that should be a
  later patch.
* We no longer need to list all the tokens that can occur as the first token of
  an expression or immediate.

test/MC/Mips/expr1.s:
    This change also prevents the incorrect lowering of %lo(2*4)+foo to
    %lo(8+foo) which is not an equivalent expression (the difference is
    whether foo is truncated to 16-bit or not) and the test has been
    updated to account for the macro expansion the correct expression requires.

Reviewers: sdardis

Subscribers: dsanders, sdardis, llvm-commits

Differential Revision: https://reviews.llvm.org/D23110

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277988 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 09:20:52 +00:00
Diana Picus
b3871891c4 [SelectionDAG] Refactor visitInlineAsm a bit. NFCI.
This shaves off ~100 lines from visitInlineAsm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277987 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 08:54:39 +00:00
Sean Silva
6d4afae8c0 Add some comments linking back to PR28400.
Thanks to Mehdi for the suggestion!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277984 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 07:03:49 +00:00
Sean Silva
6f2a8d3aee [PM] More workaround for PR28400
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277982 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 05:38:06 +00:00
Sean Silva
ec1bd22f35 [PM] BasicAA needs to be invalidated since it holds pointers to other stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277981 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 05:38:03 +00:00
Sean Silva
d4b4a02255 [PM] Invalidate CallGraphAnalysis because it holds AssertingVH
This is essentially PR28400. The fix here is similar to that implemented
in r274656.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277980 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 05:38:01 +00:00
Sean Silva
95c2919eb6 [PM] Function-level TLI is also immutable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277979 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 05:37:58 +00:00
Daniel Berlin
cd3dcaa09e [MSSA] Fix PR28880 by fixing use optimizer's lower bound tracking behavior.
Summary:
In the use optimizer, we need to keep of whether the lower bound still
dominates us or else we may decide a lower bound is still valid when it
is not due to intervening pushes/pops.  Fixes PR28880 (and probably a
bunch of other things).

Reviewers: george.burgess.iv

Subscribers: MatzeB, llvm-commits, sebpop

Differential Revision: https://reviews.llvm.org/D23237

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277978 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 04:44:53 +00:00
Eli Friedman
97b394f6af [JumpThreading] Fix handling of aliasing metadata.
Summary:
The correctness fix here is that when we CSE a load with another load,
we need to combine the metadata on the two loads. This matches the
behavior of other passes, like instcombine and GVN.

There's also a minor optimization improvement here: for load PRE, the
aliasing metadata on the inserted load should be the same as the
metadata on the original load. Not sure why the old code was throwing
it away.

Issue found by inspection.

Differential Revision: http://reviews.llvm.org/D21460

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277977 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 04:10:22 +00:00
Davide Italiano
4a8f62e36f [MC] Delete use of *structors_used.
Jim Grosbach and Kevin Enderby think those are not used anymore.
Originally submitted by: Rafael Espindola

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277973 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 03:30:01 +00:00
Davide Italiano
87b8240c77 [SimplifyLibCalls] Emit sqrt intrinsic instead of a libcall.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@277972 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-08 03:23:01 +00:00