summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* fix PR17635: false positive with packed structuresNuno Lopes2013-10-244-5/+38
| | | | | | LLVM optimizers may widen accesses to packed structures that overflow the structure itself, but should be in bounds up to the alignment of the object llvm-svn: 193317
* [AArch64] Fix NZCV reg live-in bug in F128CSEL codegen.Amara Emerson2013-10-242-2/+23
| | | | | | | | | When generating the IfTrue basic block during the F128CSEL pseudo-instruction handling, the NZCV live-in for the newly created BB wasn't being added. This caused a fault during MI-sched/live range calculation when the predecessor for the fall-through BB didn't have a live-in for phys-reg as expected. llvm-svn: 193316
* Include missing Compiler.h for using LLVM_ENUM_INT_TYPE.Zonr Chang2013-10-241-0/+1
| | | | llvm-svn: 193315
* AVX-512: added VCVTPH2PS, VCVTPS2PH with intrinsicsElena Demikhovsky2013-10-243-0/+56
| | | | llvm-svn: 193312
* Replace sse41/sse42 with sse4.1/sse4.2 in test command lines to fix bots.Craig Topper2013-10-242-2/+2
| | | | llvm-svn: 193311
* Add non-AVX tests for AES intrinsics.Craig Topper2013-10-241-0/+48
| | | | llvm-svn: 193310
* Add tests for SSE intrinsics in non-avx mode by copying from the AVX test ↵Craig Topper2013-10-246-0/+1704
| | | | | | cases. Some of these may have been tested by other tests, but most weren't. Patch by Cameron McInally. llvm-svn: 193309
* Fix a bug in LinearFunctionTestReplace that created invalid loop exit checks.Juergen Ributzka2013-10-242-1/+33
| | | | | | Reviewed by Andy llvm-svn: 193303
* Fixed llvm-cov to count edges instead of blocks.Yuchen Wu2013-10-242-4/+14
| | | | | | | | | | | | | | | | | This was a fundamental flaw in llvm-cov where it treated the values in the GCDA files as block counts instead of edge counts. This created incorrect line counts when branching was present. Instead, the edge counts should be summed to obtain the correct block count. The fix was tested using custom test files as well as single source files from the test-suite directory. The behaviour can be verified by reading the GCOV documentation that describes the GCDA spec ("ARC_COUNTS gives the counter values for those arcs that are instrumented") and the header description provided by GCOVProfiling.cpp ("instruments the code that runs to records (sic) the edges between blocks that run and emit a complementary "gcda" file on exit"). llvm-svn: 193299
* Clarify comments in genLoopLimit.Andrew Trick2013-10-241-3/+4
| | | | llvm-svn: 193292
* Optimizing MCJIT module state trackingAndrew Kaylor2013-10-243-124/+214
| | | | | | Patch co-developed with Yaron Keren. llvm-svn: 193291
* (this is a corrected patch)Yaron Keren2013-10-233-2/+4
| | | | | | | | | | | | | | Calling _chkstk is required on ELF as well as COFF on Windows. Without _chkstk, functions requiring large stack crash in initialization code. Previous code tested for COFF format but not Mach-O and this patch modifies the code to test for Windows OS (both Windows target and MingW target) but not Mach-O object format: Looks like macho environment was used to build some EFI code. Credits to Andrew MacPherson. llvm-svn: 193289
* Debug Info: code clean up.Manman Ren2013-10-232-31/+23
| | | | | | | | | | | Since we never insert DIE for DITemplateTypeParameter to a map, there is no need to call getDIE in getOrCreateTemplateTypeParameterDIE. It is also renamed to constructTemplateTypeParameterDIE to match with other construct functions in CompileUnit. Same applies to getOrCreateTemplateValueParameterDIE. llvm-svn: 193287
* Debug Info: code clean up.Manman Ren2013-10-232-5/+5
| | | | | | | Rename createMemberDIE to constructMemberDIE to match other construct functions in CompileUnit. llvm-svn: 193286
* Debug Info: code clean up.Manman Ren2013-10-232-18/+12
| | | | | | | Remove the unneeded return values from createMemberDIE, constructEnumTypeDIE, getOrCreateTemplateTypeParameterDIE, and getOrCreateTemplateValueParameterDIE. llvm-svn: 193285
* Debug Info: code clean up.Manman Ren2013-10-232-18/+18
| | | | | | | | | Unifying the argument ordering of private construct functions in CompileUnit to follow constructTypeDIE(DIE &, DIBasicType), constructTypeDIE(DIE &, DIDerivedType), constructTypeDIE(DIE &, DICompositeType), constructSubrangeDIE and constructArrayTypeDIE. llvm-svn: 193284
* Actually switch the default to use multiprocessingRafael Espindola2013-10-231-1/+1
| | | | llvm-svn: 193282
* [lit] Stop hacking the GIL check interval.Daniel Dunbar2013-10-231-6/+0
| | | | | | | - This was never a big win, and is irrelevant now that we commonly use multiprocessing based parallelism. llvm-svn: 193280
* [lit] Use multiprocessing based parallelism by default, on Unix.Daniel Dunbar2013-10-231-3/+7
| | | | llvm-svn: 193279
* Remove {} from one-line block.Manman Ren2013-10-231-2/+1
| | | | llvm-svn: 193276
* Revert "Calling _chkstk is required on ELF as well as COFF on Windows. ↵Rafael Espindola2013-10-233-4/+2
| | | | | | | | | | Without _chkstk functions requiring large stack crash in initialization code. Previous code tested for COFF format but not Mach-O and this patch modifies the code to test for Windows." This reverts commit r193263. It is causing CodeGen/X86/mingw-alloca.ll to fail. llvm-svn: 193275
* Fixed doxygen comment to match Module.cppYuchen Wu2013-10-231-1/+1
| | | | llvm-svn: 193273
* Reduce casting and use a fully covered switch.Rafael Espindola2013-10-231-9/+14
| | | | llvm-svn: 193272
* X86: Custom lower sext v16i8 to v16i16, and the corresponding truncate.Benjamin Kramer2013-10-238-10/+58
| | | | | | Also update the cost model. llvm-svn: 193270
* Fixed comment typo in GCOVProfiling.cppYuchen Wu2013-10-231-1/+1
| | | | llvm-svn: 193268
* Use a map instead of vector to store line counts.Yuchen Wu2013-10-232-24/+15
| | | | | | | | | | | | There are a few motivations for this: - Using a map allows for checking if line is in map. This differentiates unexecutable lines (such as comments) from unexecuted logical lines of code. "#####" is now outputted in this case, in line with gcov. - Source files are no longer read in twice: once when storing the line counts, and once when outputting the data. - Greatly simplifies the function FileInfo::addLineCount(). llvm-svn: 193264
* Calling _chkstk is required on ELF as well as COFF on Windows. Yaron Keren2013-10-233-2/+4
| | | | | | | | | | Without _chkstk functions requiring large stack crash in initialization code. Previous code tested for COFF format but not Mach-O and this patch modifies the code to test for Windows. Credits to Andrew MacPherson. llvm-svn: 193263
* X86: Custom lower zext v16i8 to v16i16.Benjamin Kramer2013-10-234-19/+29
| | | | | | | | | | | | | | | | | On sandy bridge (PR17654) we now get vpxor %xmm1, %xmm1, %xmm1 vpunpckhbw %xmm1, %xmm0, %xmm2 vpunpcklbw %xmm1, %xmm0, %xmm0 vinsertf128 $1, %xmm2, %ymm0, %ymm0 On haswell it's a simple vpmovzxbw %xmm0, %ymm0 There is a maze of duplicated and dead transforms and patterns in this area. Remove the dead custom lowering of zext v8i16 to v8i32, that's already handled by LowerAVXExtend. llvm-svn: 193262
* Fix PR17631Michael Liao2013-10-232-1/+32
| | | | | | | | | - Skip instructions added in prolog. For specific targets, prolog may insert helper function calls (e.g. _chkstk will be called when there're more than 4K bytes allocated on stack). However, these helpers don't use/def YMM/XMM registers. llvm-svn: 193261
* Add llvm-c-test to check-llvm.NAKAMURA Takumi2013-10-231-4/+1
| | | | llvm-svn: 193258
* llvm/tools/llvm-c-test should be built also on msvc.NAKAMURA Takumi2013-10-231-5/+1
| | | | llvm-svn: 193257
* llvm-c/Target.h: Tweak "inline" for msvc to use __inline instead.NAKAMURA Takumi2013-10-231-0/+4
| | | | | FIXME: I don't think it'd be smart. llvm-svn: 193256
* llvm-c/lto.h: Avoid use of bool.NAKAMURA Takumi2013-10-232-21/+18
| | | | llvm-svn: 193255
* llvm-c-test: Make them C89-compliant.NAKAMURA Takumi2013-10-235-15/+29
| | | | llvm-svn: 193254
* include/llvm-c: Whitespace.NAKAMURA Takumi2013-10-238-41/+40
| | | | llvm-svn: 193253
* X86: Make concat_vectors combine a bit more conservative.Jim Grosbach2013-10-231-0/+6
| | | | | | Per Nadav's review comments for r192866. llvm-svn: 193252
* Use address-taken to disambiguate global variable and indirect memops.Shuxin Yang2013-10-2318-11/+72
| | | | | | | | | | Major steps include: 1). introduces a not-addr-taken bit-field in GlobalVariable 2). GlobalOpt pass sets "not-address-taken" if it proves a global varirable dosen't have its address taken. 3). AA use this info for disambiguation. llvm-svn: 193251
* Mark zero-argument functions explicitly in C headers.Benjamin Kramer2013-10-231-4/+4
| | | | | | Pacifies GCC's -Wstrict-prototypes. llvm-svn: 193249
* Support for microMIPS relocations 1.Zoran Jovanovic2013-10-236-13/+129
| | | | llvm-svn: 193247
* Fix cmake dependency on llvm-c-test in testAnders Waldenborg2013-10-231-0/+4
| | | | llvm-svn: 193243
* [mips][msa] Direct Object Emission support for the LSA instruction.Matheus Almeida2013-10-233-8/+30
| | | | llvm-svn: 193240
* [mips][msa] Added support for matching fexp2 from normal IR (i.e. not ↵Daniel Sanders2013-10-234-4/+163
| | | | | | intrinsics) llvm-svn: 193239
* Make ARM hint ranges consistent, and add tests for these rangesArtyom Skrobov2013-10-239-10/+60
| | | | llvm-svn: 193238
* Fix check for supported targets in llvm-c lit.local.cfgAnders Waldenborg2013-10-231-1/+3
| | | | llvm-svn: 193235
* Add llvm-c-test tool for testing llvm-cAnders Waldenborg2013-10-2319-1/+775
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides rudimentary testing of the llvm-c api. The following commands are implemented: * --module-dump Read bytecode from stdin - print ir * --module-list-functions Read bytecode from stdin - list summary of functions * --module-list-globals Read bytecode from stdin - list summary of globals * --targets-list List available targets * --object-list-sections Read object file from stdin - list sections * --object-list-symbols Read object file from stdin - list symbols (like nm) * --disassemble Read lines of triple, hex ascii machine code from stdin - print disassembly * --calc Read lines of name, rpn from stdin - print generated module ir Differential-Revision: http://llvm-reviews.chandlerc.com/D1776 llvm-svn: 193233
* R600/SI: Replace ffs(x) - 1 with countTrailingZeros(x)Tom Stellard2013-10-231-1/+1
| | | | | | ffs(x) broke the mingw buildbot. llvm-svn: 193225
* Test commit. Added whitespace in GCOV.cpp.Yuchen Wu2013-10-231-1/+1
| | | | llvm-svn: 193224
* R600/SI: fix MIMG writemask adjustementTom Stellard2013-10-232-6/+114
| | | | | | | | | | | | This fixes piglit: - shaders/glsl-fs-texture2d-masked - shaders/glsl-fs-texture2d-masked-4 Patch by: Marek Olšák Signed-off-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com> llvm-svn: 193222
* R600: Fix handling of vector kernel argumentsTom Stellard2013-10-2314-150/+633
| | | | | | | | | | The SelectionDAGBuilder was promoting vector kernel arguments to legal types, but this won't work for R600 and SI since kernel arguments are stored in memory and can't be promoted. In order to handle vector arguments correctly we need to look at the original types from the LLVM IR function. llvm-svn: 193215
* SelectionDAG: Pass along the original argument/element type in ISD::InputArgTom Stellard2013-10-233-8/+15
| | | | | | | | | | | | | | | | For some targets, it is useful to be able to look at the original type of an argument without having to dig through the original IR. This also fixes a bug in SelectionDAGBuilder where InputArg.PartOffset was not taking into account the offset of structure elements. Patch by: Justin Holewinski Tom Stellard: - Changed the type of ArgVT to EVT, so it can store non-simple types like v3i32. llvm-svn: 193214
OpenPOWER on IntegriCloud