- Mar 26, 2013
-
-
John Thompson authored
llvm-svn: 178047
-
Michael Liao authored
- 'prefetch' intrinsics are only lowered when SSE is available. On non-X86 builds, 'generic' CPU is used and stops lowering any prefetch intrinsics. llvm-svn: 178046
-
Arnold Schwaighofer authored
This is a compile time optimization. Before the patch we would do two traversals on each call to aliasGEP - one with a set size parameter one with UnknownSize. We can do better by first checking the result of the alias query with UnknownSize. Only if this one returns MayAlias do we query a second time using size and type. This recovers an about 7% compile time regression on spec/ammp. radar://12349960 llvm-svn: 178045
-
Enrico Granata authored
Our commands that end up displaying a ValueObject as part of their workflow use OptionGroupValueObjectDisplay as their currency for deciding the final representation ValueObjects themselves use DumpValueObjectOptions as the currency for the same purpose The code to convert between these two units was replicated (to varying degrees of correctness) in several spots in the code This checkin provides one and only one (and hopefully correct :-) entry point for this conversion llvm-svn: 178044
-
Jim Ingham authored
llvm-svn: 178043
-
Chad Rosier authored
machine and one is required. Part of rdar://13295753 llvm-svn: 178042
-
Michael Liao authored
- Add head 'prfchwintrin.h' to define '_m_prefetchw' which is mapped to LLVM/clang prefetch builtin - Add option '-mprfchw' to enable PRFCHW feature and pre-define '__PRFCHW__' macro llvm-svn: 178041
-
Michael Liao authored
- Add 'PRFCHW' feature defined in AVX2 ISA extension llvm-svn: 178040
-
Sean Callanan authored
llvm-svn: 178039
-
Ulrich Weigand authored
llvm-svn: 178038
-
Argyrios Kyrtzidis authored
[Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses. For each macro directive (define, undefine, visibility) have a separate object that gets chained to the macro directive history. This has several benefits: -No need to mutate a MacroDirective when there is a undefine/visibility directive. Stuff like PPMutationListener become unnecessary. -No need to keep extra source locations for the undef/visibility locations for the define directive object (which is the majority of the directives) -Much easier to hide/unhide a section in the macro directive history. -Easier to track the effects of the directives across different submodules. llvm-svn: 178037
-
Reid Kleckner authored
Summary: The only vector types a user can pass from MSVC code to clang code are the ones from *mmintrin.h, so we only have to match the MSVC mangling for these types. MSVC mangles the __m128 family of types as tag types, which we match. For other vector types, we emit a unique tag type mangling that won't match anything produced by MSVC. Reviewers: rjmccall CC: chandlerc, timurrrr, cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D576 llvm-svn: 178036
-
Greg Clayton authored
llvm-svn: 178035
-
Edwin Vane authored
Sam Panzer, author of loop convert, provided a list of limitations of the tool to be documented. (Thanks Sam!) The transform's limitations are now documented in the existing user doc. Included are examples of the cases where the tool may change semantics. Author: Jack Yang <jack.yang@intel.com> llvm-svn: 178034
-
Howard Hinnant authored
llvm-svn: 178033
-
Jyotsna Verma authored
llvm-svn: 178032
-
Ulrich Weigand authored
The OptimizeIntToFloatBitCast converts shift-truncate sequences into extractelement operations. The computation of the element index to be used in the resulting operation is currently only correct for little-endian targets. This commit fixes the element index computation to be correct for big-endian targets as well. If the target byte order is unknown, the optimization cannot be performed at all. llvm-svn: 178031
-
Jyotsna Verma authored
llvm-svn: 178030
-
Marshall Clow authored
llvm-svn: 178029
-
Arnold Schwaighofer authored
This reverts commit r177968. It is causing failures in a local build bot. "fatal error: error in backend: Expected a variant SchedClass" Original commit message: Move the CortexA9 resources into the CortexA9 SchedModel namespace. Define resource mappings under the CortexA9 SchedModel. Define resources and mappings for the SwiftModel. llvm-svn: 178028
-
Shankar Easwaran authored
llvm-svn: 178027
-
Howard Hinnant authored
llvm-svn: 178026
-
Benjamin Kramer authored
llvm-svn: 178025
-
Christian Konig authored
Not only fold immediates, but avoid unnecessary copies as well. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178024
-
Christian Konig authored
Prevent loading M0 multiple times. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178023
-
Christian Konig authored
Just define the address as unknown instead of VReg_32. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178022
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178021
-
Christian Konig authored
They read from constant register space anyway. v2: fix lit tests Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178020
-
Christian Konig authored
Just enable WQM when we see an LDS interpolation instruction. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178019
-
Christian Konig authored
Restore the EXEC mask early, otherwise a copy might end up not beeing executed. Candidate for the mesa stable branch. Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Michel Dänzer <michel.daenzer@amd.com> Tested-by:
Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 178018
-
Joe Abbey authored
If PC or SP is the destination, the disassembler erroneously failed with the invalid encoding, despite the manual saying that both are fine. This patch addresses failure to decode encoding T4 of LDR (A8.8.62) which is a postindexed load, where the offset 0xc is applied to SP after the load occurs. llvm-svn: 178017
-
Howard Hinnant authored
llvm-svn: 178016
-
Evgeniy Stepanov authored
CalleeWithThisReturn can be left initialized if HasThisReturn() is false. This change reverses the order of checks in EmitFunctionEpilog such that CalleeWithThisReturn is only examined when it has a meaningful value. Found with MemorySanitizer. llvm-svn: 178015
-
Alexey Samsonov authored
[ASan] Change the ABI of __asan_before_dynamic_init function: now it takes pointer to private string with module name. This string serves as a unique module ID in ASan runtime. compiler-rt part llvm-svn: 178014
-
Alexey Samsonov authored
[ASan] Change the ABI of __asan_before_dynamic_init function: now it takes pointer to private string with module name. This string serves as a unique module ID in ASan runtime. LLVM part llvm-svn: 178013
-
Alexander Potapenko authored
llvm-svn: 178012
-
Kostya Serebryany authored
llvm-svn: 178011
-
Dmitry Vyukov authored
llvm-svn: 178010
-
Dmitry Vyukov authored
llvm-svn: 178009
-
Ulrich Weigand authored
There remain a number of patterns that cannot (and should not) be handled by the asm parser, in particular all the Pseudo patterns. This commit marks those patterns as isCodeGenOnly. No change in generated code. llvm-svn: 178008
-