summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Resubmit the copying of TargetData to DataLayout without any changes to the ↵Micah Villmow2012-10-043-0/+1029
| | | | | | files, this should fix the problems and the changes to rename to DataLayout will come next. llvm-svn: 165262
* Fixed an assertion in the SymbolFile resultingSean Callanan2012-10-041-7/+9
| | | | | | from a NULL ObjCInterfaceDecl. llvm-svn: 165261
* <rdar://problem/12424824> Making sure that we correctly update our synthetic ↵Enrico Granata2012-10-043-69/+106
| | | | | | children provider for NSDictionary - providing better support for dynamic types by letting the filter recalculate itself when the type of the object changes llvm-svn: 165260
* Fixed FunctionTypeLoc source range.Abramo Bagnara2012-10-0412-76/+225
| | | | llvm-svn: 165259
* Fixed instantiated operators source range.Abramo Bagnara2012-10-041-1/+1
| | | | llvm-svn: 165258
* Fixed friend decl source range.Abramo Bagnara2012-10-041-3/+9
| | | | llvm-svn: 165257
* Fixed ParamDecl source range for implicit typed k&r parameters.Abramo Bagnara2012-10-041-0/+3
| | | | llvm-svn: 165256
* This patch corrects commit 165126 by using an integer bit width instead of Preston Gurd2012-10-045-23/+23
| | | | | | | | a pointer to a type, in order to remove the uses of getGlobalContext(). Patch by Tyler Nowicki. llvm-svn: 165255
* ARM: locate user-defined text sections next to default text.Jim Grosbach2012-10-042-4/+41
| | | | | | | | | | | | Make sure functions located in user specified text sections (via the section attribute) are located together with the default text sections. Otherwise, for large object files, the relocations for call instructions are more likely to be out of range. This becomes even more likely in the presence of LTO. rdar://12402636 llvm-svn: 165254
* Backing out my changes, something screwed up from my patches, starting over.Micah Villmow2012-10-043-1029/+0
| | | | llvm-svn: 165253
* <rdar://problem/12424824> Making sure that we correctly update our synthetic ↵Enrico Granata2012-10-041-54/+68
| | | | | | children provider for NSArray - the same work will need to be done for NSDictionary llvm-svn: 165252
* Rename TargetData to DataLayout in DataLayout.cpp. This should fix a build ↵Micah Villmow2012-10-041-33/+33
| | | | | | failure from r165249 where the wrong version of the file was submitted. llvm-svn: 165251
* Update this a bit more to represent how the prologue should work:Eric Christopher2012-10-043-5/+39
| | | | | | | | | | a) frame setup instructions define the prologue b) we shouldn't change our location mid-stream Add a test to make sure that the stack adjustment stays within the prologue. llvm-svn: 165250
* Create the DataLayout class, as a direct copy of TargetData.Micah Villmow2012-10-043-0/+1029
| | | | llvm-svn: 165249
* Fix the CodeGen/ppc64-varargs-struct.c test case to tolerate release builds.Bill Schmidt2012-10-041-3/+3
| | | | llvm-svn: 165247
* Adding MCJIT and MemoryBuffer unit testsAndrew Kaylor2012-10-0411-1/+869
| | | | | | Patch by Daniel Malea. llvm-svn: 165246
* Add a test case for r156143, which enabled general varargs support for theBill Schmidt2012-10-041-0/+32
| | | | | | | | | 64-bit PPC SVR4 ABI. The test verifies passing of structures, items with 16-byte alignment, and small items that are passed right-justified in the parameter save area slot. llvm-svn: 165245
* Accidently checked in the files, only wanted to copy them.Micah Villmow2012-10-042-1028/+0
| | | | llvm-svn: 165244
* (no commit message)Micah Villmow2012-10-041-0/+665
| | | | llvm-svn: 165243
* (no commit message)Micah Villmow2012-10-041-0/+363
| | | | llvm-svn: 165242
* Add register encoding support in X86 backendMichael Liao2012-10-048-403/+287
| | | | | | | | - Add 'HwEncoding' for X86 registers and call getEncodingValue() to retrieve their encoding values. - This's the first step to adopt new scheme. Furthur revising is onging. llvm-svn: 165241
* Driver: Link crtfastmath.o if it's available and -ffast-math is specified.Benjamin Kramer2012-10-045-0/+53
| | | | | | | | | | | | crtfastmath.o contains routines to set the floating point flags to a faster, unsafe mode. Linking it in speeds up code dealing with denormals significantly (PR14024). For now this is only enabled on linux where I can test it and crtfastmath.o is widely available. We may want to provide a similar file with compiler-rt eventually and/or enable it on other platforms too. llvm-svn: 165240
* Fix doxygen comment to match parameters' names.Jakub Staszak2012-10-041-1/+1
| | | | llvm-svn: 165239
* Add a comment to the commit r165187.Jakub Staszak2012-10-041-1/+3
| | | | llvm-svn: 165238
* - add tokens to PPCInstrInfo.td and PPCInstr64Bit.td to resolveWill Schmidt2012-10-042-50/+50
| | | | | | | | | | "Instruction 'foo' has no tokens" errors during llvm-tblgen -gen-asm-matcher attempts. At this time, the added tokens are "#comment" style rather than the actual mnemonic. This will be revisited once the rest of the base asmparser bits get straightened out for ppc64-elf-linux. llvm-svn: 165237
* Get MCSchedModel directly from the subtarget.Jakob Stoklund Olesen2012-10-041-2/+3
| | | | | | | Not all targets have itineraries, but the subtarget always has an MCSchedModel. llvm-svn: 165236
* Switch MachineTraceMetrics to the new TargetSchedModel interface.Jakob Stoklund Olesen2012-10-043-32/+28
| | | | llvm-svn: 165235
* Fix scope location when parsing GNU attributes.Michael Han2012-10-042-6/+6
| | | | | | | | For GNU attributes, instead of reusing attribute source location for the scope location, use SourceLocation() since GNU attributes don not have scope tokens. llvm-svn: 165234
* test commit / whitespaceWill Schmidt2012-10-041-1/+1
| | | | llvm-svn: 165233
* SimplifyCFG: Enhance the "remove CFG edge that leads to null pointer ↵Benjamin Kramer2012-10-042-2/+31
| | | | | | | | | | dereference" optimization to also handle instructions with multiple uses. We conservatively only check the first use to avoid walking long use chains. This catches the common case of having both a load and a store to a pointer supplied by a PHI node. llvm-svn: 165232
* Revert 165129Preston Gurd2012-10-041-32/+0
| | | | llvm-svn: 165231
* tsan for Go: support mallocs before __tsan_init() (required to support cgo code)Dmitry Vyukov2012-10-041-1/+3
| | | | llvm-svn: 165229
* In my recent change to avoid use of underaligned memory I didn't notice thatDuncan Sands2012-10-042-9/+9
| | | | | | | | cpyDest can be mutated in some cases, which would then cause a crash later if indeed the memory was underaligned. This brought down several buildbots, so I guess the underaligned case is much more common than I thought! llvm-svn: 165228
* Avoid calling __asan_init from memcpy(), memmove(), memset() during ↵Alexander Potapenko2012-10-041-0/+9
| | | | | | | | libSystem initialization. Fixes http://code.google.com/p/address-sanitizer/issues/detail?id=117. llvm-svn: 165227
* The alignment of an sret parameter is known: it must be at least theDuncan Sands2012-10-043-8/+33
| | | | | | alignment of the return type. Teach the optimizers this. llvm-svn: 165226
* Hoist some grossly duplicated code from the COFF/ELF/MachO streamers into ↵Benjamin Kramer2012-10-045-126/+32
| | | | | | MCObjectStreamer. llvm-svn: 165225
* Fix wrong name in comment.Duncan Sands2012-10-041-2/+2
| | | | llvm-svn: 165224
* Fix PR13969, a mini-phase-ordering issue with the new SROA pass.Chandler Carruth2012-10-042-23/+74
| | | | | | | | | | | | | | | | | | | | | Currently, we re-visit allocas when something changes about the way they might be *split* to allow better scalarization to take place. However, we weren't handling the case when the *promotion* is what would change the behavior of SROA. When an address derived from an alloca is stored into another alloca, we consider the first to have escaped. If the second is ever promoted to an SSA value, we will suddenly be able to run the SROA pass on the first alloca. This patch adds explicit support for this form if iteration. When we detect a store of a pointer derived from an alloca, we flag the underlying alloca for reprocessing after promotion. The logic works hard to only do this when there is definitely going to be promotion and it might remove impediments to the analysis of the alloca. Thanks to Nick for the great test case and Benjamin for some sanity check review. llvm-svn: 165223
* [ASan] don't build 64-bit runtime on 32-bit Linux platformsAlexey Samsonov2012-10-041-1/+5
| | | | llvm-svn: 165222
* The memcpy optimizer was happily doing call slot forwarding when the new memoryDuncan Sands2012-10-042-7/+51
| | | | | | | | | | was less aligned than the old. In the testcase this results in an overaligned memset: the memset alignment was correct for the original memory but is too much for the new memory. Fix this by either increasing the alignment of the new memory or bailing out if that isn't possible. Should fix the gcc-4.7 self-host buildbot failure. llvm-svn: 165220
* Teach the integer-promotion rewrite strategy to be endianness aware.Chandler Carruth2012-10-047-14/+142
| | | | | | | | | | | | | | | | | | | | | | | Sorry for this being broken so long. =/ As part of this, switch all of the existing tests to be Little Endian, which is the behavior I was asserting in them anyways! Add in a new big-endian test that checks the interesting behavior there. Another part of this is to tighten the rules abotu when we perform the full-integer promotion. This logic now rejects cases where there fully promoted integer is a non-multiple-of-8 bitwidth or cases where the loads or stores touch bits which are in the allocated space of the alloca but are not loaded or stored when accessing the integer. Sadly, these aren't really observable today as the rest of the pass will already ensure the invariants hold. However, the latter situation is likely to become a potential concern in the future. Thanks to Benjamin and Duncan for early review of this patch. I'm still looking into whether there are further endianness issues, please let me know if anyone sees BE failures persisting past this. llvm-svn: 165219
* tsan: add atomic_fetch_sub() and atomic_signal_fence() functionsDmitry Vyukov2012-10-043-0/+41
| | | | llvm-svn: 165218
* Prefer StringRef::startswith to the strncmp/strlen contraption.Benjamin Kramer2012-10-041-1/+2
| | | | | | This may be slightly more efficient and is definitely more readable. llvm-svn: 165217
* Fix typo in comments.Logan Chien2012-10-041-2/+2
| | | | llvm-svn: 165216
* Fix r165005: The lexical DeclContext is not the right place to make a ↵Axel Naumann2012-10-041-4/+6
| | | | | | decision about whether we need to call tryAddTopLevelDecl or not. That call should be made when the DeclContext's redeclaration context is the translation unit. llvm-svn: 165215
* [asan] properly report mmap failureKostya Serebryany2012-10-042-0/+24
| | | | llvm-svn: 165214
* Use method to query if there are attributes.Bill Wendling2012-10-041-1/+1
| | | | llvm-svn: 165213
* Add method to query for NoCapture attribute.Bill Wendling2012-10-043-2/+23
| | | | llvm-svn: 165212
* Use method to query for NoAlias attribute.Bill Wendling2012-10-041-1/+1
| | | | llvm-svn: 165211
* Use attribute query methods.Bill Wendling2012-10-041-3/+3
| | | | llvm-svn: 165210
OpenPOWER on IntegriCloud