- Jul 22, 2016
-
-
Sanjay Patel authored
llvm-svn: 276475
-
Vedant Kumar authored
llvm-svn: 276474
-
Vassil Vassilev authored
Processing update records (and loading a module, in general) might trigger unexpected calls to the ASTWriter (being a mutation listener). Now we have a mechanism to suppress those calls to the ASTWriter but notify other possible mutation listeners. Fixes https://llvm.org/bugs/show_bug.cgi?id=28332 Patch by Cristina Cristescu and me. Reviewed by Richard Smith (D21800). llvm-svn: 276473
-
Sanjay Patel authored
llvm-svn: 276472
-
Anna Thomas authored
Differential Revision: https://reviews.llvm.org/D22700 llvm-svn: 276471
-
Pete Cooper authored
This adds versions of operator + and - which are optimized for the LHS/RHS of the operator being RValue's. When an RValue is available, we can use its storage space instead of allocating new space. On code such as ConstantRange which makes heavy use of APInt's over 64-bits in size, this results in significant numbers of saved allocations. Thanks to David Blaikie for all the review and most of the code here. llvm-svn: 276470
-
Vassil Vassilev authored
llvm-svn: 276469
-
Vedant Kumar authored
Just link in the stylesheet from the toplevel dir of the report. llvm-svn: 276468
-
Sanjoy Das authored
The helper will get smarter in a later change, but right now this is just code reorganization. llvm-svn: 276467
-
Sanjay Patel authored
llvm-svn: 276466
-
George Burgess IV authored
llvm-svn: 276465
-
Sanjay Patel authored
llvm-svn: 276464
-
Zachary Turner authored
For some reason this doesn't cause linker errors with MSVC or clang-cl, but the bots seem to be failing with other compilers. llvm-svn: 276463
-
Tim Northover authored
This adds the actual MachineLegalizeHelper to do the work and a trivial pass wrapper that legalizes all instructions in a MachineFunction. Currently the only transformation supported is splitting up a vector G_ADD into one acting on smaller vectors. llvm-svn: 276461
-
Zachary Turner authored
Previously it was storing all the fields of an msf::Layout as separate members. This is a trivial cleanup to make it store an msf::Layout directly. This makes the code more readable since it becomes clear which fields of PDBFile are actually the msf specific layout information in a sea of other bookkeeping fields. llvm-svn: 276460
-
Zachary Turner authored
This makes it easier to have the writable and readable PDB interfaces share code since the read/write and write-only interfaces now share a single allocator, you don't have to worry about a builder building a read only interface and then having the read-only interface's data become corrupt when the builder goes out of scope. Now the allocator is specified explicitly to all constructors, so all interfaces can share a single allocator that is scoped appropriately. llvm-svn: 276459
-
Zachary Turner authored
This provides a better layering of responsibilities among different aspects of PDB writing code. Some of the MSF related code was contained in CodeView, and some was in PDB prior to this. Further, we were often saying PDB when we meant MSF, and the two are actually independent of each other since in theory you can have other types of data besides PDB data in an MSF. So, this patch separates the MSF specific code into its own library, with no dependencies on anything else, and DebugInfoCodeView and DebugInfoPDB take dependencies on DebugInfoMsf. llvm-svn: 276458
-
Teresa Johnson authored
llvm-svn: 276457
-
Kostya Serebryany authored
llvm-svn: 276456
-
Pirama Arumuga Nainar authored
Summary: This patch enables .rgba accessors to ext_vector_type types and adds tests for syntax validation and code generation. 'a' and 'b' can appear either in the point access mode or the numeric access mode (for indices 10 and 11). To disambiguate between the two usages, the accessor type is explicitly passed to relevant methods. Reviewers: rsmith Subscribers: Anastasia, bader, srhines, cfe-commits Differential Revision: http://reviews.llvm.org/D20602 llvm-svn: 276455
-
Reid Kleckner authored
Add a %stdcxx11 lit substitution for -std=c++11. Windows defaults to -std=c++14 when VS 2015 is used because the STL requires it. Harcoding -std=c++11 in the ASan tests actually downgrades the C++ standard level, leading to test failures. Relax a FileCheck pattern in use-after-scope-types.cc. Disable the sanitizer_common OOM tests. They fail on bots with low swap, and cause other concurrently running tests to OOM. llvm-svn: 276454
-
Teresa Johnson authored
I am getting a bot failure from the thin archive part of this test: From http://bb.pgr.jp/builders/cmake-llvm-x86_64-linux/builds/40468/steps/test_llvm/logs/LLVM%20%3A%3A%20tools__gold__X86__thinlto_emit_linked_objects.ll: Command Output (stderr): -- /home/bb/cmake-llvm-x86_64-linux/build/./bin/llvm-ar: creating /home/bb/cmake-llvm-x86_64-linux/build/test/tools/gold/X86/Output/thinlto_emit_linked_objects.ll.tmp2.a /usr/bin/ld.gold: internal error in add_writer, at ../../gold/token.h:124 -- This appears to be an issue with an older version of gold. The test case passes for me locally when I use the gold v1.12 I was testing with, but when I tried the gold installed on my system which is v1.11 I get the same error. Remove the thin archive version of the test, since there isn't a way to predicate it on gold version. llvm-svn: 276453
-
Jun Bum Lim authored
Recommiting r275571 after fixing crash reported in PR28270. Now we erase elements of IOL in deleteDeadInstruction(). Original Summary: This change use the overlap interval map built from partial overwrite tracking to perform shortening MemIntrinsics. Add test cases which was missing opportunities before. llvm-svn: 276452
-
Sanjay Patel authored
llvm-svn: 276451
-
Teresa Johnson authored
Summary: In the distributed backend case, the ThinLink step and the final native object link are separate processes. This can be problematic when archive libraries are involved in the link (e.g. via --start-lib/--end-lib pairs). The linker only includes objects from libraries when there is a strong reference to them, and depending on the intervening ThinLTO backend processes' importing/inlining, the strong references may appear different in the two link steps. See D22356 and D22467 for two scenarios where this causes issues. To ensure that the final link includes the same objects, this patch adds support for an "=filename" form of the thinlto-index-only plugin option, in which case objects gold included in the link are emitted to the given filename. This should be used as input to the final link (e.g. via the @filename option to gold), instead of listing all the objects within --start-lib/--end-lib pairs again. Note that the support for the gold callback that identifies included objects was added in gold version 1.12. Reviewers: davidxl, mehdi_amini Subscribers: llvm-commits, mehdi_amini Differential Revision: https://reviews.llvm.org/D22677 llvm-svn: 276450
-
Wei Mi authored
Differential Revision: https://reviews.llvm.org/D22688 llvm-svn: 276449
-
Anna Thomas authored
This change depends on the corresponding LLVM change at: https://reviews.llvm.org/D22519 The llvm.invariant.start and llvm.invariant.end intrinsics currently support specifying invariant memory objects only in the default address space. With this LLVM change, these intrinsics are overloaded for any adddress space for memory objects and we can use these llvm invariant intrinsics in non-default address spaces. Example: llvm.invariant.start.p1i8(i64 4, i8 addrspace(1)* %ptr) This overloaded intrinsic is needed for representing final or invariant memory in managed languages. llvm-svn: 276448
-
Anna Thomas authored
Summary: The llvm.invariant.start and llvm.invariant.end intrinsics currently support specifying invariant memory objects only in the default address space. With this change, these intrinsics are overloaded for any adddress space for memory objects and we can use these llvm invariant intrinsics in non-default address spaces. Example: llvm.invariant.start.p1i8(i64 4, i8 addrspace(1)* %ptr) This overloaded intrinsic is needed for representing final or invariant memory in managed languages. Reviewers: apilipenko, reames Subscribers: llvm-commits llvm-svn: 276447
-
Vedant Kumar authored
r276409 changed the coverage summary format. Update the script so that it can parse the new output, and incorporate the new information into its warnings. llvm-svn: 276446
-
NAKAMURA Takumi authored
llvm-svn: 276445
-
Michael Kruse authored
llvm-svn: 276444
-
Jan Vesely authored
Also fix get_global_id to consider offset No idea how to add this for ptx, so they are stuck with the old get_global_id implementation. v2: split to a separate patch v3: Switch R600 to use implictarg.ptr Signed-off-by:
Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 276443
-
Jan Vesely authored
v2: split into 2 patches use clang builtins for other intrinsics as well v3: Fix warnings Switch r600 to use implictarg.ptr Signed-off-by:
Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 276442
-
Krzysztof Parzyszek authored
Hexagon backend uses LoopDataPrefetch pass that is defined in Scalar. llvm-svn: 276441
-
Reid Kleckner authored
llvm-svn: 276440
-
Matt Arsenault authored
llvm-svn: 276439
-
Matt Arsenault authored
The size can exceed s_movk_i32's limit, and we don't want to use it this early since it inhibits optimizations. This should probably be merged to the release branch. llvm-svn: 276438
-
Matt Arsenault authored
llvm-svn: 276437
-
Matt Arsenault authored
Remove dead code from r600 intrinsic removal. Remove unset members, rename StackSize to be less ambiguous. llvm-svn: 276436
-
Matt Arsenault authored
R600's i1 fp_to_uint selected but was incorrect according to what instcombine constant folds to. llvm-svn: 276435
-