summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Work around apparent Apple compiler bug which was making all mangledBrian Gaeke2004-07-061-2/+2
| | | | | | names start with l0_. llvm-svn: 14651
* PunctuateChris Lattner2004-07-061-1/+1
| | | | llvm-svn: 14650
* Check to make sure types are sized before calling getTypeSize on them.Chris Lattner2004-07-061-13/+15
| | | | llvm-svn: 14649
* It doesn't matter what the 2nd operand is; if the GEP has 2 operands andBrian Gaeke2004-07-061-2/+1
| | | | | | the first is a zero, we should leave it alone. llvm-svn: 14648
* Add helper function.Brian Gaeke2004-07-061-2/+14
| | | | | | | Don't touch GEPs for which DecomposeArrayRef is not going to do anything special (e.g., < 2 indices, or 2 indices and the last one is a constant.) llvm-svn: 14647
* Find bugs sooner rather than later. In this case, don't allow the creationChris Lattner2004-07-062-11/+8
| | | | | | of instructions that don't have a first-class or void type. llvm-svn: 14646
* Change the "rotate by 90" xtics specification to just "rotate" which isReid Spencer2004-07-061-7/+7
| | | | | | | | equivalent. The "by <angle>" syntax is not acceptable for all output devices. Apparently the Sparc and x86 output devices (no color) don't accept this, but should accept the plain "rotate". llvm-svn: 14645
* Do not crash when joining two intervals of registers of differentAlkis Evlogimenos2004-07-061-1/+10
| | | | | | | classes: just ignore that move. Thanks to Vladimir Prus who found the bug! llvm-svn: 14644
* * Add utility functions: convert SetCC => PPC opcode and invert PPC opcodeMisha Brukman2004-07-062-68/+98
| | | | | | | | | * If SetCondInst is folded into BranchInst (and it is the only user), do not emit code for SetCondInst * Fix assembly opcodes in comments in visitSetCondInst() * Fix codegen of conditional branches llvm-svn: 14643
* Implement rem.ll:test3Chris Lattner2004-07-061-0/+18
| | | | llvm-svn: 14640
* New testcaseChris Lattner2004-07-061-0/+6
| | | | llvm-svn: 14639
* Fix a minor bug where we would go into infinite loops on some constantsChris Lattner2004-07-061-1/+2
| | | | llvm-svn: 14638
* Implement InstCombine/sub.ll:test15: X % -Y === X % YChris Lattner2004-07-061-2/+9
| | | | | | | Also, remove X % -1 = 0, because it's not true for unsigneds, and the signed case is superceeded by this new handling. llvm-svn: 14637
* New testcaseChris Lattner2004-07-061-0/+5
| | | | llvm-svn: 14636
* Fix a bug in the unreachable block elim pass. Dropping all references on aChris Lattner2004-07-061-4/+11
| | | | | | | | basic block clear()'s all of the operands lists, including phis. This caused removePredecessor to get confused later. Because of this, we just nuke (without prejudice) PHI nodes in unreachable blocks. llvm-svn: 14635
* Remove definition and use of OtherVal enumerator. This just fixes a thinko.Reid Spencer2004-07-062-2/+1
| | | | llvm-svn: 14634
* First draft completed. All sections written.Reid Spencer2004-07-051-116/+312
| | | | llvm-svn: 14633
* Caused the labels on the small plots to be drawn vertically instead ofReid Spencer2004-07-051-0/+28
| | | | | | | | horizontally so they no longer overlap. This eye-strain-lessening patch contributed by Vladimir Merzliakov. Thanks! llvm-svn: 14632
* Added sections for Constant Pool, Module Global Info, and CompactionReid Spencer2004-07-051-38/+280
| | | | | | Tables. Two more sections to go. llvm-svn: 14631
* Add a missing "terminator" :)Chris Lattner2004-07-051-1/+1
| | | | llvm-svn: 14630
* Structures allow only uintChris Lattner2004-07-051-4/+3
| | | | | | arrays allow int/uint/long/ulong llvm-svn: 14629
* - Reorganized the document contentsReid Spencer2004-07-051-207/+468
| | | | | | | | | | | - Provided a "General Layout" section that currently covers just the block structure of the bytecode file. - Wrote the section on the Global Type Pool - Wrote the section on differences between LLVM file format versions. Only five sections left to write! llvm-svn: 14628
* Finalize bytecode dumping. The "handleFinish" method was getting calledReid Spencer2004-07-054-29/+38
| | | | | | | | too soon so the function data was not getting dumped (it was generated after the call handleFinish). Also cleaned up the output format for proper indentation. llvm-svn: 14627
* Correctly compute the ration of iterations/#intervals.Alkis Evlogimenos2004-07-041-2/+6
| | | | llvm-svn: 14626
* Add #includesChris Lattner2004-07-043-0/+3
| | | | llvm-svn: 14625
* Add #include <iostream> since Value.h doesn't include it any more.Reid Spencer2004-07-042-0/+2
| | | | llvm-svn: 14624
* Add #include <iostream> since Value.h does not include it any more.Reid Spencer2004-07-0410-1/+12
| | | | llvm-svn: 14623
* Add #include <iostream> since Value.h does not #include it any more.Reid Spencer2004-07-0454-2/+73
| | | | llvm-svn: 14622
* - remove use of isa<Type>(Val) since there's no inheritance relationshipReid Spencer2004-07-041-4/+3
| | | | | | | any more. Needed for bug 122 - #include <iostream> since Value.h doesn't include it any more. llvm-svn: 14621
* Remove use of Type::TypeTy which is no longer defined. This change neededReid Spencer2004-07-041-1/+1
| | | | | | for bug 122 since the "Type Type" concept is gone now. llvm-svn: 14620
* Correct syntax typo .. ; -> :Reid Spencer2004-07-041-1/+1
| | | | llvm-svn: 14619
* - Changes for bug 122Reid Spencer2004-07-041-21/+46
| | | | | | | | - Remove Tabs - Add inserters needed since Value doesn't implement them any more - Move some functions here to avoid cyclic header file dependencies. llvm-svn: 14618
* - #include <iostream> since its not in Value.h any more.Reid Spencer2004-07-044-0/+4
| | | | llvm-svn: 14617
* Constify SymbolTable's use of Type* so that it never modifies them.Reid Spencer2004-07-041-11/+8
| | | | llvm-svn: 14616
* - #include <iostream> since its not in Value.h any more.Reid Spencer2004-07-041-1/+3
| | | | | | - constify use of Type* returned from symbol table. llvm-svn: 14615
* #include <iostream> since its not in Value.h any more.Reid Spencer2004-07-041-2/+3
| | | | llvm-svn: 14614
* Adjust the slot machine to handle Types separately from Values. This wasReid Spencer2004-07-041-25/+171
| | | | | | | | | done by doubling up the data structures so that Type based equivalents are used. A consequence of this is overloading of function members that take a Type* instead of a Value*. Various other cleanups related to Type != Value (bug 122) were also implemented. llvm-svn: 14613
* Implementation of SlotTable went into header file. Note that this headerReid Spencer2004-07-041-116/+0
| | | | | | | is currently not being used but is retained because it will be the basis for a clean up of the SlotCalculator class. llvm-svn: 14612
* Remove Tabs.Reid Spencer2004-07-041-4/+4
| | | | llvm-svn: 14611
* Implement new output functions for types and compacted type planes. AlsoReid Spencer2004-07-041-51/+68
| | | | | | | remove use of Type::TypeTyID and Type::TypeTy since Type no longer inherits Value. llvm-svn: 14610
* Add new methods outputTypes and outputCompactionTypes for handling TypesReid Spencer2004-07-041-2/+4
| | | | | | separately from Values. This needed for bug 122. llvm-svn: 14609
* For bug 122:Reid Spencer2004-07-042-133/+237
| | | | | | | | | | | Separate Types from Values because Type no longer inherits from Value. The changes for this are too numerous to list. In essence, any data structure that contained a Value was doubled so that Types could be contained similarly. New members include Types, TypeMap, CompactionTypes, and CompactionTypeMap. Functions taking a Value* were overloaded with a variant that takes a Type* that acts on the new data structures. llvm-svn: 14608
* - Type::TypeTyID doesn't exist any more (bug 122)Reid Spencer2004-07-041-5/+1
| | | | | | - Types don't have names any more, just write them on ostream directly llvm-svn: 14606
* Move SlotCalculator.h to lib/Bytecode/Writer since that is the only placeReid Spencer2004-07-041-2/+2
| | | | | | that needs it after the Type != Value changes (bug 122). llvm-svn: 14605
* - Don't use macros to call the BytecodeHandlerReid Spencer2004-07-041-278/+434
| | | | | | | | | | | - Don't use PARSE_ERROR macro unnecessarily (for simple strings) - Add comments before each function - Convert for bug 122 (Type != Value) - Handle new value range on Type::PrimitiveTypeId enumeration by augmenting the reader with a new read_typeid method and sanitizeTypeId method. - Remove BytecodeHandler's default method implementations to header file. llvm-svn: 14604
* Make all the virtual function (except destructor) inline so there areReid Spencer2004-07-041-41/+41
| | | | | | default implementations without taking up a ton of space in a .cpp file. llvm-svn: 14603
* - Make ValueList an "OtherVal" user of Values to ensure it doesn't getReid Spencer2004-07-041-60/+51
| | | | | | | | mistaken for anything else. - Move function descriptions to Reader.cpp file per Chris. - Remove tabs. llvm-svn: 14602
* Remove tabs. Move function declaration to Reader.h where it belongs.Reid Spencer2004-07-041-8/+4
| | | | llvm-svn: 14601
* Add #include <iostream> which is needed now that Value.h doesn't include itReid Spencer2004-07-041-0/+1
| | | | llvm-svn: 14600
* Excise tabs.Reid Spencer2004-07-041-32/+31
| | | | llvm-svn: 14599
OpenPOWER on IntegriCloud