summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [mips] Added support for various EVA ASE instructions.Daniel Sanders2015-09-1529-36/+679
| | | | | | | | | | | | | | | | | | | | Summary: Added support for the following instructions: CACHEE, LBE, LBUE, LHE, LHUE, LWE, LLE, LWLE, LWRE, PREFE, SBE, SHE, SWE, SCE, SWLE, SWRE, TLBINV, TLBINVF This required adding some infrastructure for the EVA ASE. Patch by Scott Egerton. Reviewers: vkalintiris, dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D11139 llvm-svn: 247669
* Doxygen fix InitializeBuiltins -> initializeBuiltinsIsmail Donmez2015-09-151-1/+1
| | | | llvm-svn: 247668
* Make clang/test/CodeGen/catch-undef-behavior.c* capable of -Asserts with ↵NAKAMURA Takumi2015-09-152-23/+21
| | | | | | | | "opt -instnamer". It reverts r231717. llvm-svn: 247667
* [LLDB][MIPS] Add support for DT_MIPS_RLD_MAP_RELBhushan D. Attarde2015-09-151-4/+23
| | | | | | | | | | | | SUMMARY: This patch provides support for MIPS specific DT_MIPS_RLD_MAP_REL tag in LLDB. This tag allows debugging of MIPS position independent executables and provides access to shared library information. Reviewers: clayborg Subscribers: mohit.bhakkad, sagar, jaydeep, lldb-commits Differential Revision: http://reviews.llvm.org/D12794 llvm-svn: 247666
* Mark TestMultipleDebuggers as flakey on Darwin.Todd Fiala2015-09-151-0/+1
| | | | | | | See if this gets us past a few machines that are failing it when it is expected to pass. llvm-svn: 247665
* Fixed up TestConstVariables for Linux/FreeBSD, take 2.Todd Fiala2015-09-151-1/+9
| | | | | | | | | | | Marked XFAIL for: clang - all versions < 3.5. I verified the first version it passes on Linux is 3.5. clang - version 3.7 (verified this fails) clang - TOT/3.8 (verified this currently fails) Ideally we dig into why this started failing and (hopefully) get this passing again. llvm-svn: 247664
* Coding style fix.Bruce Mitchener2015-09-151-2/+0
| | | | llvm-svn: 247663
* Use uint64_t for GoArray size.Bruce Mitchener2015-09-152-13/+6
| | | | | | | | | | | | | | | | | | Summary: This was int64_t, but all usages of it came from code that was passing in unsigned values. The usages of the array size, except for one, were also treating it as an unsigned value. The usage that treated it as signed was to try to figure out if it was a complete type or not, but the callers creating the array didn't seem to be aware of using -1 as an indicator for an incomplete array. Reviewers: ribrdb, clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12872 llvm-svn: 247662
* integer: Update integer limits to comply with specAaron Watry2015-09-151-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | The values for the char/short/integer/long minimums were declared with their actual values, not the definitions from the CL spec (v1.1). As a result, (-2147483648) was actually being treated as a long by the compiler, not an int, which caused issues when trying to add/subtract that value from a vector. Update the definitions to use the values declared by the spec, and also add explicit casts for the char/short/int minimums so that the compiler actually treats them as shorts/chars. Without those casts, they actually end up stored as integers, and the compiler may end up storing the INT_MIN as a long. The compiler can sign extend the values if it needs to convert the char->short, short->int, or int->long v2: Add explicit cast for INT_MIN and fix some type-o's and wrapping in the commit message. Reported-by: Moritz Pflanzer <moritz.pflanzer14@imperial.ac.uk> CC: Moritz Pflanzer <moritz.pflanzer14@imperial.ac.uk> Reviewed-by: Tom Stellard <thomas.stellard@amd.com> Signed-off-by: Aaron Watry <awatry@gmail.com> llvm-svn: 247661
* [analyzer] Restore behavior change introduced by r247657.Devin Coughlin2015-09-151-4/+6
| | | | | | | | r247657 fixed warnings about unused variables when compiling without asserts but changed behavior. This commit restores the old behavior but still suppresses the warnings. llvm-svn: 247660
* [MS ABI] Restore our warning for overwide bitfields using the MS ABIDavid Majnemer2015-09-152-20/+27
| | | | | | This restores a diagnostic lost in r247651. llvm-svn: 247659
* [CMake] Rename target->dest as per feedback from Chapuni on ↵Chris Bieneman2015-09-151-10/+10
| | | | | | http://reviews.llvm.org/D12864 llvm-svn: 247658
* ExprEngineObjC.cpp: Fix warnings. [-Wunused-variable]NAKAMURA Takumi2015-09-151-4/+4
| | | | llvm-svn: 247657
* [PlaceSafepoints] Make the width of a counted loop settable.Sanjoy Das2015-09-152-19/+68
| | | | | | | | | | | | | | | | | | Summary: This change lets a `PlaceSafepoints` client change how wide the trip count of a loop has to be for the loop to be considerd "counted", via `CountedLoopTripWidth`. It also removes the boolean `SkipCounted` flag and the `upperTripBound` constant -- we can get the old behavior of `SkipCounted` == `false` by setting `CountedLoopTripWidth` to `13` (2 ^ 13 == 8192). Reviewers: reames Subscribers: llvm-commits, sanjoy Differential Revision: http://reviews.llvm.org/D12789 llvm-svn: 247656
* ItaniumCXXABI.cpp: Fix a warning. [-Wunused-variable]NAKAMURA Takumi2015-09-151-2/+1
| | | | llvm-svn: 247655
* [modules] A using-declaration doesn't introduce a new entity, just a new nameRichard Smith2015-09-155-3/+112
| | | | | | | for an existing entity, and as such a using-declaration doesn't need to conflict with a hidden entity (nor vice versa). llvm-svn: 247654
* [analyzer] Skip Pre/Post handlers for ObjC calls when receiver is nil.Devin Coughlin2015-09-158-50/+230
| | | | | | | | | | | | | | | | | | | | | | | | | In Objective-C, method calls with nil receivers are essentially no-ops. They do not fault (although the returned value may be garbage depending on the declared return type and architecture). Programmers are aware of this behavior and will complain about a false alarm when the analyzer diagnoses API violations for method calls when the receiver is known to be nil. Rather than require each individual checker to be aware of this behavior and suppress a warning when the receiver is nil, this commit changes ExprEngineObjC so that VisitObjCMessage skips calling checker pre/post handlers when the receiver is definitely nil. Instead, it adds a new event, ObjCMessageNil, that is only called in that case. The CallAndMessageChecker explicitly cares about this case, so I've changed it to add a callback for ObjCMessageNil and moved the logic in PreObjCMessage that handles nil receivers to the new callback. rdar://problem/18092611 Differential Revision: http://reviews.llvm.org/D12123 llvm-svn: 247653
* ELF2: Simplify by removing temporary variables.Rui Ueyama2015-09-151-7/+2
| | | | llvm-svn: 247652
* [MS ABI] Overwide bool bitfields should be permittedDavid Majnemer2015-09-152-6/+9
| | | | | | | | Overwide bool bitfields have eight bits of storage size, make sure we take the padding into account when determining whether or not they are problematic. llvm-svn: 247651
* small test bugfixPiotr Padlewski2015-09-151-2/+2
| | | | llvm-svn: 247650
* [WebAssembly] Implement int64-to-int32 conversion.Dan Gohman2015-09-152-0/+19
| | | | llvm-svn: 247649
* Revert "Fixup XFAIL marking on TestConstVariables for clang version"Chaoren Lin2015-09-151-3/+1
| | | | | | | | | | | | | | | Summary: Linux with ToT clang (3.8) fails. This reverts commit r247633. Reviewers: tfiala Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12868 llvm-svn: 247648
* Fix error on windows:Ryan Brown2015-09-151-0/+2
| | | | | | | c:\buildbot\lldb-windows-x86\lldb-windows-x86\llvm\tools\lldb\source\symbol\goastcontext.cpp(906) : warning C4715: 'lldb_private::GoASTContext::GetBitSize' : not all control paths return a value c:\buildbot\lldb-windows-x86\lldb-windows-x86\llvm\tools\lldb\source\symbol\goastcontext.cpp(1175) : error C4716: 'lldb_private::GoASTContext::ConvertStringToFloatValue' : must return a value llvm-svn: 247647
* Generating assumption loads of vptr after ctor call (fixed)Piotr Padlewski2015-09-1514-151/+641
| | | | | | | | | | | | | | | | | | Generating call assume(icmp %vtable, %global_vtable) after constructor call for devirtualization purposes. For more info go to: http://lists.llvm.org/pipermail/cfe-dev/2015-July/044227.html Edit: Fixed version because of PR24479 and other bug caused in chrome. After this patch got reverted because of ScalarEvolution bug (D12719) Merged after John McCall big patch (Added Address). http://reviews.llvm.org/D11859 http://reviews.llvm.org/D12865 llvm-svn: 247646
* Fix typo.Rui Ueyama2015-09-151-1/+1
| | | | llvm-svn: 247645
* Fix style.Rui Ueyama2015-09-151-8/+4
| | | | llvm-svn: 247644
* Prevent implicit re-interpret casts between ExtVector and Scalar types.Stephen Canon2015-09-152-0/+27
| | | | | | Previously, in certain cases lax vector conversions could occur between scalar floating-point values and ExtVector types; these conversions would be simple bitcasts. We need to allow them with other vector types to support some common headers, but we don't need them for ExtVector. Preventing them here makes them behave like other operations involving scalars and ExtVectors. llvm-svn: 247643
* Support inline functions symbolization in Addr2Line symbolizer.Alexey Samsonov2015-09-143-26/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch by Maxim Ostapenko! Summary: Right now, Addr2Line symbolizer in asan_symbolize.py doesn't support inline functions symbolization. This might be a useful feature for using ASan on embedded systems. Test results: $ cat test.c static inline void FooBarBaz() { __sanitizer_print_stack_trace(); } int main() { FooBarBaz(); return 0; } $ clang test.c -fsanitize=address -g -O2 -o test.x && ./test.x &> /tmp/test.log $ ./projects/compiler-rt/lib/asan/scripts/asan_symbolize.py -l /tmp/test.log #0 0x42095e in __sanitizer_print_stack_trace _asan_rtl_ #1 0x4cec07 in FooBarBaz /home/max/build/llvm/asan/test.c:4 #2 0x4cec07 in main /home/max/build/llvm/asan/test.c:8 #3 0x7f89f0891ec4 in __libc_start_main /build/buildd/eglibc-2.19/csu/libc-start.c:287 Reviewers: glider, samsonov Subscribers: jevinskie, llvm-commits, ygribov Differential Revision: http://reviews.llvm.org/D12153 llvm-svn: 247642
* Avoid a crash in the test suite where if we have a ObjC "id" type and we ask ↵Greg Clayton2015-09-141-1/+1
| | | | | | it for the PointeeType() we would get a CompilerType with a valid TypeSystem, but invalid opaque type, and ClangASTContext::IsClangType() previously would return true saying that it was a valid clang type and it would crash in removing qualifiers from a clang::QualType that was constructed with an NULL opaque type. llvm-svn: 247641
* clang/test/CodeGenCXX/2009-04-23-bool2.cpp: Avoid -mms-bitfields to add ↵NAKAMURA Takumi2015-09-141-1/+1
| | | | | | | explicit triple. FIXME: Better way to cancel -mms-bitfields? llvm-svn: 247640
* Marked TestEvents test as flakey on Linux.Todd Fiala2015-09-141-1/+1
| | | | | | | It's passing all the time for me (50/50), and was passing what looks like 9/10 times for the originator. llvm-svn: 247639
* Darwin has a debug info format that stores module types in stand alone files ↵Greg Clayton2015-09-141-2/+5
| | | | | | and it uses some of the DWO attributes. Don't assert in SymbolFileDWARFDwo, just return null so everything works. llvm-svn: 247638
* Simplify, NFC.Rafael Espindola2015-09-141-4/+2
| | | | | | Thanks to Rui for the suggestion. llvm-svn: 247637
* dsymutil: Remove the now obsolete RelocMgr argument from cloneDIE. (NFC)Adrian Prantl2015-09-141-8/+6
| | | | llvm-svn: 247636
* [llvm-cov] Disable name and path truncationVedant Kumar2015-09-142-6/+22
| | | | | | | | | | | Change the output of llvm-cov s.t it does not truncate function names and file paths when printing coverage reports. Differential Revision: http://reviews.llvm.org/D12647 rdar://22531141 llvm-svn: 247635
* [Solaris] Default to -fno-cxa-finalize.Rafael Espindola2015-09-142-6/+7
| | | | | | | | | | | There is no __cxa_finalize symbol available on recent Solaris OS versions, so we need this flag to make non trivial C++ programs run. Also stop looking for cxa_finalize.o, since it won't be there. Patch by Xan López! llvm-svn: 247634
* Fixup XFAIL marking on TestConstVariables for clang versionTodd Fiala2015-09-141-1/+3
| | | | | | | | | | Linux/clang on clang 3.6+ is passing this test. As OS X was in a similar position, I'm guessing this was fixed by a recent compiler. Might work on 3.5/3.4, but it is definitely working on clang 3.6. I didn't break out FreeBSD since this appears to be related to a compiler fix. llvm-svn: 247633
* [CMake] Refactor and cleanup generating and installing symlinks to tools.Chris Bieneman2015-09-144-58/+78
| | | | | | | | | | | | Summary: This change generalizes symlink generation and makes symlinks to tools obey LLVM_TOOLCHAIN_TOOLS. It makes it so that if you exclude llvm-ar from LLVM_TOOLCHAIN_TOOLS you don't end up with broken symlinks to llvm-lib and llvm-ranlib in your install. Reviewers: bogner, chapuni, rafael Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D12864 llvm-svn: 247632
* Fix the Xcode project to compile Cocoa.cpp instead of Coca.cpp.Greg Clayton2015-09-141-4/+4
| | | | llvm-svn: 247631
* Remove include that isn't needed.Greg Clayton2015-09-141-1/+0
| | | | llvm-svn: 247630
* Add a TypeSystem for GoRyan Brown2015-09-1419-26/+2932
| | | | | | | | Add GoASTContext and DWARFASTParserGo to support go. Differential Revision: http://reviews.llvm.org/D12585 llvm-svn: 247629
* Fix CMake build.Chaoren Lin2015-09-142-0/+2
| | | | | | | - Typo: Coca.cpp -> Cocoa.cpp - Missing include. llvm-svn: 247628
* Move Objective-C data formatters to the Objective-C language plugin where ↵Enrico Granata2015-09-1418-380/+394
| | | | | | they belong llvm-svn: 247627
* DwarfDebug: Emit dwo_id+dwo_name for DICompileUnits that provide a dwoId.Adrian Prantl2015-09-142-0/+23
| | | | | | | For module debugging clang emits prefabricated skeleton compile units that can be recognized by a nonzero dwoId. llvm-svn: 247626
* Add content to the .hash section.Rafael Espindola2015-09-142-51/+98
| | | | | | | | | This also sets DT_HASH. With this simple shared libraries created by lld can be loaded by the dynamic linker. llvm-svn: 247625
* [WebAssembly] Define the atomic type sizesDan Gohman2015-09-142-26/+25
| | | | | | | | | | | | | WebAssembly's spec has now been updated to specify some guarantees about lock free atomic accesses. Update clang to match. This also updates sig_atomic_t to be 64-bit on wasm64. WebAssembly does not presently have asynchronous interrupts, but this change is within the spirit of how they will work if they are added. Differential Revision: http://reviews.llvm.org/D12862 llvm-svn: 247624
* [WebAssembly] Simplify code by avoiding duplicating the default behavior.Dan Gohman2015-09-141-1/+0
| | | | llvm-svn: 247623
* [WebAssembly] Use "long long" for int_fast64_t and int_least64_t on wasm64Dan Gohman2015-09-143-22/+36
| | | | | | | | | This makes int_fast64_t and int_least64_t the same type as int64_t, and eliminates a difference between wasm32 and wasm64. Differential Revision: http://reviews.llvm.org/D12861 llvm-svn: 247622
* [opaque pointer types] Add an explicit value type to GlobalObjectDavid Blaikie2015-09-143-12/+10
| | | | | | | | | This is needed by all GlobalObjects (GlobalAlias, Function, GlobalVariable), see the GlobalObject::getValueType which is used in many places. If at some point that can be removed, then we can remove this member. llvm-svn: 247621
* Revert "Always_inline codegen rewrite" and 2 follow-ups.Evgeniy Stepanov2015-09-1416-365/+28
| | | | | | | | | | Revert "Update cxx-irgen.cpp test to allow signext in alwaysinline functions." Revert "[CodeGen] Remove wrapper-free always_inline functions from COMDATs" Revert "Always_inline codegen rewrite." Reason for revert: PR24793. llvm-svn: 247620
OpenPOWER on IntegriCloud