- Apr 24, 2013
-
-
Rafael Espindola authored
LTO was always creating an empty llvm.compiler.used. With this patch we now first check if there is anything to be added first. Unfortunately, there is no good way to test libLTO in isolation as it needs gold or ld64, but there are bots doing LTO builds that found this problem. llvm-svn: 180202
-
Reid Kleckner authored
That seems to interact poorly with the environ and _environ macros defined in MSVC's <stdlib.h>. Also remove the incorrect comment about _NSGetEnviron(). llvm-svn: 180200
-
Arnold Schwaighofer authored
This makes it easier to read the code. No functionality change. llvm-svn: 180197
-
Arnold Schwaighofer authored
This patch disables memory-instruction vectorization for types that need padding bytes, e.g., x86_fp80 has 10 bytes store size with 6 bytes padding in darwin on x86_64. Because the load/store vectorization is performed by the bit casting to a packed vector, which has incompatible memory layout due to the lack of padding bytes, the present vectorizer produces inconsistent result for memory instructions of those types. This patch checks an equality of the AllocSize of a scalar type and allocated size for each vector element, to ensure that there is no padding bytes and the array can be read/written using vector operations. Patch by Daisuke Takahashi! Fixes PR15758. llvm-svn: 180196
-
Arnold Schwaighofer authored
llvm-svn: 180195
-
Rafael Espindola authored
This should bring the ppc bots back. I will try to write a test that would have found the problem on a little endian system too. llvm-svn: 180194
-
Andrew Trick authored
For now, we just reschedule instructions that use the copied vregs and let regalloc elliminate it. I would really like to eliminate the copies on-the-fly during scheduling, but we need a complete implementation of repairIntervalsInRange() first. The general strategy is for the register coalescer to eliminate as many global copies as possible and shrink live ranges to be extended-basic-block local. The coalescer should not have to worry about resolving local copies (e.g. it shouldn't attemp to reorder instructions). The scheduler is a much better place to deal with local interference. The coalescer side of this equation needs work. llvm-svn: 180193
-
Andrew Trick authored
When MachineScheduler is enabled, this functionality can be removed. Until then, provide a way to disable it for test cases and designing MachineScheduler heuristics. llvm-svn: 180192
-
Andrew Trick authored
llvm-svn: 180191
-
Rafael Espindola authored
llvm-svn: 180190
-
Rafael Espindola authored
Since the relocation iterator walks only the relocations in one section, we can just use a pointer and avoid fetching information about the section at every reference. llvm-svn: 180189
-
Eric Christopher authored
llvm-svn: 180188
-
Eric Christopher authored
llvm-svn: 180186
-
Bill Wendling authored
I know what would be cool! We should align the compact unwind section because aligned data access is faster. <rdar://problem/13723271> llvm-svn: 180171
-
Jia Liu authored
llvm-svn: 180169
-
Adrian Prantl authored
rdar://problem/12415623 llvm-svn: 180168
-
Andrew Trick authored
Super-resources and resource groups are two ways of expressing overlapping sets of processor resources. Now we generate table entries the same way for both so the scheduler never needs to explicitly check for super-resources. llvm-svn: 180162
-
Andrew Trick authored
llvm-svn: 180161
-
Andrew Trick authored
llvm-svn: 180160
-
Andrew Trick authored
llvm-svn: 180159
-
Eric Christopher authored
Patch by Tom Stellard. (Committed while he's afk per request) llvm-svn: 180157
-
- Apr 23, 2013
-
-
Andrew Kaylor authored
llvm-svn: 180150
-
Andrew Kaylor authored
llvm-svn: 180147
-
Andrew Kaylor authored
llvm-svn: 180146
-
Jyotsna Verma authored
llvm-svn: 180145
-
Jyotsna Verma authored
No functionality change. llvm-svn: 180144
-
Adrian Prantl authored
debug location. This solves a problem where range of an inlined subroutine is emitted wrongly. Patch by Manman Ren. Fixes rdar://problem/12415623 llvm-svn: 180140
-
Stephen Lin authored
Add more tests for r179925 to verify correct handling of signext/zeroext; strengthen condition check to require actual MVT::i32 virtual register types, just in case (no actual functionality change) llvm-svn: 180138
-
Rafael Espindola authored
llvm-svn: 180137
-
Stephen Lin authored
llvm-svn: 180136
-
Rafael Espindola authored
The COFFParser now contains only a COFFYAML::Object and the string table (which is recomputed, not serialized). The structs in COFFParser now all begin with a Header field with what is actually on the COFF object. The other fields are things that are semantically part of the struct (relocations in a section for exmaple), but are not actually represented that way in the object file. llvm-svn: 180134
-
Jyotsna Verma authored
llvm-svn: 180133
-
Bill Schmidt authored
No functional change intended. llvm-svn: 180131
-
Akira Hatanaka authored
No intended changes in functionality. llvm-svn: 180130
-
Owen Anderson authored
DAGCombine should not aggressively fold SEXT(VSETCC(...)) into a wider VSETCC without first checking the target's vector boolean contents. This exposed an issue with PowerPC AltiVec where it appears it was setting the wrong vector boolean contents. The included change fixes the PowerPC tests, and was OK'd by Hal. llvm-svn: 180129
-
Aaron Ballman authored
Testing for _XCR_XFEATURE_ENABLED_MASK instead of a specific MSVC version because some MSVC 2010 SP1 installations do not have the _xgetbv intrinsic. Patch thanks to Serge Pavlov! llvm-svn: 180125
-
Vincent Lejeune authored
llvm-svn: 180124
-
Vincent Lejeune authored
llvm-svn: 180123
-
Nadav Rotem authored
LoopVectorizer: Fix 15830. When scalarizing and unrolling stores make sure that the order in which the elements are scalarized is the same as the original order. This fixes a miscompilation in FreeBSD's regex library. llvm-svn: 180121
-
Jyotsna Verma authored
for absolute/absolute-set addressing modes. llvm-svn: 180120
-