summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [yaml2obj][ELF] Assign name (.shstrtab) to the section holds sections names.Simon Atanasyan2014-03-142-0/+14
| | | | llvm-svn: 203897
* [Mips] Add one more MIPS relocation type constant.Simon Atanasyan2014-03-141-1/+2
| | | | llvm-svn: 203896
* De-virtualize a method that doesn't override anything and has no overrides ↵Craig Topper2014-03-141-2/+2
| | | | | | itself. llvm-svn: 203895
* Remove seemingly dead method. It was marked virtual but doesn't override ↵Craig Topper2014-03-141-1/+0
| | | | | | anything and there don't seem to be any in tree callers. llvm-svn: 203894
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-1410-416/+393
| | | | | | class. llvm-svn: 203893
* [PECOFF] Fix link order.Rui Ueyama2014-03-142-25/+20
| | | | | | | | | | | | | | | | LLD fails to link symbol "_main" if the symbol is in a library file and the library file is given as a bare argument (i.e. not with /defaultlib option). It's because library files given as bare arguments are processed before other libraries given with /defaultlib, so when Linker finds msvcrtd needs a definition for "_main", the file providing the main function has already been processed and skipped. Linker don't revisit libraries if it's not given with /defaultlib. To fix it this patch change the way of command line handling; files end with ".lib" are treated as if they are given with /defaultlib. I don't believe it's 100% correct behavior but it's better than before. llvm-svn: 203892
* [PECOFF] Fix arguments passed to lib.exe.Rui Ueyama2014-03-142-1/+2
| | | | llvm-svn: 203891
* Revert r203883 (which was more of a bandaid) and fix the real underlyingOwen Anderson2014-03-142-1/+3
| | | | | | | | issue in that the new MachineRegisterInfo bundle iterators didn't dereference to the START of the bundle, while the old skipBundle() method did. llvm-svn: 203890
* [PECOFF] Make WinLinkDriver::parse() and allocate*() functions thread-safe.Rui Ueyama2014-03-143-8/+38
| | | | | | Looks like a major cause of instability on Windows is this thread-safety bug. llvm-svn: 203889
* add -load polly.so only when not LINK_POLLY_INTO_TOOLSSebastian Pop2014-03-141-2/+13
| | | | llvm-svn: 203888
* static link pollySebastian Pop2014-03-142-0/+19
| | | | llvm-svn: 203887
* static link polly into toolsSebastian Pop2014-03-148-6/+54
| | | | llvm-svn: 203886
* [Modules] Emit the module file paths as dependencies of the PCH when we are ↵Argyrios Kyrtzidis2014-03-149-1/+50
| | | | | | | | | | | building one. This is because the PCH is tied to the module files, if one of the module files changes or gets removed the build system should re-build the PCH file. rdar://16321245 llvm-svn: 203885
* [PECOFF] Implement /lib option.Rui Ueyama2014-03-142-2/+38
| | | | | | This option is not documented and seems weird, but yeah we need it anyway. llvm-svn: 203884
* Fix issue with r203865. The old behaviour would get a MachineOperand then ↵Pete Cooper2014-03-141-1/+1
| | | | | | find the MI for the bundle the MI was in. The new behaviour was failing to get the parent bundle and instead just used the MI from the MachineOperand llvm-svn: 203883
* [Modules] Make sure that the synthesized file "__inferred_module.map" ↵Argyrios Kyrtzidis2014-03-144-10/+31
| | | | | | | | doesn't show up as dependency of a module file. Follow-up for rdar://15459210 llvm-svn: 203882
* Refactor ASTReader::readInputFileInfo to return a struct containing the ↵Argyrios Kyrtzidis2014-03-142-17/+23
| | | | | | | | related information. No functionality change. llvm-svn: 203881
* Reverted r203879.Galina Kistanova2014-03-141-1/+1
| | | | llvm-svn: 203880
* Fixed misuse of isascii. Also fixes mingw32 build, see ↵Galina Kistanova2014-03-141-1/+1
| | | | | | http://msdn.microsoft.com/en-us/library/ms235417.aspx llvm-svn: 203879
* [PECOFF] Add one more test for r203875.Rui Ueyama2014-03-142-1/+2
| | | | | | | This is to make sure that the Windows-style command line tokenizer is working as expected. llvm-svn: 203877
* Use short identifier, s/diagnostics/diag/.Rui Ueyama2014-03-141-67/+62
| | | | llvm-svn: 203876
* [PECOFF] Support response files.Rui Ueyama2014-03-144-4/+76
| | | | | | | | If the driver finds a command line option in the form of "@filename", the option will be replaced with the content of the given file. It's an error if a response file cannot be read. llvm-svn: 203875
* One more time. Multi-line expressions when there is no valid expression that ↵Greg Clayton2014-03-131-1/+1
| | | | | | follow “expr [options] —“. llvm-svn: 203874
* Fixed crasher when “expr” was NULL due to no characters following the ↵Greg Clayton2014-03-131-1/+1
| | | | | | terminating "--". llvm-svn: 203873
* Allow a multi-line expression to follow expression commands with options ↵Greg Clayton2014-03-132-19/+35
| | | | | | when there is no expression following the option terminating “—“. llvm-svn: 203872
* [libpluto] Make more pluto options accessibleTobias Grosser2014-03-131-2/+92
| | | | | Contributed-by: Sam Novak <snovak@uwsp.edu> llvm-svn: 203871
* Allow several polly command line options to be provided multiple timesTobias Grosser2014-03-134-19/+29
| | | | | Contributed-by: Sam Novak <snovak@uwsp.edu> llvm-svn: 203869
* [autoconf] Add Transform/ directoryTobias Grosser2014-03-132-0/+30
| | | | | Contributed-by: Sam Novak <snovak@uwsp.edu> llvm-svn: 203868
* Use DW_AT_linkage_name when we're emitting DWARF4 or above.Eric Christopher2014-03-132-18/+19
| | | | llvm-svn: 203867
* Remove the linker_private and linker_private_weak linkages.Rafael Espindola2014-03-1331-168/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These linkages were introduced some time ago, but it was never very clear what exactly their semantics were or what they should be used for. Some investigation found these uses: * utf-16 strings in clang. * non-unnamed_addr strings produced by the sanitizers. It turns out they were just working around a more fundamental problem. For some sections a MachO linker needs a symbol in order to split the section into atoms, and llvm had no idea that was the case. I fixed that in r201700 and it is now safe to use the private linkage. When the object ends up in a section that requires symbols, llvm will use a 'l' prefix instead of a 'L' prefix and things just work. With that, these linkages were already dead, but there was a potential future user in the objc metadata information. I am still looking at CGObjcMac.cpp, but at this point I am convinced that linker_private and linker_private_weak are not what they need. The objc uses are currently split in * Regular symbols (no '\01' prefix). LLVM already directly provides whatever semantics they need. * Uses of a private name (start with "\01L" or "\01l") and private linkage. We can drop the "\01L" and "\01l" prefixes as soon as llvm agrees with clang on L being ok or not for a given section. I have two patches in code review for this. * Uses of private name and weak linkage. The last case is the one that one could think would fit one of these linkages. That is not the case. The semantics are * the linker will merge these symbol by *name*. * the linker will hide them in the final DSO. Given that the merging is done by name, any of the private (or internal) linkages would be a bad match. They allow llvm to rename the symbols, and that is really not what we want. From the llvm point of view, these objects should really be (linkonce|weak)(_odr)?. For now, just keeping the "\01l" prefix is probably the best for these symbols. If we one day want to have a more direct support in llvm, IMHO what we should add is not a linkage, it is just a hidden_symbol attribute. It would be applicable to multiple linkages. For example, on weak it would produce the current behavior we have for objc metadata. On internal, it would be equivalent to private (and we should then remove private). llvm-svn: 203866
* Phase 2 of the great MachineRegisterInfo cleanup. This time, we're changingOwen Anderson2014-03-1335-150/+255
| | | | | | | | | | operator* on the by-operand iterators to return a MachineOperand& rather than a MachineInstr&. At this point they almost behave like normal iterators! Again, this requires making some existing loops more verbose, but should pave the way for the big range-based for-loop cleanups in the future. llvm-svn: 203865
* Refactor the Queues test case a little based on feedback from Jim.Jason Molenda2014-03-131-59/+135
| | | | | | Add queues tests for when libBacktraceRecording is absent. llvm-svn: 203864
* [C++11] Replacing ObjCProtocolDecl iterators protocol_begin() and ↵Aaron Ballman2014-03-1313-94/+61
| | | | | | protocol_end() with iterator_range protocols(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203863
* Fix a bug in InstCombine where we would incorrectly attempt to construct aOwen Anderson2014-03-132-0/+19
| | | | | | | bitcast between pointers of two different address spaces if they happened to have the same pointer size. llvm-svn: 203862
* [cmake] There is only one PoCC file, and this is in /TransformsTobias Grosser2014-03-131-2/+1
| | | | llvm-svn: 203861
* update commentSebastian Pop2014-03-131-3/+2
| | | | llvm-svn: 203859
* MCDwarf: Rename MCDwarfFileTable to MCDwarfLineTableDavid Blaikie2014-03-135-24/+25
| | | | | | | This type now represents all the data for the DWARF line table: directory names, file names, and the line table proper. llvm-svn: 203858
* [C++11] Replacing ObjCInterfaceDecl iterators known_extensions_begin() and ↵Aaron Ballman2014-03-135-25/+14
| | | | | | known_extensions_end() with iterator_range known_extensions(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203857
* MCDwarf: Extract the DWARF line table header handling into its own typeDavid Blaikie2014-03-132-20/+34
| | | | llvm-svn: 203856
* [C++11] Replacing ObjCInterfaceDecl iterators visible_extensions_begin() and ↵Aaron Ballman2014-03-135-43/+21
| | | | | | visible_extensions_end() with iterator_range visible_extensions(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203855
* [C++11] Replacing ObjCInterfaceDecl iterators known_categories_begin() and ↵Aaron Ballman2014-03-136-42/+22
| | | | | | known_categories_end() with iterator_range known_categories(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203854
* Make GDBJITRegistrar thread safe. Patch by Jim Kearyn, with cleanup byLang Hames2014-03-131-16/+10
| | | | | | | | Ivan Puzyrevskiy. Fixes PR15750. Thanks Jim and Ivan. llvm-svn: 203853
* Fix a subtle issue introduced my my recent changes to MachineRegisterInfo ↵Owen Anderson2014-03-131-1/+1
| | | | | | | | | | | | | | | iterators. When initializing an iterator, we may have to step forward to find the first operand that passes the current filter set. When doing that stepping, we should always step one operand at a time, even if this is by-instr or by-bundle iterator, as we're stepping between invalid values, so the stride doesn't make sense there. Fixes a miscompilation of YASM on Win32 reported by Hans Wennborg. I have not yet figured out how to reduce it to something testcase-able, because it's sensitive to the details of how the registers get spilled. llvm-svn: 203852
* [C++11] Replacing ObjCInterfaceDecl iterators visible_categories_begin() and ↵Aaron Ballman2014-03-137-76/+33
| | | | | | visible_categories_end() with iterator_range visible_categories(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203851
* Fix cmake build issues on Darwin.Todd Fiala2014-03-137-5/+18
| | | | llvm-svn: 203850
* [C++11] Replacing ObjCInterfaceDecl iterators ivar_begin() and ivar_end() ↵Aaron Ballman2014-03-136-27/+19
| | | | | | with iterator_range ivars(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203849
* [C++11] Replacing ObjCInterfaceDecl iterators ↵Aaron Ballman2014-03-138-84/+43
| | | | | | all_referenced_protocol_begin() and all_referenced_protocol_end() with iterator_range all_referenced_protocols(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203848
* [C++11] Replacing ObjCInterfaceDecl iterators protocol_loc_begin() and ↵Aaron Ballman2014-03-132-4/+6
| | | | | | protocol_loc_end() with iterator_range protocol_locs(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203847
* Refactor InstantiatingTemplate constructorsStephan Tolksdorf2014-03-132-164/+73
| | | | | | | | | | | This patch factors the bodies of 9 constructors out into a single initialization method. Reviewed By: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D3059 llvm-svn: 203846
* Add SourceRange to err_not_tag_in_scope diagnostic in ↵Stephan Tolksdorf2014-03-131-2/+1
| | | | | | | | | | | | | TreeTransform<...>::RebuildDependentNameType Apparently the FIXME was overlooked when the source location information was made available to the function. Reviewed By: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D3058 llvm-svn: 203845
OpenPOWER on IntegriCloud