1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
Commit Graph

2297 Commits

Author SHA1 Message Date
Alkis Evlogimenos
2c463a8a99 Add constructors that take a BasicBlock to append to, to the rest of
the llvm::Instruction hierarchy.

llvm-svn: 13800
2004-05-27 00:15:23 +00:00
Alkis Evlogimenos
bf27c54995 Inline trivial constructors.
llvm-svn: 13797
2004-05-26 22:07:18 +00:00
Reid Spencer
9a0451787d Provide the correct patch for bug 345. The solution is to add a setTypeName
function to llvmAsmParser.y and then use it in the one place in the grammar
that needs it. Also had to make Type::setName public because setTypeName
needs it in order to retain compatibility with setValueName.

llvm-svn: 13795
2004-05-26 21:48:31 +00:00
Reid Spencer
e4f0ec88eb Tighten up checking on SymbolTable interface to make it illegal to pass a
Type* where a Value* is expected.

llvm-svn: 13794
2004-05-26 21:46:18 +00:00
Alkis Evlogimenos
edff018f18 Refactor common initialization code in private init() functions.
This is a first step in supplying append to basic block constructors
for all instruction types.

llvm-svn: 13793
2004-05-26 21:41:09 +00:00
Misha Brukman
d6ce85d48c Fix spelling of doxygen directive.
llvm-svn: 13791
2004-05-26 17:42:51 +00:00
Reid Spencer
dccf1747a1 Part of bug 122:
This change removes the BuildBytecodeInfo flag from the SlotCalculator
class. This flag was needed to distinguish between the Bytecode/Writer
and the AsmWriter. Now that AsmWriter doesn't use SlotCalculator, we can
remove this flag and simplify some code. Also, some minor name changes
to CachedWriter.h needed to be committed (missed in previous commit).

llvm-svn: 13785
2004-05-26 07:37:11 +00:00
Reid Spencer
8e6d7148c1 Make the constructor explicit so we can't implicitly convert bool to
SlotTable.

llvm-svn: 13766
2004-05-25 19:09:25 +00:00
Reid Spencer
92adcaf58c Adding the initial implementation of the SlotTable class. This class is
the Abstract Data Type that holds slot number values and associates them
with Type* and Value*. The SlotTable is simply the holder of the slot
numbers and provides a controlled interface for building the table. It does
not enforce any particular idiom or functionality for manipulating the slot
numbers.

This is part of bug_122. The SlotCalculator and SlotMachine classes will
follow.

llvm-svn: 13764
2004-05-25 18:44:51 +00:00
Reid Spencer
122d536042 Removed unused, useless header file.
llvm-svn: 13757
2004-05-25 17:28:35 +00:00
Reid Spencer
495ac831bb Give Type its own dump() method in preparation for Type != Value.
llvm-svn: 13746
2004-05-25 08:46:04 +00:00
Reid Spencer
987a052f3a Completely rewrote the class. SymbolTable now separates Type* from Value* in preparation\
for making Type not derive from Value. There are now separate interfaces \
for looking up, finding, and inserting Types and Values. There are also \
three separate iterator interfaces, one for type planes, one for the types \
(type type plane), and one for values within a type plane. See the \
documentation in the Header file.

llvm-svn: 13745
2004-05-25 08:45:53 +00:00
Reid Spencer
33a58c0a10 Convert dump() method to call Type::dump() instead of Value::dump().
llvm-svn: 13744
2004-05-25 08:45:42 +00:00
Chris Lattner
0185a86e38 Add some helpers
llvm-svn: 13737
2004-05-25 05:32:13 +00:00
Tanya Lattner
7cf16701f7 Moved MachineBasicBlock deconstructor to cpp file and removed it from LeakDetector to fix memory leak bug.
llvm-svn: 13718
2004-05-24 07:14:35 +00:00
Tanya Lattner
aabaaec037 Added MachineFunction parent* to MachineBasicBlock. Customized ilist template
to set the parent when a MachineBasicBlock is added to a MachineFunction.

llvm-svn: 13716
2004-05-24 06:11:51 +00:00
Tanya Lattner
55477a5af1 Changed clone to be const.
Changed copy constructor to set parent, prev, and next pointers to null.

llvm-svn: 13706
2004-05-24 03:14:18 +00:00
Chris Lattner
a65df8b576 Add the new GC intrinsics
llvm-svn: 13686
2004-05-23 21:16:33 +00:00
Chris Lattner
f9d9fd95bd Add a new prototype
llvm-svn: 13685
2004-05-23 21:16:13 +00:00
Chris Lattner
bdc2cf6dec Several *major* changes to the AA interfaces:
1. Provide interfaces so that clients can update alias analyses to reflect
   the changes made by the transformations.
2. Change how alias analysis implementations work overall.  In particular,
   now clients will automatically forward to chained AA implementations: they
   don't have to remember to do it themselves.

llvm-svn: 13678
2004-05-23 21:12:38 +00:00
Chris Lattner
fe63a87a98 Add interfaces to update value numbering results
llvm-svn: 13677
2004-05-23 21:11:17 +00:00
Chris Lattner
0588bd19d2 Rename a method
llvm-svn: 13676
2004-05-23 21:10:58 +00:00
Tanya Lattner
e755fc6689 Fixed up my changes to add support for cloning Machine Instructions.
llvm-svn: 13665
2004-05-23 20:58:02 +00:00
Alkis Evlogimenos
b8938f3fec Remove virtual destructor from InstVisitor. This class should never be
used through a base pointer/reference so inproper destruction should
never be an issue. Removing this last virtual function also saves 4
bytes off each InstVisitor instance.

