summaryrefslogtreecommitdiffstats
path: root/llvm/utils
Commit message (Collapse)AuthorAgeFilesLines
* Do not generate by TableGen the hard-coded standard, target-independent part ofRoman Levenstein2008-05-141-140/+3
| | | | | | | | | | | | | | | DAG instruction selectors. Introudce a dedicated header file for this part: include/llvm/CodeGen/DAGISelHeader.h TableGen now only generates the include preprocessor directive to include this new header. This is a preparation for supporting multiple implementations of instruction selectors in the future. Reviewed and approved by Evan and Dan. llvm-svn: 51102
* Filter option names to escape symbols not allowed as C++ identifiers.Mikhail Glushenkov2008-05-121-5/+22
| | | | | | | Makes it possible to use options with names like "Wa,". Also fixes the -Wall option handling as a side-effect. llvm-svn: 50973
* Reapply 50867: A small refactoring (extract method) + some comment fixes.Mikhail Glushenkov2008-05-091-54/+64
| | | | | | Fixed the build breakage, sorry for that. llvm-svn: 50895
* Revertin 50867 since it was breaking the build.Tanya Lattner2008-05-081-62/+52
| | | | llvm-svn: 50871
* A small refactoring (extract method) + some comment fixes.Mikhail Glushenkov2008-05-081-52/+62
| | | | llvm-svn: 50867
* Use Doxygen-style comments.Mikhail Glushenkov2008-05-072-63/+84
| | | | llvm-svn: 50833
* Change from llvm::SmallSet<std::string> to llvm::StringMap<char>.Mikhail Glushenkov2008-05-061-2/+1
| | | | llvm-svn: 50766
* Add new edge property combinator: weight.Mikhail Glushenkov2008-05-061-55/+85
| | | | llvm-svn: 50765
* Use edge weights to choose the right linker based on input language names.Mikhail Glushenkov2008-05-061-25/+49
| | | | llvm-svn: 50759
* Add weights to graph edges. Choose between edges based on their weight.Mikhail Glushenkov2008-05-061-14/+9
| | | | llvm-svn: 50757
* Remove the UnpackValues() function.Mikhail Glushenkov2008-05-061-3/+3
| | | | llvm-svn: 50756
* Add a --linker command-line option, make all tests pass.Mikhail Glushenkov2008-05-061-5/+6
| | | | llvm-svn: 50755
* Naming fix: LLVMCCConfigurationEmitter -> LLVMCConfigurationEmitter.Mikhail Glushenkov2008-05-063-13/+13
| | | | llvm-svn: 50754
* Rename LLVMCCConfigurationEmitter to LLVMCConfigurationEmitterMikhail Glushenkov2008-05-063-6/+6
| | | | llvm-svn: 50748
* Add output redirection, rename namespace llvmcc to namespace llvmc.Mikhail Glushenkov2008-05-061-5/+5
| | | | llvm-svn: 50746
* Small output formatting fix.Mikhail Glushenkov2008-05-061-1/+1
| | | | llvm-svn: 50739
* Add inward edge counters to Nodes; Associate JoinLists with JoinTools.Mikhail Glushenkov2008-05-061-2/+6
| | | | llvm-svn: 50738
* Return const char* instead of std::string in Tool classesMikhail Glushenkov2008-05-061-4/+4
| | | | llvm-svn: 50733
* Refactoring: extract method.Mikhail Glushenkov2008-05-061-38/+58
| | | | llvm-svn: 50731
* Add new edge properties: parameter_equals, element_in_list, and.Mikhail Glushenkov2008-05-061-22/+71
| | | | llvm-svn: 50730
* Implemented switch_on edge property.Mikhail Glushenkov2008-05-061-16/+53
| | | | llvm-svn: 50729
* More work on edge properties. Use Edge classes instead of strings in ↵Mikhail Glushenkov2008-05-061-8/+32
| | | | | | CompilationGraph. llvm-svn: 50726
* Ongoing work: add an edge typechecker, rudimentary support for edge properties.Mikhail Glushenkov2008-05-061-27/+72
| | | | llvm-svn: 50725
* Convert internal representation to use DAG. This gives us more flexibility ↵Mikhail Glushenkov2008-05-061-27/+39
| | | | | | and enables future improvements. llvm-svn: 50724
* Code reorgMikhail Glushenkov2008-05-061-2/+2
| | | | llvm-svn: 50722
* Remove tar ball from installed directory.Bill Wendling2008-05-061-0/+5
| | | | llvm-svn: 50717
* Added support for:Bill Wendling2008-04-271-7/+20
| | | | | | | | | | | | - defm and multiclass - imbricatable multiline C style comment - FIXME/TODO highlight in comment - binary and hexadecimal number - code using [{ }] is no highlighted as special (perhaps not the best choice) Patch by Cedric Venet! llvm-svn: 50319
* Apple GCC 4.2 builds things differently. It no longer spawns a bunch ofBill Wendling2008-04-151-4/+33
| | | | | | processes, but requires the project to use -j. llvm-svn: 49744
* VisualStudio project files updated. #include <algorithm> added to make ↵Chuck Rose III2008-04-151-0/+1
| | | | | | VisualStudio happy. Also had to undefine setjmp because of #include <csetjmp> turning setjmp into _setjmp in VisualStudio. llvm-svn: 49743
* Sort sub-registers and super-registers lists according to super-sub register ↵Evan Cheng2008-04-151-2/+27
| | | | | | relations. e.g. X86::RAX sub-register list is EAX, AX, AL, AH (order of last two are not guaranteed). llvm-svn: 49714
* Install into the directoryBill Wendling2008-04-151-2/+4
| | | | llvm-svn: 49713
* Change llvm tools install location.Devang Patel2008-04-111-8/+8
| | | | llvm-svn: 49540
* produce an error on invalid input instead of asserting:Chris Lattner2008-04-101-0/+5
| | | | | | | def : Pat<((v2f64 (vector_shuffle immAllZerosV_bc, ^ llvm-svn: 49462
* Fix a bug where an incorrect bit mask would be generated if a target's last asmNate Begeman2008-04-091-1/+1
| | | | | | | string began at a power of 2 in the string index. For example, if "ret" started at position 16, the ret instruction would be assigned code 16, but the mask would be AsmChars[] + Code & 15, not Code & 31. llvm-svn: 49433
* Fix generation of multi-stage instruction itineraries. Patch byChris Lattner2008-04-061-2/+5
| | | | | | giuma.cordes@gmail.com llvm-svn: 49276
* Move instruction flag inference out of InstrInfoEmitter and intoDan Gohman2008-04-038-152/+163
| | | | | | | | | | | | CodeGenDAGPatterns, where it can be used in other tablegen backends. This allows the inference to be done for DAGISelEmitter so that it gets accurate mayLoad/mayStore/isSimpleLoad flags. This brings MemOperand functionality back to where it was before 48329. However, it doesn't solve the problem of anonymous patterns which expand to code that does loads or stores. llvm-svn: 49123
* Add new CC lowering rule: provide a list of registers, which can be 'shadowed',Anton Korobeynikov2008-04-021-0/+42
| | | | | | | when some another register is used for argument passing. Currently is used on Win64. llvm-svn: 49079
* Change the MemoryBuffer::getFile* methods to take just a pointer to theChris Lattner2008-04-012-4/+3
| | | | | | | | start of a filename, not a filename+length. All clients can produce a null terminated name, and the system api's require null terminated strings anyway. llvm-svn: 49041
* Simplify the conversion from "0x" numbers to a single digit number.Bill Wendling2008-03-281-17/+1
| | | | llvm-svn: 48907
* Fix build breakage on Windows with GCC 4.3. References bug #2176.Mikhail Glushenkov2008-03-271-1/+1
| | | | llvm-svn: 48874
* Add explicit keywords.Dan Gohman2008-03-253-11/+12
| | | | llvm-svn: 48801
* A quick nm audit turned up several fixed tables and objects that wereDan Gohman2008-03-251-3/+3
| | | | | | | marked read-write. Use const so that they can be allocated in a read-only segment. llvm-svn: 48800
* Add first proof-of-concept universal compiler driver framework basedAnton Korobeynikov2008-03-233-1/+973
| | | | | | | | | on ideas mentioned in PR686. Written by Mikhail Glushenkov and contributed by Codedgers, Inc. Old llvmc will be removed soon after new one will have all its properties. llvm-svn: 48699
* Don't strip things when we're doing a debug build.Bill Wendling2008-03-221-3/+5
| | | | llvm-svn: 48696
* Introduce a new node for holding call argumentDuncan Sands2008-03-211-4/+4
| | | | | | | | | | | | | | | | | flags. This is needed by the new legalize types infrastructure which wants to expand the 64 bit constants previously used to hold the flags on 32 bit machines. There are two functional changes: (1) in LowerArguments, if a parameter has the zext attribute set then that is marked in the flags; before it was being ignored; (2) PPC had some bogus code for handling two word arguments when using the ELF 32 ABI, which was hard to convert because of the bogusness. As suggested by the original author (Nicolas Geoffray), I've disabled it for the moment. Tested with "make check" and the Ada ACATS testsuite. llvm-svn: 48640
* detabify llvm, patch by Mike Stump!Chris Lattner2008-03-201-3/+3
| | | | llvm-svn: 48577
* Add support for escaping {} in asm strings, based on patch from Nick Burns.Nate Begeman2008-03-171-1/+18
| | | | llvm-svn: 48450
* Make insert_subreg a two-address instruction, vastly simplifying ↵Christopher Lamb2008-03-163-5/+16
| | | | | | LowerSubregs pass. Add a new TII, subreg_to_reg, which is like insert_subreg except that it takes an immediate implicit value to insert into rather than a register. llvm-svn: 48412
* Remove isImplicitDef TargetInstrDesc flag.Evan Cheng2008-03-153-3/+0
| | | | llvm-svn: 48381
* Replace all target specific implicit def instructions with a target ↵Evan Cheng2008-03-155-7/+27
| | | | | | independent one: TargetInstrInfo::IMPLICIT_DEF. llvm-svn: 48380
OpenPOWER on IntegriCloud