summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* MS intrinsics: implement __readgs{byte,word,dword,qword} (PR19054)Hans Wennborg2014-03-121-4/+27
| | | | llvm-svn: 203715
* MS intrinsics: don't declare __readeflags and __writeeflags in Intrin.hHans Wennborg2014-03-122-2/+5
| | | | | | | | They're already defined in ia32intrin.h, and this would cause including Intrin.h in 64-bit mode to fail because of conflicting types. Update ms-intrin.cpp to also run in 64-bit mode to catch things like this. llvm-svn: 203714
* Revert "profile: Use a simple binary format for profiling"Justin Bogner2014-03-121-155/+37
| | | | | | | | | This will break without the corresponding change in clang, which I've reverted until I figure out how to get it to link properly. This reverts commit r203710. llvm-svn: 203713
* Revert "CodeGen: Use a binary format for instrumentation based profiling"Justin Bogner2014-03-1212-53/+179
| | | | | | | | | I've clearly done something wrong with how to get this to link correctly. Reverting for now. This reverts commit r203711. llvm-svn: 203712
* CodeGen: Use a binary format for instrumentation based profilingJustin Bogner2014-03-1212-179/+53
| | | | | | | | This updates CodeGenPGO to use the ProfileDataReader introduced to llvm in r203703 and the new API for writing out the profile introduced to compiler-rt in r203710. llvm-svn: 203711
* profile: Use a simple binary format for profilingJustin Bogner2014-03-121-37/+155
| | | | llvm-svn: 203710
* Profile: Avoid an unnecessary __attribute__((packed))Justin Bogner2014-03-122-9/+3
| | | | | | MSVC doesn't understand it, and it wasn't really necessary anyway. llvm-svn: 203709
* Profile: Remove an inefficient and unnecessary API functionJustin Bogner2014-03-123-27/+9
| | | | | | | This was leftover from an approach I abandoned, but I forgot to update it before committing. llvm-svn: 203708
* Resubmit "[SLPV] Recognize vectorizable intrinsics during SLP vectorization ..."Raul E. Silvera2014-03-122-0/+158
| | | | | | | This reverts commit 86cb795388643710dab34941ddcb5a9470ac39d8. The problems previously found have been resolved through other CLs. llvm-svn: 203707
* Add a triple to fix the test on OS X.Rafael Espindola2014-03-121-1/+1
| | | | llvm-svn: 203706
* Reject alias to undefined symbols in the verifier.Rafael Espindola2014-03-1217-63/+166
| | | | | | | | | | | | | | | On ELF and COFF an alias is just another name for a position in the file. There is no way to refer to a position in another file, so an alias to undefined is meaningless. MachO currently doesn't support aliases. The spec has a N_INDR, which when implemented will have a different set of restrictions. Adding support for it shouldn't be harder than any other IR extension. For now, having the IR represent what is actually possible with current tools makes it easier to fix the design of GlobalAlias. llvm-svn: 203705
* llvm-profdata: Use the Profile library, implement show and generateJustin Bogner2014-03-1230-197/+417
| | | | | | | | This replaces the llvm-profdata tool with a version that uses the recently introduced Profile library. The new tool has the ability to generate and summarize profdata files as well as merging them. llvm-svn: 203704
* Profile: Add a library for the instrumentation based profiling formatJustin Bogner2014-03-1212-2/+553
| | | | | | | | | | | This provides a library to work with the instrumentation based profiling format that is used by clang's -fprofile-instr-* options and by the llvm-profdata tool. This is a binary format, rather than the textual one that's currently in use. The tests are in the subsequent commits that use this. llvm-svn: 203703
* Fix two thinkos in testcase and remove XFAIL.Eric Christopher2014-03-121-2/+3
| | | | llvm-svn: 203702
* Use -std=gnu++11 on cygwin and mingw.Rafael Espindola2014-03-122-2/+14
| | | | | | | | | Without this common features like off_t and strdup are missing. This should bring back those bots. Configure bits by Meador Inge. llvm-svn: 203701
* Dont unconditionally add gcc4.2 include paths on FreeBSD.Roman Divacky2014-03-121-5/+0
| | | | | | Newer FreeBSD doesnt ship with gcc and defaults to using libc++. llvm-svn: 203700
* Allow exclamation and tilde to be parsed as a part of the ppc asm operand.Roman Divacky2014-03-122-0/+9
| | | | llvm-svn: 203699
* XFAIL this temporarily.Eric Christopher2014-03-121-0/+1
| | | | llvm-svn: 203698
* Move test to X86 only for now.Eric Christopher2014-03-121-0/+0
| | | | llvm-svn: 203697
* add dependence of check-polly on llcSebastian Pop2014-03-121-1/+1
| | | | | | | to avoid an error when directly doing ninja check-polly after cmake 'Could not find llc in .../ninja/bin'. llvm-svn: 203696
* R600: Fix trunc store from i64 to i1Matt Arsenault2014-03-122-0/+36
| | | | llvm-svn: 203695
* Allow switch-to-lookup table for tables with holes by adding bitmask checkHans Wennborg2014-03-122-7/+89
| | | | | | | | | | | | | | | | | | | | | | | | This allows us to generate table lookups for code such as: unsigned test(unsigned x) { switch (x) { case 100: return 0; case 101: return 1; case 103: return 2; case 105: return 3; case 107: return 4; case 109: return 5; case 110: return 6; default: return f(x); } } Since cases 102, 104, etc. are not constants, the lookup table has holes in those positions. We therefore guard the table lookup with a bitmask check. Patch by Jasper Neumann! llvm-svn: 203694
* Objective-C. Issue diagnostics on mismatched methods when their selector is usedFariborz Jahanian2014-03-123-6/+83
| | | | | | in an @selector expression. // rdar://15794055 llvm-svn: 203693
* If DWARF debug info and verbose mode is enabled ("log enable dwarf info ↵Greg Clayton2014-03-121-4/+8
| | | | | | verbose"), then dump all DIEs for a compile unit after all DIEs have been parsed for a compile unit. llvm-svn: 203692
* PR19113: Emit 'vtable' TBAA metadata when loading a vptr in a ↵Richard Smith2014-03-122-3/+9
| | | | | | pointer-to-member-function call. llvm-svn: 203691
* When computing the size of a base type be conservative if the typeEric Christopher2014-03-122-2/+145
| | | | | | is a declaration and return the size of the type. llvm-svn: 203690
* CodeGen: Move hot/cold logic out of PGOProfileDataJustin Bogner2014-03-122-39/+21
| | | | llvm-svn: 203689
* Fixed Xcode project after files were moved over into ↵Greg Clayton2014-03-121-104/+118
| | | | | | trunk/source/Plugins/Process/Utility. llvm-svn: 203688
* Revert r203488 and r203520.Evan Cheng2014-03-124-102/+62
| | | | llvm-svn: 203687
* Avoid repeated calls to CE->getOperand(0). No functionality change.Rafael Espindola2014-03-121-9/+10
| | | | llvm-svn: 203686
* [X86] Refactor peepholes for masked shift amount into a multiclassAdam Nemet2014-03-121-55/+25
| | | | | | | | | | | | | | | | | | The peephole (shift x, (and y, 31)) -> (shift x, y) is repeated for each integer type and each shift variant. To improve this a new multiclass is added that covers all integer types. The shift patterns are now instantiated from this. I am planning to add new instances for rotates as well. No functional change intended: * test/CodeGen/X86/shift-and.ll provides coverage * Compared the expanded tablegen output and matched up the defs for these Pat<>s before and after llvm-svn: 203685
* Allow verbose logging in the "dwarf" log channel.Greg Clayton2014-03-121-0/+2
| | | | llvm-svn: 203684
* DR1346: a parenthesized braced-init-list cannot be used as the initializer whenRichard Smith2014-03-128-6/+75
| | | | | | performing auto type deduction. llvm-svn: 203683
* [X86] Set the scheduling resources of some of the FPStack instructions.Quentin Colombet2014-03-121-0/+17
| | | | | | This is related to <rdar://problem/15607571>. llvm-svn: 203682
* Use values we've already computed, update comment.Eric Christopher2014-03-121-4/+3
| | | | | | No functional change. llvm-svn: 203681
* Turn on hashing by default for split dwarf compile units.Eric Christopher2014-03-122-2/+2
| | | | llvm-svn: 203680
* unittests: Fix -Werror buildJustin Bogner2014-03-121-2/+2
| | | | llvm-svn: 203679
* Correct typo ("a entry" -> "an entry")David Blaikie2014-03-121-1/+1
| | | | llvm-svn: 203678
* Try harder to evaluate expressions when printing assembly.Rafael Espindola2014-03-129-20/+23
| | | | | | | | | When printing assembly we don't have a Layout object, but we can still try to fold some constants. Testcase by Ulrich Weigand. llvm-svn: 203677
* DebugInfo: Use common line/file attribute construction codeDavid Blaikie2014-03-121-5/+3
| | | | llvm-svn: 203676
* Revive SizeOptLevel-explaining comments that were dropped in r203669Eli Bendersky2014-03-121-2/+2
| | | | llvm-svn: 203675
* Implement Android versions of __clear_cache for arm32 & mips.Daniel Sanders2014-03-121-5/+31
| | | | | | | | | The MIPS version was reviewed by myself. The ARM version was reviewed by JF Bastien. Patch by Narayan Kamath <narayan@google.com>. llvm-svn: 203674
* Don't recompute inlining threshold - use new overload provided by LLVMEli Bendersky2014-03-121-10/+3
| | | | | | Follow-up on LLVM r203669 llvm-svn: 203673
* Add Process/Utility include directory on FreeBSDEd Maste2014-03-121-0/+1
| | | | | | Needed after r203667 llvm-svn: 203672
* Add parens around && clauses in a || to appease the compiler.Eli Bendersky2014-03-121-2/+2
| | | | | | Otherwise gcc 4.8.2 generates a warning. llvm-svn: 203671
* Add comment pointing to the binutils bugzilla entryHans Wennborg2014-03-121-0/+1
| | | | | | This is a follow-up to r203635 as suggested by Rafael. llvm-svn: 203670
* Move duplicated code into a helper function (exposed through overload).Eli Bendersky2014-03-123-12/+26
| | | | | | | | | | | | | | | | | There's a bit of duplicated "magic" code in opt.cpp and Clang's CodeGen that computes the inliner threshold from opt level and size opt level. This patch moves the code to a function that lives alongside the inliner itself, providing a convenient overload to the inliner creation. A separate patch can be committed to Clang to use this once it's committed to LLVM. Standalone tools that use the inlining pass can also avoid duplicating this code and fearing it will go out of sync. Note: this patch also restructures the conditinal logic of the computation to be cleaner. llvm-svn: 203669
* Check for LLVM_ON_WIN32 instead of _WIN32.Hans Wennborg2014-03-126-13/+18
| | | | | | This is a follow-up to r203624 to address Anton's comment. llvm-svn: 203668
* Moved various RegisterContext files from Process/POSIX to Process/Utility ↵Virgile Bello2014-03-1234-24/+37
| | | | | | | | | for easier sharing. Fix Windows build by adding JITLoaderGDB and ProcessElfCore. RegisterContext: fixes for Windows build: sizeof(GPR::register) didn't work, switched to sizeof(((GPR*)NULL)->register). llvm-svn: 203667
* [Cleanup] Sort includes.Ahmed Charles2014-03-1210-25/+25
| | | | llvm-svn: 203666
OpenPOWER on IntegriCloud