llvm-svn: 13664
2004-05-23 20:54:39 +00:00
Tanya Lattner
2848065a29 Adding support to clone MachineInstr
llvm-svn: 13661
2004-05-23 19:35:12 +00:00
Vikram S. Adve
35a7240e8a Remember the set of leaders. Also compute on demand and cache the equiv
class for each leader.   Finally, rename Elem2ECLeaderMap to Elem2LeaderMap
(most of the changed lines are only due to the latter).

llvm-svn: 13651
2004-05-23 08:05:14 +00:00
Vikram S. Adve
f4fed4aaa2 Add getCaller() method.
llvm-svn: 13650
2004-05-23 08:02:45 +00:00
Vikram S. Adve
893c53a559 Fix size/offset assertion to allow negative offsets and folded nodes.
llvm-svn: 13644
2004-05-23 07:34:53 +00:00
Brian Gaeke
f00f4ca846 Fix a typo in the head-of-file comment.
Rewrite the comments about the different versions of BuildMI, to
better emphasize their differences.

llvm-svn: 13642
2004-05-23 05:04:00 +00:00
Chris Lattner
628e839194 It's not clear to me whether the old version was correct C++ code, but in
any case it's not portable.

llvm-svn: 13621
2004-05-21 18:38:16 +00:00
Chris Lattner
068c3a1858 Starting an identifier with an _ is not legal C/C++ code.
llvm-svn: 13620
2004-05-21 18:37:13 +00:00
Alkis Evlogimenos
fd3b0971bf Declare function defined in namespace llvm as gcc-3.4 doesn't accept a definition in a namespace of a non-declared function.
llvm-svn: 13602
2004-05-19 19:17:48 +00:00
Misha Brukman
eb2d4f5589 Minor aesthetic alignments; no functional changes.
llvm-svn: 13593
2004-05-17 22:28:21 +00:00
Misha Brukman
d32edbdc09 * Minor aesthetic alignment of iterator declarations
* Removed redundant function comments

llvm-svn: 13592
2004-05-17 22:25:12 +00:00
Brian Gaeke
6e9dd8d3cc Define erase forwarding method on traces
llvm-svn: 13591
2004-05-17 21:17:21 +00:00
Brian Gaeke
b964085c4c Fix a comment.
llvm-svn: 13518
2004-05-12 21:57:23 +00:00
Brian Gaeke
0315644cd7 Add a NextMBBNumber field w/ incrementing accessor method, for
function-level unique numbering of MBBs.

llvm-svn: 13513
2004-05-12 21:35:21 +00:00
Brian Gaeke
a0d9f814da Add a Number field w/ accessor method, for function-level unique numbering
of MBBs.

Add non-const MachineBasicBlock::getParent() accessor method.

llvm-svn: 13512
2004-05-12 21:35:20 +00:00
Chris Lattner
337ea7709a Add support for inserting all prototypes up-front
llvm-svn: 13431
2004-05-09 04:29:49 +00:00
Tanya Lattner
c69bb49340 Fixed up sched graph.
llvm-svn: 13428
2004-05-08 16:14:24 +00:00
Tanya Lattner
9b4ee61855 Registering the ModuloScheduling pass.
llvm-svn: 13427
2004-05-08 16:14:02 +00:00
Tanya Lattner
f97f4f8760 Changed CPUResource to allow access to max num users for a resource.
Also added ModuloScheduling as a friend.

llvm-svn: 13426
2004-05-08 16:13:26 +00:00
Chris Lattner
49980050b5 Add the enum corresponding to the source change I made earlier
llvm-svn: 13395
2004-05-07 02:27:32 +00:00
Alkis Evlogimenos
6345ab33dd Fix for gcc3.4: invalid use of forward delacred class on line 93
llvm-svn: 13370
2004-05-06 02:07:42 +00:00
Brian Gaeke
dfe0d9af07 Move the stuff that fixes the size, orientation & fonts of graphs to
the debugging functions that call "dot". These fixed settings have
various problems: for example, the fixed size that is set in the graph
traits classes is not appropriate for turning the dot file into a PNG,
and if TrueType font rendering is being used, the 'Courier' TrueType font
may not be installed. It seems easy enough to specify these things on the
command line, anyhow.

llvm-svn: 13366
2004-05-05 06:10:06 +00:00
Brian Gaeke
2165451812 Apply simplification suggested by Chris: why assign() when operator = will do?
llvm-svn: 13364
2004-05-04 22:02:41 +00:00
Brian Gaeke
ba26360c7e Add "Args" optional argument to AbstractInterpreter factory methods, which
fills in a ToolArgs vector in the AbstractInterpreter if it is set. This
ToolArgs vector is used to pass additional arguments to LLI and/or LLC.
This is intended to address Bug 40.

Also, make -debug-only=toolrunner work for the LLC and CBE
AbstractInterpreters.

llvm-svn: 13356
2004-05-04 21:09:01 +00:00
Misha Brukman
4d6a3d4e1e Provide visit(Module&) and visitModule(Module&) functionality.
llvm-svn: 13353
2004-05-04 18:30:38 +00:00
Brian Gaeke
e9fab81769 Add BBTrace accessor method and data member.
llvm-svn: 13351
2004-05-04 17:11:13 +00:00
Brian Gaeke
c9d203e3d2 New header file containing profile info enums shared between the C++ analysis
libraries and the C runtime support library

llvm-svn: 13347
2004-05-04 16:57:57 +00:00