DeLesley Hutchins
68cc3f13c2
Consumed analysis: track state of temporary objects.
...
Earlier versions discarded the state too soon, and did not track state changes,
e.g. when passing a temporary to a move constructor. Patch by
chris.wailes@gmail.com ; review and minor fixes by delesley.
llvm-svn: 194900
2013-11-16 00:22:43 +00:00
Owen Anderson
b88cc2fc52
Small improvement to InstrinsicEmitter::EmitAttributes. This change removes the “pushing” and “clearing” of the SmallVector and instead uses const arrays to pass the attributeKinds to AttributeSet::get .
...
Patch by Aditya Nandakumar.
llvm-svn: 194899
2013-11-16 00:20:01 +00:00
Eric Christopher
d0b82aea8c
For dwarf4 use the correct form for referencing debug_loc locations,
...
and update test cases accordingly.
This doesn't affect the output dumped using llvm-dwarfdump, but
readelf does now dump the debug_loc section.
llvm-svn: 194898
2013-11-16 00:18:40 +00:00
John Thompson
4762b23e6c
Corrected comment about MS prgama warning.
...
llvm-svn: 194897
2013-11-16 00:16:03 +00:00
David Blaikie
b01f13ecf6
DwarfCompileUnit: Add type safety to CompileUnit::getNode by returning DICompileUnit instead of a raw MDNode*.
...
llvm-svn: 194895
2013-11-15 23:54:45 +00:00
Rui Ueyama
12027e58e1
Use range-based for loop.
...
end() was evaluated every time through a loop. This patch eliminates it.
llvm-svn: 194894
2013-11-15 23:53:32 +00:00
David Blaikie
5a15240ef7
DwarfCompileUnit: Add type safety by using DICompileUnit rather than raw MDNode* for the CU metadata node
...
llvm-svn: 194893
2013-11-15 23:52:02 +00:00
David Blaikie
cb8e435ba4
DwarfCompileUnit: Simplify getLanguage() calls to use existing member function
...
llvm-svn: 194892
2013-11-15 23:50:53 +00:00
Yaron Keren
c0299d7f53
Fix-it suggestion for fixing min or max defines on Windows.
...
llvm-svn: 194891
2013-11-15 23:41:01 +00:00
Rui Ueyama
249becb831
Use llvm_unreachable() instead of assert() at where control should never get.
...
llvm-svn: 194890
2013-11-15 23:36:48 +00:00
Ana Pazos
6f2a47a9e5
Implemented aarch64 Neon scalar vmulx_lane intrinsics
...
Implemented aarch64 Neon scalar vfma_lane intrinsics
Implemented aarch64 Neon scalar vfms_lane intrinsics
Implemented legacy vmul_n_f64, vmul_lane_f64, vmul_laneq_f64
intrinsics (v1f64 parameter type) using Neon scalar instructions.
Implemented legacy vfma_lane_f64, vfms_lane_f64,
vfma_laneq_f64, vfms_laneq_f64 intrinsics (v1f64 parameter type)
using Neon scalar instructions.
llvm-svn: 194889
2013-11-15 23:33:31 +00:00
Ana Pazos
d035209bd7
Implemented aarch64 Neon scalar vmulx_lane intrinsics
...
Implemented aarch64 Neon scalar vfma_lane intrinsics
Implemented aarch64 Neon scalar vfms_lane intrinsics
Implemented legacy vmul_n_f64, vmul_lane_f64, vmul_laneq_f64
intrinsics (v1f64 parameter type) using Neon scalar instructions.
Implemented legacy vfma_lane_f64, vfms_lane_f64,
vfma_laneq_f64, vfms_laneq_f64 intrinsics (v1f64 parameter type)
using Neon scalar instructions.
llvm-svn: 194888
2013-11-15 23:32:10 +00:00
Rui Ueyama
559b0aa89e
Duplicate code removal.
...
llvm-svn: 194887
2013-11-15 23:28:58 +00:00
Tim Northover
3ae5a369d8
Revert premature instructions to build __sync_fetch_*
...
My commits got a bit twisted when I was working on both embedded support and
__sync stuff on the same branch. Sorry about that.
llvm-svn: 194886
2013-11-15 23:26:29 +00:00
John Thompson
5100e8e9ae
Reworked moduleImport example with real data.
...
llvm-svn: 194885
2013-11-15 23:26:14 +00:00
Ana Pazos
4b422a2474
Updated comment - testing commit rights
...
llvm-svn: 194884
2013-11-15 23:25:10 +00:00
Adrian Prantl
4583f7d51a
Replace the dangling context hotfix with an assertion.
...
llvm-svn: 194883
2013-11-15 23:21:39 +00:00
Lang Hames
56045cb219
Remove unused arguments.
...
llvm-svn: 194882
2013-11-15 23:19:01 +00:00
Fariborz Jahanian
b8233193a4
ObjectiveC ARC. Only briding of pointer to struct CF object is allowed.
...
Improve on wording on illegal objc_bridge argumment.
// rdar://15454846
llvm-svn: 194881
2013-11-15 23:14:45 +00:00
Lang Hames
24e3954700
During folding for patchpoint/stackmap instructions, defer creation of new MIs
...
until we know that folding will be successful.
No functional change.
llvm-svn: 194880
2013-11-15 23:13:21 +00:00
David Blaikie
25bc7198b2
DwarfDebug: Push DISubprogram through updateSubprogramScopeDIE
...
llvm-svn: 194879
2013-11-15 23:13:08 +00:00
Tim Northover
2622b24a59
Darwin(ish): enable embedded compiler-rt builds on Darwin.
...
This builds extra versions of compiler-rt targeting various unhosted targets.
Only built on Darwin since even though they're not iOS or OSX, they share some
quirks.
llvm-svn: 194878
2013-11-15 23:12:44 +00:00
Rui Ueyama
085886430a
Replace magic number with sizeof(). No functionality change.
...
llvm-svn: 194877
2013-11-15 23:11:00 +00:00
Arnold Schwaighofer
dbb7b87d7a
LoopVectorizer: Use abi alignment for accesses with no alignment
...
When we vectorize a scalar access with no alignment specified, we have to set
the target's abi alignment of the scalar access on the vectorized access.
Using the same alignment of zero would be wrong because most targets will have a
bigger abi alignment for vector types.
This probably fixes PR17878.
llvm-svn: 194876
2013-11-15 23:09:33 +00:00
David Blaikie
2ad0016e53
DwarfCompileUnit: Push DIDescriptors through a getDIE/insertDIE
...
llvm-svn: 194875
2013-11-15 23:09:13 +00:00
Juergen Ributzka
c620032de9
Fix previous commit (r194865)
...
llvm-svn: 194874
2013-11-15 23:02:56 +00:00
Tim Northover
084647d4c0
Add clang_darwin_embedded platform for embedded projects
...
This should build a separate set of embedded runtime libraries, supporting the
option product:
{PIC, static} x { Hard-float, soft-float }
The emphasis is on ARM platforms (Cortex-M4F, Cortex-M3, Cortex-M0) but X86
variants are also built where possible.
rdar://problem/10817205
llvm-svn: 194873
2013-11-15 23:00:42 +00:00
Richard Smith
2ac43ad8db
PR17949: Fix crash if someone puts a namespace inside a class template.
...
llvm-svn: 194872
2013-11-15 23:00:02 +00:00
David Blaikie
4201ddf368
DwarfCompileUnit: Push DIDescriptor usage out from isShareableAcrossCUs
...
This is the first of a few similar patches. We'll see how far it
goes/makes sense.
llvm-svn: 194871
2013-11-15 22:59:36 +00:00
Yaron Keren
6e72b8ba8c
Windows.h is not required.
...
llvm-svn: 194870
2013-11-15 22:54:15 +00:00
Richard Smith
a3e01cf822
PR8455: Handle an attribute between a goto label and a variable declaration per
...
the GNU documentation: the attribute only appertains to the label if it is
followed by a semicolon. Based on a patch by Aaron Ballman!
llvm-svn: 194869
2013-11-15 22:45:29 +00:00
Matt Arsenault
9c13dd027b
Fix typos.
...
I somehow didn't notice before that the examples
for addrspacecast use the wrong syntax for addrspace.
llvm-svn: 194868
2013-11-15 22:43:50 +00:00
Marshall Clow
dfdac03c8f
Move <optional> into include/experimental, and into the std::experimental namespace, since it's not part of C++14, but of an upcoming TS
...
llvm-svn: 194867
2013-11-15 22:42:10 +00:00
Rui Ueyama
3f823e3af1
Remove duplicate code.
...
llvm-svn: 194866
2013-11-15 22:37:34 +00:00
Juergen Ributzka
dbedae89b9
[weak vtables] Remove a bunch of weak vtables
...
This patch removes most of the trivial cases of weak vtables by pinning them to
a single object file.
Differential Revision: http://llvm-reviews.chandlerc.com/D2068
Reviewed by Andy
llvm-svn: 194865
2013-11-15 22:34:48 +00:00
Fariborz Jahanian
e79cef6ae1
ObjectiveC ARG. A positive test of my previous patch.
...
// rdar://15454846
llvm-svn: 194864
2013-11-15 22:33:12 +00:00
Hans Wennborg
96655c0ee4
Fix typo in CGRecordLayoutBuilder.cpp: s/Field/Fields/ in comment
...
llvm-svn: 194863
2013-11-15 22:31:11 +00:00
Matt Arsenault
23c9274b1a
Fix confusing machine verifier error.
...
The error reported the number of explicit operands,
but that isn't what is checked. In my case, this
resulted in the confusing errors
"Too few operands." followed shortly by
"8 operands expected, but 8 given."
llvm-svn: 194862
2013-11-15 22:18:19 +00:00
Fariborz Jahanian
a649c82d69
ObjectiveC ARC. Lookup type associated with objc_bridage at
...
the point of CF object type-cast and issue diagnostic
if it is not a valid ObjectiveC class. // rdar//15454846.
This is wip.
llvm-svn: 194861
2013-11-15 22:18:17 +00:00
Rui Ueyama
fbd82d0813
[PECOFF] Use INT3 instead of NOP.
...
This patch does not change the meaning of the program, but if something's wrong
in the linker or the compiler and the control reaches to the gap of imported
function table, it will stop immediately because of the presence of INT3. If
NOP, it'd fall through to the next call instruction, which is usually a
completely foreign function call.
llvm-svn: 194860
2013-11-15 22:11:43 +00:00
Andrew Kaylor
515b1daad3
Fix a problem in MCJIT identifying the module containing a global variable.
...
Patch by Keno Fischer!
llvm-svn: 194859
2013-11-15 22:10:21 +00:00
Matt Arsenault
f14032af0e
Make method static
...
llvm-svn: 194858
2013-11-15 22:02:28 +00:00
Chandler Carruth
8c60bc9211
[PM] Fix an iterator problem spotted by the MSVC debug iterators and
...
AaronBallman. Thanks for the excellent review.
llvm-svn: 194857
2013-11-15 21:56:44 +00:00
Chandler Carruth
1205a6c0c1
[PM] Run clang-format on a few lines that I missed in my first pass,
...
pulling them under 80-columns. No functionality changed.
llvm-svn: 194856
2013-11-15 21:44:35 +00:00
Ed Maste
21ad67b4ef
test: Remove annotation for now-fixed FreeBSD issue pr15302
...
The failure to demangle 'anonymous namespace' on FreeBSD is fixed (twice)
- the failure in FreeBSD's in-tree __cxa_demangle has been addressed
- FreeBSD now uses the copy of the demangler built into lldb, due to other
remaining limitations in the in-tree __cxa_demangle
llvm.org/pr15302
llvm-svn: 194855
2013-11-15 21:33:30 +00:00
Chad Rosier
7fa60db4a9
These ACLE tests no longer need to cast the return value.
...
llvm-svn: 194854
2013-11-15 21:28:24 +00:00
Chad Rosier
0c57c3402e
[AArch64] Fix the scalar NEON ACLE functions so that they return float/double
...
rather than the vector equivalent.
llvm-svn: 194853
2013-11-15 21:28:10 +00:00
Rui Ueyama
e448f9e418
Path: Recognize COFF import library file magic.
...
Summary: Make identify_magic to recognize COFF import file.
Reviewers: Bigcheese
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2165
llvm-svn: 194852
2013-11-15 21:22:02 +00:00
Rui Ueyama
94f2271d63
[PECOFF] Remove unnecessary static member.
...
llvm-svn: 194851
2013-11-15 21:12:11 +00:00
Richard Smith
ca9b0b6863
Diagnose C++11 attributes before fp_contract pragmas.
...
llvm-svn: 194850
2013-11-15 21:10:54 +00:00