- Jun 30, 2011
-
-
Rafael Espindola authored
llvm-svn: 134189
-
Tobias Grosser authored
Only prevectorize loops that are actually parallel and can be vectorized. Take the innermost loop that is eligible. llvm-svn: 134187
-
Tobias Grosser authored
We just strip-mine the innermost dimension by the vector width. This does not take into account if this dimension is parallel nor if it is constant. llvm-svn: 134186
-
Hans Wennborg authored
This fixes PR10223. llvm-svn: 134183
-
Rafael Espindola authored
nodes. Original message: Let simplify cfg simplify bb with only debug and lifetime intrinsics. llvm-svn: 134182
-
Tobias Grosser authored
isl introduced a new representation for the schedules it calculates. The new representation uses a forest of bands and is closer to the structure of the data as the old interface. Switch to the new interface, as it is nicer to use and as the old interface will soon be removed from isl. WARNING: This commit needs a version of isl that is more recent that the one included in CLooG. See: http://polly.grosser.es/get_started.html#islTrunk llvm-svn: 134181
-
Tobias Grosser authored
Build Polly without run time type info (rtti), as otherwise Polly cannot be loaded into a LLVM that is built without rtti. llvm-svn: 134180
-
Tobias Grosser authored
Reported-By:
Sebastian Pop <sebpop@gmail.com> llvm-svn: 134179
-
Jim Grosbach authored
It's just a call to a special helper function. Get rid of the T2 variant entirely, as it's identical to the Thumb1 version. llvm-svn: 134178
-
Andrew Trick authored
llvm-svn: 134177
-
Johnny Chen authored
Python SWIG, since it cannot hanlde the (uint32_t &count) parameter. llvm-svn: 134176
-
Jim Grosbach authored
It's just a t2LDMIA_UPD instruction with extra codegen properties, so it doesn't need the encoding information. As a side-benefit, we now correctly recognize for instruction printing as a 'pop' instruction. llvm-svn: 134173
-
Jim Grosbach authored
It's just a tPOP instruction with additional code-gen properties, so it doesn't need encoding information. llvm-svn: 134172
-
Hans Wennborg authored
llvm-svn: 134171
-
John McCall authored
and the RHS of .*. Noticed by Enea Zaffanella! llvm-svn: 134170
-
Hans Wennborg authored
llvm-svn: 134169
-
Peter Collingbourne authored
(SourceManager::createFileID cannot return an invalid file ID). Also update a comment to reflect this. llvm-svn: 134168
-
Peter Collingbourne authored
llvm-svn: 134167
-
Hans Wennborg authored
This fell out when Chandler landed the patch in r134138. llvm-svn: 134163
-
Tobias Grosser authored
llvm-svn: 134158
-
Tobias Grosser authored
llvm-svn: 134156
-
-
Tobias Grosser authored
llvm-svn: 134153
-
Tobias Grosser authored
In some cases it is necessary to use a version of isl that is more recent than the one included with CLooG. Point out what is needed to get such a version. llvm-svn: 134152
-
Rafael Espindola authored
llvm-svn: 134148
-
David Chisnall authored
llvm-svn: 134140
-
Abramo Bagnara authored
llvm-svn: 134139
-
Chandler Carruth authored
a constructor or destructor. Patch by Hans Wennborg. llvm-svn: 134138
-
John McCall authored
for a template template parameter. Uses to follow. I've also made the uniquing of SubstTemplateTemplateParmPacks use a ContextualFoldingSet as a minor space efficiency. llvm-svn: 134137
-
Chandler Carruth authored
Patch by Caitlin Sadowski. Unfortunately, this attribute doesn't seem to have a single test. It is only mentioned in comments in one test, and as a string literal in a copy of some Clang code checked in as a test for the Indexer. =[ It dates from 2009 r74280 as part of OpenCL 1.0. llvm-svn: 134136
-
Jason Molenda authored
should make it a little easier to use this as an example of how to fetch all the different bits of information about threads. llvm-svn: 134135
-
Duncan Sands authored
llvm-svn: 134134
-
Greg Clayton authored
"struct ", "class ", and "union " from the start of any type names that are extracted from clang QualType objects. I had to fix test suite cases that were expecting the struct/union/class prefix to be there. llvm-svn: 134132
-
Jim Grosbach authored
llvm-svn: 134131
-
Jim Grosbach authored
tADDrSPi is not predicable, so we can't size-reduce a t2ADDri to it if the predicate is anything other than "always." llvm-svn: 134130
-
Evan Cheng authored
llvm-svn: 134129
-
Evan Cheng authored
llvm-svn: 134128
-
Evan Cheng authored
be the first encoded as the first feature. It then uses the CPU name to look up features / scheduling itineray even though clients know full well the CPU name being used to query these properties. The fix is to just have the clients explictly pass the CPU name! llvm-svn: 134127
-
Joerg Sonnenberger authored
llvm-svn: 134126
-
Jakob Stoklund Olesen authored
This patch will sometimes choose live range split points next to interference instead of always splitting next to a register point. That means spill code can now appear almost anywhere, and it was necessary to fix code that didn't expect that. The difficult places were: - Between a CALL returning a value on the x87 stack and the corresponding FpPOP_RETVAL (was FpGET_ST0). Probably also near x87 inline assembly, but that didn't actually show up in testing. - Between a CALL popping arguments off the stack and the corresponding ADJCALLSTACKUP. Both are fixed now. The only place spill code can't appear is after terminators, see SplitAnalysis::getLastSplitPoint. Original commit message: Rewrite RAGreedy::splitAroundRegion, now with cool ASCII art. This function has to deal with a lot of special cases, and the old version got it wrong sometimes. In particular, it would sometimes leave multiple uses in the stack interval in a single block. That causes bad code with multiple reloads in the same basic block. The new version handles block entry and exit in a single pass. It first eliminates all the easy cases, and then goes on to create a local interval for the blocks with difficult interference. Previously, we would only create the local interval for completely isolated blocks. It can happen that the stack interval becomes completely empty because we could allocate a register in all edge bundles, and the new local intervals deal with the interference. The empty stack interval is harmless, but we need to remove a SplitKit assertion that checks for empty intervals. llvm-svn: 134125
-