aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Use the appropriate 64-bit register description file.Misha Brukman2004-08-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15922 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed the test to actually run correctly.Reid Spencer2004-08-192-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15921 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a test case test test 1.3 alignment removal and to test a regressionReid Spencer2004-08-192-0/+21089
| | | | | | | | on disassembly speed (where SlotMachine was being recomputed on each getSlot() call). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15920 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix more remaining 32-bit vestiges of PowerPCMisha Brukman2004-08-191-6/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15919 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix another vestige of the 32-bit PowerPC backend.Misha Brukman2004-08-191-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15918 91177308-0d34-0410-b5e6-96231b3b80d8
* Correct character prepended to global symbols ('.'), use Mangler consistentlyMisha Brukman2004-08-191-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15917 91177308-0d34-0410-b5e6-96231b3b80d8
* * Eliminate global base register, r2 is used for that on AIX/PowerPCMisha Brukman2004-08-191-45/+6
| | | | | | | * Fix bug from 32-bit PowerPC days of 2-register long split git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15916 91177308-0d34-0410-b5e6-96231b3b80d8
* Wrap long lines.Misha Brukman2004-08-191-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15915 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert casts that will have no effect into move instructions.Nate Begeman2004-08-191-4/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15914 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up floating point instruction selection.Nate Begeman2004-08-195-121/+44
| | | | | | | | | Change int->float cast code to put conversion constants in constant pool. Shorten code sequence for constant pool fp loads. Remove LOADLoDirect/LOADLoIndirect psuedo instructions and tweak asmwriter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15913 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement many new features for llvmc. This is the first version that willReid Spencer2004-08-1910-450/+726
| | | | | | | actually execute actions and it is been shown to optimize a Stacker program git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15912 91177308-0d34-0410-b5e6-96231b3b80d8
* Instead of int64_t, overload itostr with `long long' parameter.Misha Brukman2004-08-182-16/+14
| | | | | | | This appeases both SparcV9 and 64-bit PowerPC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15910 91177308-0d34-0410-b5e6-96231b3b80d8
* Correct a link, add a TOC entry.Reid Spencer2004-08-181-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15909 91177308-0d34-0410-b5e6-96231b3b80d8
* Provided opcode definitions.Reid Spencer2004-08-181-89/+182
| | | | | | | | | | | | Clarified documentation of symbol tables. Clarified definition of slot numbers. Added the http-equiv meta tag for HTML 4.01 strict compliance. Adjusted line lengths. Differentiated between "type slot" and "value slot" everywhere. ispelled it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15908 91177308-0d34-0410-b5e6-96231b3b80d8
* M_DUMMY_PHI_FLAG is no longer used to distinguish V9::PHI. Get rid of it andBrian Gaeke2004-08-182-7/+1
| | | | | | | its TargetInstrInfo accessor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15907 91177308-0d34-0410-b5e6-96231b3b80d8
* Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.Brian Gaeke2004-08-186-14/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15906 91177308-0d34-0410-b5e6-96231b3b80d8
* Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.Brian Gaeke2004-08-182-6/+6
| | | | | | | Also, squash a use of TargetInstrInfo::isNop(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15905 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert to the new MachineFunctionInfo interfaceChris Lattner2004-08-1810-43/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15904 91177308-0d34-0410-b5e6-96231b3b80d8
* All targets are now allowed to have their own MachineFunctionInfo objects,Chris Lattner2004-08-181-12/+24
| | | | | | | also, make getInfo do some checking and cast to the appropriate concrete type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15903 91177308-0d34-0410-b5e6-96231b3b80d8
* M_PSEUDO_FLAG is no longer used. Get rid of it and its accessor.Brian Gaeke2004-08-181-4/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15902 91177308-0d34-0410-b5e6-96231b3b80d8
* The SparcV9 target no longer uses any pseudoinstructions (SETSW, SETUW,Brian Gaeke2004-08-183-18/+1
| | | | | | | SETX) or M_PSEUDO_FLAG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15901 91177308-0d34-0410-b5e6-96231b3b80d8
* The Create*Const methods don't need to pass around a TargetMachine reference.Brian Gaeke2004-08-181-20/+18
| | | | | | | Other minor cleanups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15900 91177308-0d34-0410-b5e6-96231b3b80d8
* Doxygenify some comments.Brian Gaeke2004-08-181-98/+88
| | | | | | | | | | | | Clean up cpReg2MemMI and cpMem2RegMI, and doxygenify comments. Get rid of their uses of SETSW, which is a pseudoinstruction. We can't JIT-compile pseudoinstructions at the moment. This was blowing up 252.eon/jit, which has some HUGE stack frames. Reduce the uses of constantFitsInImmedField(). Consolidate some assertions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15899 91177308-0d34-0410-b5e6-96231b3b80d8
* Switch V9 over to using the AsmPrinter base class to do its constant printingChris Lattner2004-08-182-505/+91
| | | | | | | Massive thanks to the brg miester for doing the testing. :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15898 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename varChris Lattner2004-08-184-18/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15897 91177308-0d34-0410-b5e6-96231b3b80d8
* Alkis pointed out that this is not a character (we actually support strings)Chris Lattner2004-08-181-3/+3
| | | | | | | and as such, we should use self revealing names. Hey, makes sense to me! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15896 91177308-0d34-0410-b5e6-96231b3b80d8
* new methodChris Lattner2004-08-171-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15895 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for targets without a .zero directiveChris Lattner2004-08-171-4/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15894 91177308-0d34-0410-b5e6-96231b3b80d8
* This file is no longer used.Misha Brukman2004-08-171-30/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15893 91177308-0d34-0410-b5e6-96231b3b80d8
* Start using alignment output routines from AsmPrinter.Chris Lattner2004-08-172-24/+24
| | | | | | | | | Changes to make this more similar to the X86 asmprinter Fix overalignment of globals. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15891 91177308-0d34-0410-b5e6-96231b3b80d8
* Start using alignment output routines from AsmPrinter.Chris Lattner2004-08-171-10/+8
| | | | | | | Changes to make this more similar to the ppc asmprinter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15890 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an overloadChris Lattner2004-08-172-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15889 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for alignmentChris Lattner2004-08-172-2/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15888 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new helper method to get log2(type alignment)Chris Lattner2004-08-171-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15887 91177308-0d34-0410-b5e6-96231b3b80d8
* Add punctuation, add a new methodChris Lattner2004-08-171-2/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15886 91177308-0d34-0410-b5e6-96231b3b80d8
* Add itostr(long) for our furry 64-bit friends.Misha Brukman2004-08-172-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15885 91177308-0d34-0410-b5e6-96231b3b80d8
* Ultra-doxygenify some function header comments.Misha Brukman2004-08-171-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15884 91177308-0d34-0410-b5e6-96231b3b80d8
* Check constant expression validity more strictlyChris Lattner2004-08-171-0/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15883 91177308-0d34-0410-b5e6-96231b3b80d8
* Work around PR424 for old c/c++ frontends.Chris Lattner2004-08-171-3/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15882 91177308-0d34-0410-b5e6-96231b3b80d8
* Print comments with ;Chris Lattner2004-08-172-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15881 91177308-0d34-0410-b5e6-96231b3b80d8
* Use a designated comment character when printing comments.Chris Lattner2004-08-171-9/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15880 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow targets to specify a comment characterChris Lattner2004-08-171-1/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15879 91177308-0d34-0410-b5e6-96231b3b80d8
* Added a *very* initial cut at a lexicon for LLVM. I don't plan to writeReid Spencer2004-08-172-0/+64
| | | | | | | | | this whole thing. Just use the pattern in the file to add entries as you think of them. This will be really helpful for newbies to advanced compiler optimization techniques such as myself. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15878 91177308-0d34-0410-b5e6-96231b3b80d8
* Documented (Java properties file like) syntax of config file formatReid Spencer2004-08-171-72/+185
| | | | | | | | | Added definitions for some of the configuration items. Made the document HTML 4.01 Strict compliant. Ran ispell on it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15877 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a reference to the ComilerDriver documentation.Reid Spencer2004-08-171-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15876 91177308-0d34-0410-b5e6-96231b3b80d8
* Bytecode File Format Changes:Reid Spencer2004-08-174-38/+39
| | | | | | | | | - File format version number bumped to 4 - Writer will now align nothing - Reader now only expects alignment for version 3 or earlier git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15875 91177308-0d34-0410-b5e6-96231b3b80d8
* Documented the removal of alignment in version 4 bytecode files (version 3Reid Spencer2004-08-171-0/+28
| | | | | | | | | was released with LLVM 1.3). Alignment of fields can add severe size to certain kinds of functions (those with lots of long format instructions) so we decided to do away with alignment altogether in this bc version. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15874 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-fix hiding the Frame Pointer from the register allocator in functionsNate Begeman2004-08-173-23/+11
| | | | | | | | | that have a frame pointer. This change fixes Burg. In addition, make the necessary changes to floating point code gen and constant loading after Chris Lattner's fixes to the asm writer. These changes fix MallocBench/gs git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15873 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the AsmPrinter emitGlobalConstant.Chris Lattner2004-08-171-137/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15872 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing \tChris Lattner2004-08-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15871 91177308-0d34-0410-b5e6-96231b3b80d8