summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Do not use 'cpp' directlyChris Lattner2003-07-291-1/+1
| | | | llvm-svn: 7404
* Add namespace specifier, add flags used by the X86 BEChris Lattner2003-07-291-5/+7
| | | | llvm-svn: 7403
* * Cleaned up and corrected comments wrt instruction formatsMisha Brukman2003-07-291-18/+18
| | | | | | * Enabled STXFSR instructions llvm-svn: 7400
* Make emitFarCall() public, and add a few comments to functions.Misha Brukman2003-07-291-3/+27
| | | | llvm-svn: 7399
* Unify all constant evaluations that depend on register sizeVikram S. Adve2003-07-292-72/+104
| | | | | | in ConvertConstantToIntType. llvm-svn: 7395
* Rename 'dump-asm' to 'dump-input' and really print it just before code-gen.Vikram S. Adve2003-07-291-6/+6
| | | | llvm-svn: 7394
* Bug fix: don't unnecessarily pretty-print control-characters, some ofVikram S. Adve2003-07-291-15/+4
| | | | | | which were wrong (particularly, '\a' for '\007'). llvm-svn: 7393
* Add ConvertConstantToIntType() to unify all constant handlingVikram S. Adve2003-07-291-50/+16
| | | | | | | | | that depends on machine register size. Moved insertCallerSavingCode() to PhyRegAlloc and moved isRegVolatile and modifiedByCall to TargetRegInfo: they are all machine independent. Remove several dead functions. llvm-svn: 7392
* Add code to support stack spill/temp offsets that don't fit in theVikram S. Adve2003-07-291-238/+99
| | | | | | | immed. field. Moved insertCallerSavingCode() to PhyRegAlloc: it is now machine independent. Remove all uses of PhyRegAlloc. llvm-svn: 7391
* All constant-evaluation code now unified intoVikram S. Adve2003-07-291-31/+8
| | | | | | TargetInstrInfo::ConvertConstantToIntType(). llvm-svn: 7390
* 1. Bug fix: Don't use branch operand reg. as temp. reg. whenVikram S. Adve2003-07-291-81/+326
| | | | | | | | | | | spilling values used by an instruction in the delay slot of the branch (which will eventually be moved before the branch). 2. Bug fix: Delete the delay slot instr, not the branch instr, when moving delay slot instr. out!!!! 3. Move code to insert caller-saves moved here from SparcRegInfo: it is now machine-independent. llvm-svn: 7389
* Don't require a BB to look-up live variables, unless they may need toVikram S. Adve2003-07-291-9/+10
| | | | | | be recomputed. llvm-svn: 7388
* Add const version of getLiveRangeForValue().Vikram S. Adve2003-07-291-4/+9
| | | | llvm-svn: 7386
* Code to insert caller-saves moved here from SparcRegInfo: it is nowVikram S. Adve2003-07-291-9/+22
| | | | | | | | | machine-independent. Fix problem with using branch operand reg. as temp. reg. when spilling values used by an instruction in the delay slot of the branch (which will eventually be moved before the branch). llvm-svn: 7385
* * Correctly emit a far call if the target address does not fit into 30 bitsMisha Brukman2003-07-291-17/+15
| | | | | | | instead of assert()ing * Fixed a nasty bug where '07' was used instead of register 'o7' llvm-svn: 7382
* * Stop hard-coding a value for beginning of emitted code on Sparc since we canMisha Brukman2003-07-291-10/+6
| | | | | | | | now handle far calls (i.e., beyond the 30-bit limit in call instructions). * As a side-effect, this allows us to unify and clean up the mmap() call and code around it. llvm-svn: 7381
* Move "register flags" definition the type of registers to be fully fledgedChris Lattner2003-07-292-40/+41
| | | | | | value types llvm-svn: 7377
* Add support for Alpha intrinsics, contributed by Rahul JoshiChris Lattner2003-07-282-0/+12
| | | | llvm-svn: 7373
* Add rationale for the MAP_ANONYMOUS vs. MAP_ANON flags.Misha Brukman2003-07-281-0/+1
| | | | llvm-svn: 7368
* The RTLD_GLOBAL flag allows symbols to be globally accessible, which makesMisha Brukman2003-07-281-1/+1
| | | | | | | resolution of symbols in the .so possible (currently assists debugging with bugpoint). llvm-svn: 7366
* Add ability for external C code to get pointers to functions given their name.Misha Brukman2003-07-281-3/+15
| | | | | | | | | This us used by bugpoint -- when code is compiled to a shared object to be JITted, it must use the JIT's lazy resolution method to find function addresses, because some functions will not be available at .so load time, as they are in the bytecode file. llvm-svn: 7363
* Clean up code dealing with RTLD_SELF differences on Sparc and X86.Misha Brukman2003-07-281-5/+5
| | | | llvm-svn: 7362
* Fix reference to architecture.Misha Brukman2003-07-281-1/+1
| | | | llvm-svn: 7361
* Add in support to load shared objects (-load is provided by Support library).Misha Brukman2003-07-281-1/+1
| | | | llvm-svn: 7360
* Specify the value type for the register, not just the size.Chris Lattner2003-07-281-1/+4
| | | | llvm-svn: 7357
* Instead of specifying the SIZE of the register, go so far as to specifyChris Lattner2003-07-281-1/+16
| | | | | | what value type it is. llvm-svn: 7356
* Rename function to be more consistent with filenameChris Lattner2003-07-263-6/+6
| | | | llvm-svn: 7352
* Making this code const-correct would be a pain, so I'll hack it.Chris Lattner2003-07-262-5/+6
| | | | llvm-svn: 7350
* Const correctness fixesChris Lattner2003-07-262-3/+3
| | | | llvm-svn: 7349
* Be const correctChris Lattner2003-07-261-2/+2
| | | | llvm-svn: 7348
* Hrm, another necesary one :(Chris Lattner2003-07-261-0/+1
| | | | llvm-svn: 7347
* We don't modify the LLVM rep, remain const correctChris Lattner2003-07-261-2/+2
| | | | llvm-svn: 7345
* If the pass changes _anything_ it must return trueChris Lattner2003-07-261-1/+2
| | | | llvm-svn: 7344
* This code doesn't modify the LLVM structure, keep stuff constChris Lattner2003-07-263-6/+6
| | | | llvm-svn: 7343
* Remove #includeChris Lattner2003-07-261-1/+0
| | | | llvm-svn: 7342
* Remove extraneous #includesChris Lattner2003-07-262-2/+1
| | | | llvm-svn: 7341
* Fix another minor bugChris Lattner2003-07-261-2/+2
| | | | llvm-svn: 7340
* (1) Major fix to the way unused regs. are marked and found for the FPVikram S. Adve2003-07-254-566/+140
| | | | | | | | | | | | | Single and FP double reg types (which share the same reg class). Now all methods marking/finding unused regs consider the regType within the reg class, and SparcFloatRegClass specializes this code. (2) Remove machine-specific regalloc. methods that are no longer needed. In particular, arguments and return value from a call do not need machine-specific code for allocation. (3) Rename TargetRegInfo::getRegType variants to avoid unintentional overloading when an include file is omitted. llvm-svn: 7334
* 1. Fix a case that was marking the invalid reg. num. (-1) as used,Vikram S. Adve2003-07-251-14/+35
| | | | | | | | causing a nasty array bound error later. 2. Fix silly typo causing logical shift of unsigned long to use SRL instead of SRLX. llvm-svn: 7330
* (1) Change the way unused regs. are marked and found to consider regTypeVikram S. Adve2003-07-254-116/+134
| | | | | | | | | | | info (since multiple reg types may share the same reg class). (2) Remove machine-specific regalloc. methods that are no longer needed. In particular, arguments and return value from a call do not need machine-specific code for allocation. (3) Rename TargetRegInfo::getRegType variants to avoid unintentional overloading when an include file is omitted. llvm-svn: 7329
* Remove unused field. Change the way unused regs. are marked andVikram S. Adve2003-07-251-10/+11
| | | | | | | found to consider regType info (since multiple reg types may share the same reg class, e.g., single and double on Sparc). llvm-svn: 7327
* Dont' try to parse the colonChris Lattner2003-07-251-2/+2
| | | | llvm-svn: 7323
* Add a more general check-flags which can be used to ensure arbitrary flags ↵Chris Lattner2003-07-251-11/+35
| | | | | | are set llvm-svn: 7322
* Include llvm/Support/Mangler.h first. Don't include <iostream>, <set>,Brian Gaeke2003-07-251-5/+1
| | | | | | <string>, or llvm/Value.h. Move up the inclusion of llvm/Support/Mangler.h. llvm-svn: 7321
* Don't include llvm/SlotCalculator.h, or <set>.Brian Gaeke2003-07-251-3/+1
| | | | | | Move up the inclusion of llvm/Support/Mangler.h. llvm-svn: 7320
* Cleanups:Brian Gaeke2003-07-241-4/+5
| | | | | | | | | Mangler.cpp: Constify parameter to makeNameProper, and use const_iterator. Make Count an unsigned int, and use utostr(). Don't name parameters things that start with underscore. Mangler.h: All of the above, and also: Add Emacs mode-line. Include <set>. llvm-svn: 7301
* Factor out name-mangling from X86/Printer, which is derived from CWriter,Brian Gaeke2003-07-241-0/+83
| | | | | | into this new support class. llvm-svn: 7300
* Use unified CWriter-X86/Printer name mangler. Do not bother usingBrian Gaeke2003-07-242-159/+49
| | | | | | | SlotCalculator in CWriter. (Unfortunately, all this means a lot of X86/Printer's methods have to be de-constified again. Oh well.) llvm-svn: 7299
* Instcombine: (A >> c1) << c2 for signed integersChris Lattner2003-07-241-10/+12
| | | | llvm-svn: 7295
* Reorganization of code, no functional changes.Chris Lattner2003-07-241-47/+48
| | | | | | Now it shoudl be a bit more efficient llvm-svn: 7292
OpenPOWER on IntegriCloud