summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix build failure reported by Tobias Markmann in bug 17203.Daniel Sanders2013-09-131-1/+1
| | | | | | | | | | | | | | svn 1.8.0 emits an additional line matching 'URL:' in its 'svn info' command ('Relative URL:'). Changed the grep to match only the intended line so that a valid SVNVersion.inc is generated. The problem doesnt occur with the svn version I'm using (1.7.5) but Tobias has confirmed that the change fixes the problem. See http://llvm.org/bugs/show_bug.cgi?id=17203 llvm-svn: 190685
* Certain multi-platform languages, such as OpenCL, have the concept ofDavid Tweed2013-09-1312-9/+123
| | | | | | | | | | | | | | address spaces which is both (1) a "semantic" concept and (2) possibly a hardware level restriction. It is desirable to be able to discard/merge the LLVM-level address spaces on arguments for which there is no difference to the current backend while keeping track of the semantic address spaces in a funciton prototype. To do this enable addition of the address space into the name-mangling process. Add some tests to document this behaviour against inadvertent changes. Patch by Michele Scandale! llvm-svn: 190684
* [ARMv8] Emit the proper .fpu directive.Joey Gouly2013-09-132-3/+13
| | | | | | Patch by Bradley Smith! llvm-svn: 190683
* [msan] Intercept tzset.Evgeniy Stepanov2013-09-132-0/+29
| | | | llvm-svn: 190682
* Add "native" to config.available_features, to make it easier to disable ↵Amaury de la Vieuville2013-09-134-1/+8
| | | | | | | | non-x-compile-safe tests Patch by Artyom Skrobov! llvm-svn: 190681
* [msandr] Add debugging instructions to README.txt.Evgeniy Stepanov2013-09-131-0/+6
| | | | llvm-svn: 190680
* Add "native" to config.available_features, to make it easier to disable ↵Amaury de la Vieuville2013-09-133-1/+13
| | | | | | | | non-x-compile-safe tests Patch by Artyom Skrobov! llvm-svn: 190679
* clang-format: Detect braced lists in subscript expressions.Daniel Jasper2013-09-132-1/+3
| | | | | | | | | | Before (even with Style.Cpp11BracedListStyle): f(MyMap[{ composite, key }]); After: f(MyMap[{composite, key}]); llvm-svn: 190678
* Fix for executing AutoRegen.sh. Revert a part of r187209.Patrik Hagglund2013-09-131-0/+16
| | | | | | | | | | | | | | | | | Since r187209, which modified ltdl.m4, I was unable to execute AutoRegen.sh, getting: ../configure:10779: error: possibly undefined macro: AC_LTDL_FUNC_ARGZ This commit re-adds AC_LTDL_FUNC_ARGZ to ltdl.m4, as a quick fix. For me, this corresponds to the configure file currently checked in. (However, the ltdl library seems to be unused since r74924 in 2009, except for the use of the LTDL_SHLIB_EXT macro in bugpoint(?). Therefore, the right solution seems to try to get rid of the local ltdl.m4 file, specified by autoconf/README.TXT.) llvm-svn: 190677
* Test commit to verify that commit access works.Zoran Jovanovic2013-09-131-1/+1
| | | | llvm-svn: 190676
* [-cxx-abi microsoft] Mangle user defined entry points properlyDavid Majnemer2013-09-132-2/+45
| | | | | | | | | | | | | | | | Summary: Functions named "main", "wmain", "WinMain", "wWinMain", and "DllMain" are never mangled regardless of linkage, even when compiling for kernel mode. Depends on D1655 Reviewers: timurrrr, pcc, rnk, whunt CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1670 llvm-svn: 190675
* clang-format: Fix incorrect enum parsing / layouting.Daniel Jasper2013-09-137-55/+56
| | | | | | | | | | | | | | | Before: enum { Bar = Foo < int, int > ::value }; After: enum { Bar = Foo<int, int>::value }; llvm-svn: 190674
* [SystemZ] Use getTarget{Insert,Extract}Subreg rather than getMachineNodeRichard Sandiford2013-09-132-31/+14
| | | | | | Just a clean-up, no behavioral change intended. llvm-svn: 190673
* [SystemZ] Try to fold shifts into TMxxRichard Sandiford2013-09-133-20/+137
| | | | | | E.g. "SRL %r2, 2; TMLL %r2, 1" => "TMLL %r2, 4". llvm-svn: 190672
* [-cxx-abi microsoft] Mangle declarations inside extern "C"David Majnemer2013-09-132-33/+86
| | | | | | | | | | | | | | | Summary: This is a first step to getting extern "C" working properly inside clang. There are a number of quirks but mangling declarations inside such a function are a good first step. Reviewers: timurrrr, pcc, cdavis5x CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1655 llvm-svn: 190671
* CHECK -> CHECK-DAGDavid Majnemer2013-09-131-82/+82
| | | | llvm-svn: 190670
* [asan] Android does not have TLSKostya Serebryany2013-09-131-2/+2
| | | | llvm-svn: 190669
* Avoid a compiler warning about Found not being used when assertions areDuncan Sands2013-09-131-0/+1
| | | | | | disabled. llvm-svn: 190668
* [ASan] Temporary disable UAR unit test on Android due to ↵Alexey Samsonov2013-09-131-5/+5
| | | | | | https://code.google.com/p/address-sanitizer/issues/detail?id=222 llvm-svn: 190667
* [asan] don't record the class_id in FakeFrame (scratching the last bits of ↵Kostya Serebryany2013-09-133-9/+7
| | | | | | performance) llvm-svn: 190666
* AArch64: use RegisterOperand for NEON registers.Tim Northover2013-09-1311-277/+241
| | | | | | | | | | | | | | | | Previously we modelled VPR128 and VPR64 as essentially identical register-classes containing V0-V31 (which had Q0-Q31 as "sub_alias" sub-registers). This model is starting to cause significant problems for code generation, particularly writing EXTRACT/INSERT_SUBREG patterns for converting between the two. The change here switches to classifying VPR64 & VPR128 as RegisterOperands, which are essentially aliases for RegisterClasses with different parsing and printing behaviour. This fits almost exactly with their real status (VPR128 == FPR128 printed strangely, VPR64 == FPR64 printed strangely). llvm-svn: 190665
* [asan] more performance to FakeStack: a) don't used atomic exchange, instead ↵Kostya Serebryany2013-09-132-14/+15
| | | | | | rely on regular load and store and other signal-safe logic; b) remove allocated_from_size_class_mask_ which is not helping much anyway; Another 10% speedup llvm-svn: 190664
* [asan] second attempt to use TLS with fake stack. This time it looks (more) ↵Kostya Serebryany2013-09-134-11/+28
| | | | | | async-signal safe. llvm-svn: 190663
* [asan] undo the previous commit since TLS hack breaks with signals... :(Kostya Serebryany2013-09-131-1/+1
| | | | llvm-svn: 190662
* [asan] use TLS on Linux to get the FakeStack. Saves 15% performanceKostya Serebryany2013-09-131-6/+19
| | | | llvm-svn: 190661
* [asan] inline PoisonShadow in FakeStack to get ~10% speedupKostya Serebryany2013-09-131-2/+20
| | | | llvm-svn: 190660
* Move operator to end of previous line to match coding standards.Craig Topper2013-09-131-2/+2
| | | | llvm-svn: 190659
* [lld][ELF] Handle multiple weak symbolsShankar Easwaran2013-09-135-7/+73
| | | | | | | | | | | | This handles multiple weak symbols which appear back to back. This fix is needed which otherwise will lead to symbols getting initialized to arbitrary values. There was a constructor/destructor test that really triggered this to be fixed on X86_64. Adds a test. llvm-svn: 190658
* Refactor the uninitialized field visitor. Also moved the calls to the visitorRichard Trieu2013-09-132-54/+107
| | | | | | | later in the code so that the expressions will have addition processing first. This catches a few additional cases of uninitialized uses of class fields. llvm-svn: 190657
* Documentation: Doxygen-ification of existing docs for Sema/DelayedDiagnostic.h.James Dennett2013-09-131-12/+12
| | | | llvm-svn: 190656
* Documentation cleanup: Fixing \brief comments, migrating away from old styleJames Dennett2013-09-131-26/+26
| | | | | | | that duplicated the name of the entity being documented at the start of its comment, and other minor tidyups. llvm-svn: 190655
* Change OptionValueFileSpec::SetValueFromCString to strip off whitespace,Jason Molenda2013-09-131-1/+14
| | | | | | | | single-quote and double-quotemarks from around file paths specified to settings like target.expr-prefix or target.process.python-os-plugin-path. <rdar://problem/14970457> llvm-svn: 190654
* [dfsan] Add a few easy functions to the ABI list.Peter Collingbourne2013-09-131-0/+11
| | | | llvm-svn: 190653
* Fix two incorrect comments.Jordan Rose2013-09-132-3/+3
| | | | | | Patch by Jared Grubb! llvm-svn: 190652
* [analyzer] Fix copy-paste error in internal docs.Jordan Rose2013-09-131-1/+1
| | | | | | Patch by Jared Grubb! llvm-svn: 190651
* [analyzer] Run post-stmt checks for DeclStmt.Jordan Rose2013-09-131-1/+4
| | | | | | | | | No tests because no in-tree checkers use this, but that shouldn't stop out-of-tree checkers. Found by Aemon Cannon! llvm-svn: 190650
* Add initial support for handling gnu style pubnames accepted by someEric Christopher2013-09-134-9/+265
| | | | | | | | versions of gold. This support is designed to allow gold to produce gdb_index sections similar to the accelerator tables and consumable by gdb. llvm-svn: 190649
* Reformat and hoist section grabbing to top level.Eric Christopher2013-09-131-25/+30
| | | | llvm-svn: 190648
* Cleanup POSIX RegisterContext class hierarchies.Michael Sartain2013-09-1323-624/+692
| | | | llvm-svn: 190647
* Restore the sqrt -> llvm.sqrt mapping in fast-math modeHal Finkel2013-09-122-6/+18
| | | | | | | | | | | | | | | This restores the sqrt -> llvm.sqrt mapping, but only in fast-math mode (specifically, when the UnsafeFPMath or NoNaNsFPMath CodeGen options are enabled). The @llvm.sqrt* intrinsics have slightly different semantics from the libm call, specifically, they are undefined when given a non-zero negative number (the libm calls will always return NaN for any negative number). This mapping was removed in r100613, and replaced with a TODO, but at that time the fast-math flags were not yet implemented. Now that we have these, restoring this mapping is important because it will enable autovectorization of sqrt calls in loops (at least in fast-math mode). llvm-svn: 190646
* R600: Move clamp handling code to R600IselLowering.cppVincent Lejeune2013-09-122-33/+17
| | | | llvm-svn: 190645
* R600: Move code handling literal folding into R600ISelLowering.Vincent Lejeune2013-09-123-109/+75
| | | | llvm-svn: 190644
* R600: Move fabs/fneg/sel folding logic into PostProcessIselVincent Lejeune2013-09-124-245/+215
| | | | | | | This move makes possible to correctly handle multiples instructions from a single pattern. llvm-svn: 190643
* Fixed a bug where CFI data would become corrupted when using ↵Richard Mitton2013-09-121-2/+5
| | | | | | | | remember/restore state instructions. This would prevent system calls on Linux from being able to backtrace correctly. llvm-svn: 190642
* Fix typo in llvm_unreachable string.Nick Lewycky2013-09-121-1/+1
| | | | llvm-svn: 190641
* Remove an unused variable, fixing -Werror build with latest Clang.Chandler Carruth2013-09-121-1/+0
| | | | llvm-svn: 190640
* PR13657 (and duplicates):Richard Smith2013-09-1210-95/+843
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a comma occurs in a default argument or default initializer within a class, disambiguate whether it is part of the initializer or whether it ends the initializer. The way this works (which I will be proposing for standardization) is to treat the comma as ending the default argument or default initializer if the following token sequence matches the syntactic constraints of a parameter-declaration-clause or init-declarator-list (respectively). This is both consistent with the disambiguation rules elsewhere (where entities are treated as declarations if they can be), and should have no regressions over our old behavior. I think it might also disambiguate all cases correctly, but I don't have a proof of that. There is an annoyance here: because we're performing a tentative parse in a situation where we may not have seen declarations of all relevant entities (if the comma is part of the initializer, lookup may find entites declared later in the class), we need to turn off typo-correction and diagnostics during the tentative parse, and in the rare case that we decide the comma is part of the initializer, we need to revert all token annotations we performed while disambiguating. Any diagnostics that occur outside of the immediate context of the tentative parse (for instance, if we trigger the implicit instantiation of a class template) are *not* suppressed, mirroring the usual rules for a SFINAE context. llvm-svn: 190639
* Disassembler::DisassembleRange() currently calls Target::ReadMemoryJason Molenda2013-09-126-7/+16
| | | | | | | | | | | | | with prefer_file_cache == false. This is what we want to do when the user is doing a disassemble command -- show the actual memory contents in case the memory has been corrupted or something -- but when we're profiling functions for stepping or unwinding (ThreadPlanStepRange::GetInstructionsForAddress, UnwindAssemblyInstEmulation::GetNonCallSiteUnwindP) we can read __TEXT instructions directly out of the file, if it exists. <rdar://problem/14397491> llvm-svn: 190638
* Remove unnecessary TBAA metadata from r190636's test caseHal Finkel2013-09-121-13/+9
| | | | llvm-svn: 190637
* Fix PPC ABI for ByVal structs with vector membersHal Finkel2013-09-122-9/+113
| | | | | | | | | | When a structure is passed by value, and that structure contains a vector member, according to the PPC ABI, the structure will receive enhanced alignment (so that the vector within the structure will always be aligned). This should resolve PR16641. llvm-svn: 190636
OpenPOWER on IntegriCloud