summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Vectorize starting from insertelements building a vectorMatt Arsenault2013-08-262-3/+253
| | | | llvm-svn: 189233
* Mark LWG issues 2011, 2015, 2033, 2065, 2071, 2102, 2235 as complete b/c ↵Marshall Clow2013-08-261-7/+7
| | | | | | libc++ already fixed them. llvm-svn: 189232
* unused variable, typedef requires name warning cleanupMichael Sartain2013-08-262-3/+2
| | | | llvm-svn: 189231
* CMake: move lto.h install to tools/lto/CMakeLists.txtHans Wennborg2013-08-262-5/+5
| | | | | | It looked misplaced in the main CMakeLists.txt file. llvm-svn: 189230
* Updated the main comment with respect to problems and future directions.John Thompson2013-08-261-32/+16
| | | | llvm-svn: 189229
* Fixed some issues that resulted in erroneous duplicate symbol error messages.John Thompson2013-08-268-23/+66
| | | | llvm-svn: 189228
* SelectionDAG: Remove unnecessary uses of TargetLowering::getPointerTy()Tom Stellard2013-08-268-43/+190
| | | | | | | | | | | | If we have a binary operation like ISD:ADD, we can set the result type equal to the result type of one of its operands rather than using TargetLowering::getPointerTy(). Also, any use of DAG.getIntPtrConstant(C) as an operand for a binary operation can be replaced with: DAG.getConstant(C, OtherOperand.getValueType()); llvm-svn: 189227
* R600: Add support for vector local memory loadsTom Stellard2013-08-265-0/+64
| | | | llvm-svn: 189226
* R600: Add support for i8 and i16 local memory loadsTom Stellard2013-08-265-16/+137
| | | | llvm-svn: 189225
* SelectionDAG: Use correct pointer size when splitting vector storesTom Stellard2013-08-262-1/+16
| | | | llvm-svn: 189224
* R600: Add support for i8 and i16 local memory storesTom Stellard2013-08-269-15/+78
| | | | llvm-svn: 189223
* R600: Add support for v4i32 and v2i32 local storesTom Stellard2013-08-264-59/+159
| | | | llvm-svn: 189222
* SelectionDAG: Use correct pointer size when lowering function arguments v2Tom Stellard2013-08-268-14/+79
| | | | | | | | | | | | | | | | This adds minimal support to the SelectionDAG for handling address spaces with different pointer sizes. The SelectionDAG should now correctly lower pointer function arguments to the correct size as well as generate the correct code when lowering getelementptr. This patch also updates the R600 DataLayout to use 32-bit pointers for the local address space. v2: - Add more helper functions to TargetLoweringBase - Use CHECK-LABEL for tests llvm-svn: 189221
* CMake Xcode builds: symlink tblgen targets out to bin/.Douglas Gregor2013-08-261-0/+10
| | | | | | | | | | | Xcode always puts executable targets in the directory bin/<Config>. When building separate LLVM and Clang projects for Xcode, this prevents the CMake-configured project for Clang from finding llvm-tblgen. Add a symlink so that tblgen executables are always available in bin/ (regardless of the configuration LLVM is built with). llvm-svn: 189220
* Handle predefined expression for a captured statementWei Pan2013-08-265-0/+53
| | | | | | | | | | | - __func__ or __FUNCTION__ returns captured statement's parent function name, not the one compiler generated. Differential Revision: http://llvm-reviews.chandlerc.com/D1491 Reviewed by bkramer llvm-svn: 189219
* Simplify now that -O4 just maps to -O3 and -O is an alias of -O2.Rafael Espindola2013-08-262-12/+6
| | | | llvm-svn: 189218
* [sanitizer] Add a fast version of StackDepotGet() for use in LSan.Sergey Matveev2013-08-266-5/+129
| | | | | | | Add a class that holds a snapshot of the StackDepot optimized for querying by ID. This allows us to speed up LSan dramatically. llvm-svn: 189217
* [sanitizer] Handle Die() in StopTheWorld.Sergey Matveev2013-08-263-42/+82
| | | | | | | | | Handle calls to Die() from the tracer thread. Fixes a bug where a CHECK could fail in the tracer thread, resulting in a call to AsanDie. The tracer thread then exited and the parent process continued execution despite its address space being in an unusable state. llvm-svn: 189216
* AVX-512: Added shuffle instructions - Elena Demikhovsky2013-08-264-34/+239
| | | | | | | VPSHUFD, VPERMILPS, VMOVDDUP, VMOVLHPS, VMOVHLPS, VSHUFPS, VALIGN single and double forms. llvm-svn: 189215
* Fix virtual destructor mangling when using "-cxx-abi microsoft" on x64Timur Iskhodzhanov2013-08-262-1/+6
| | | | llvm-svn: 189214
* This patch implements trap instructions for mips. The test cases are added.Vladimir Medic2013-08-263-2/+91
| | | | llvm-svn: 189213
* Teach the Linux toolchain about more modern Gentoo installations of GCCChandler Carruth2013-08-269-8/+44
| | | | | | | | which add another wrinkle to the installation of the libstdc++ headers. Add at least some basic testing of the weirdnesses of Gentoo's layout. llvm-svn: 189212
* clang-format: Fix bug in column-layout formatting.Daniel Jasper2013-08-262-9/+13
| | | | | | | | | | Specific arrangements of comments after trailing commas could confuse the column width calculation, e.g. in: vector<int> x = { a, b, /* some */ /* comment */ }; llvm-svn: 189211
* Include a clearer policy about what's ok/nok to speed up code reviews.Manuel Klimek2013-08-261-1/+18
| | | | llvm-svn: 189210
* [lld][ELF] Cleanup ELF writing, No change in functionalityShankar Easwaran2013-08-269-117/+85
| | | | | | | | | | The cleanup includes :- * Rename ambiguous Header class to ELFHeader * Convert Chunk contentype and kind to be a enumerated class * Remove functions that are not being used, avoids future confusion llvm-svn: 189209
* [-cxx-abi microsoft] Unnamed types are mangled less wrongDavid Majnemer2013-08-261-2/+2
| | | | llvm-svn: 189208
* [lld][ELF] Indent the td file to < 80 columnsShankar Easwaran2013-08-261-14/+30
| | | | llvm-svn: 189207
* Make sure x86 instructions using ssmem/sdmem operand types are only able to ↵Craig Topper2013-08-261-2/+2
| | | | | | parse memory operands of the proper size in Intel syntax. Primarily affects some of sse cvt instructions. llvm-svn: 189206
* Remove some unnecessary PredicateMethod overrides. Add RenderMethod ↵Craig Topper2013-08-262-71/+19
| | | | | | overrides to remove forwarding in the X86AsmParser code itself. No functional change. llvm-svn: 189205
* Put some of the AVX-512 parsing stuff in a more consistent place with the ↵Craig Topper2013-08-252-18/+15
| | | | | | existing functions. llvm-svn: 189204
* CodeGen: Unify two implementations of canDevirtualizeMemberFunctionCall.Benjamin Kramer2013-08-253-139/+25
| | | | | | | | | They were mostly copy&paste of each other, move it to CodeGenFunction. Of course the two implementations have diverged over time; the one in CGExprCXX seems to be the more modern one so I picked that one and moved it to CGClass which feels like a better home for it. No intended functionality change. llvm-svn: 189203
* [PowerPC] Add fast-isel branch and compare selection.Bill Schmidt2013-08-253-9/+330
| | | | | | | | | | | First chunk of actual fast-isel selection code. This handles direct and indirect branches, as well as feeding compares for direct branches. PPCFastISel::PPCEmitIntExt() is just roughed in and will be expanded in a future patch. This also corrects a problem with selection for constant pool entries in JIT mode or with small code model. llvm-svn: 189202
* First round of fixes for the x86 fixes for the x86 move accumulator from/to ↵Craig Topper2013-08-2510-34/+226
| | | | | | | | | | | | | | memory offset instructions. -Assembly parser now properly check the size of the memory operation specified in intel syntax. So 'mov word ptr [5], al' is no longer accepted. -x86-32 disassembly of these instructions no longer sign extends the 32-bit address immediate based on size. -Intel syntax printing prints the ptr size and places brackets around the address immediate. Known remaining issues with these instructions: -Segment override prefix is not supported. PR16962 and PR16961. -Immediate size should be changed by address size prefix. llvm-svn: 189201
* DebugInfo: Emit info for casted decls in template argsDavid Majnemer2013-08-252-2/+21
| | | | | | | | | | | | | | | | | | Summary: Previously the backend wouldn't get to see the underlying GlobalValue that corresponds to the template argument because it would be hidden by a cast at the IR level. Instead strip the pointer casts off of the value until we see the underlying GlobalValue. Reviewers: dblaikie, echristo, majnemer Reviewed By: majnemer CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1508 llvm-svn: 189200
* Fix #include guard.Jakub Staszak2013-08-251-2/+2
| | | | llvm-svn: 189199
* [Sparc] Add long double (f128) instructions to sparc backend. Venkatraman Govindaraju2013-08-256-1/+277
| | | | llvm-svn: 189198
* [lld][ELF][Cleanup] Create multiclass for variations in options usageShankar Easwaran2013-08-252-11/+12
| | | | llvm-svn: 189197
* [lld][ELF] process fini_array sectionsShankar Easwaran2013-08-256-1/+43
| | | | | | | | This change processes fini_array section in addition to processing init_array sections. This also makes functions registered at compile time for initialization and finalization to be run during execution llvm-svn: 189196
* [Sparc] Added V9's extra floating point registers and their aliases.Venkatraman Govindaraju2013-08-253-1/+81
| | | | llvm-svn: 189195
* Propagate the removal of _LIBCPP_CANTTHROW (r189046) to libcxxabi. This ↵Howard Hinnant2013-08-251-5/+5
| | | | | | fixes http://llvm.org/bugs/show_bug.cgi?id=16996. llvm-svn: 189194
* Produce an error when trying to link with -emit-llvm.Rafael Espindola2013-08-253-0/+8
| | | | llvm-svn: 189193
* PECOFF: Add support for export table.Virgile Bello2013-08-252-0/+73
| | | | llvm-svn: 189192
* Fix DWARF for 0-length CIE (data after the length should not be read if ↵Virgile Bello2013-08-251-1/+1
| | | | | | length is 0). llvm-svn: 189191
* Tests for ARM aligned access + reserved R9Renato Golin2013-08-252-0/+13
| | | | | | Patch by Jeroen Hofstee. llvm-svn: 189190
* AVX-512: added UNPACK instructions and tests for all-zero/all-ones vectorsElena Demikhovsky2013-08-255-63/+207
| | | | llvm-svn: 189189
* Fix a bug where we would corrupt the offset when evaluatingChandler Carruth2013-08-251-1/+3
| | | | | | | | | | | a non-constant GEP. I don't have any test case that demonstrates this, Nadav (indirectly) pointed this out in code review. I'm not sure how possible it is to contrive a test case for the current users of this code that triggers the bad issue sadly. llvm-svn: 189188
* AsmPrinter: Get rid of llvm$workaround$fake$stub$David Majnemer2013-08-251-10/+0
| | | | | | | | | We currently emit labels with the prefix Lllvm$workaround$fake$stub$ if the target's MCAsmInfo has getLinkOnceDirective() mapped to something interesting. This was apparently a work around introduced in r31033 for binutils that we don't need anymore. llvm-svn: 189187
* Start to add the LLVM builtins to the mips16 exclusion lists for fp.Reed Kotler2013-08-252-1/+29
| | | | | | | | | | | | | I need to add the rest of these to the list or else to delay putting out the actual stub until later in code generation when I know if the external function ever got emitted Resubmit this patch. The target triple needs to be added to the test so that clang does not tell the backend the wrong target when the host is BSD. There is a clang bug in here somewhere that I need to track down. At Mips this has been filed internally as a bug. llvm-svn: 189186
* Fix comment.Michael Han2013-08-251-1/+1
| | | | llvm-svn: 189185
* G M: Improve support for compilers not supporting defaulted functions.Howard Hinnant2013-08-242-1/+2
| | | | llvm-svn: 189184
OpenPOWER on IntegriCloud