Commit Graph

12929 Commits

Author SHA1 Message Date
Chris Lattner
9e183d06a6 Delete the allocate*TargetMachine function, which is now dead .
llvm-svn: 14755
2004-07-11 04:16:31 +00:00
Chris Lattner
2ea95d837e Delete the allocate*TargetMachine functions. Move options to a header file
that makes sense.

llvm-svn: 14754
2004-07-11 04:15:52 +00:00
Chris Lattner
4cfce6dea3 Prune unused #include
llvm-svn: 14753
2004-07-11 04:05:32 +00:00
Chris Lattner
0171aec781 Goodbye macro hell, hello nice clean and simple code. This also gives llc
the ability to dynamically load and use targets that are not linked into it
statically.  e.g.:

  llc -load libparisc.so -march=parisc foo.bc -o foo.s

llvm-svn: 14751
2004-07-11 04:03:24 +00:00
Chris Lattner
6bbbf294d1 Goodbye macro hell, hello nice clean simple extensible code. This change
also gives the JIT the ability to dynamically load targets. e.g.

lli -load libparisc.so -march=parisc foo.bc

llvm-svn: 14750
2004-07-11 04:02:06 +00:00
Chris Lattner
646bc16b63 Implement a couple of methods that TargetMachineRegistry now provides. See,
I told you this file wasn't useless :)

llvm-svn: 14749
2004-07-11 04:00:19 +00:00
Chris Lattner
2a79beb587 Add a new TargetNameParser class, which is useful for parsing options.
Add two methods which are useful for autoselecting targets.

llvm-svn: 14748
2004-07-11 03:59:46 +00:00
Chris Lattner
b67e3b01bc Make these format a bit nicer
llvm-svn: 14747
2004-07-11 03:27:42 +00:00
Chris Lattner
3f154d5c7c Provide better support for pointer-valued command line arguments
llvm-svn: 14746
2004-07-11 03:18:30 +00:00
Chris Lattner
2ada866a78 Auto-registrate target
llvm-svn: 14745
2004-07-11 02:48:49 +00:00
Chris Lattner
164659f141 Add compilability
llvm-svn: 14744
2004-07-11 02:48:28 +00:00
Chris Lattner
3c3babb91d Initial impl of this file. Yes this is pretty useless right now, but it
will grow in time.

llvm-svn: 14743
2004-07-11 02:44:26 +00:00
Chris Lattner
195638502a First cut at TargetMachineRegistry and RegisterTarget classes
llvm-svn: 14742
2004-07-11 02:43:43 +00:00
Chris Lattner
8b4d801eab Add two new "virtual static" methods to the TargetMachine class
llvm-svn: 14741
2004-07-11 02:43:07 +00:00
Chris Lattner
9e43df4c37 Add -load option
llvm-svn: 14740
2004-07-11 01:08:19 +00:00
Chris Lattner
b90bdf1f41 Add a -load option
llvm-svn: 14739
2004-07-11 01:06:59 +00:00
Chris Lattner
20b8801a35 Implicitly getting a new option by linking to support.o instead of support.a
is a bad idea.  Make tools that want the option #include PluginSupport.h
explicitly.

llvm-svn: 14738
2004-07-11 01:04:33 +00:00
Chris Lattner
55cd4a8b7b Add a new header
llvm-svn: 14737
2004-07-11 01:03:57 +00:00
Reid Spencer
8de1b8ba76 - Correct grammar of -s description
- Normalize -s option specification

llvm-svn: 14736
2004-07-10 23:41:08 +00:00
Reid Spencer
d0e85de976 Group the hidden command line arguments.
Make the -s option actually work and default to the right value.

llvm-svn: 14735
2004-07-10 23:35:46 +00:00
Chris Lattner
d0336e8c9f Add link to the stkrc page
llvm-svn: 14734
2004-07-10 21:43:12 +00:00
Reid Spencer
ba62dcb2ed Command Guide for the Stacker language compiler, stkrc.
llvm-svn: 14733
2004-07-10 20:04:02 +00:00
Reid Spencer
d45c27da89 Replace use of defunct Type::setName method with SymbolTable::insert.
Patch found and provided by Vladimir Merzliakov. Thanks Vladimir!

llvm-svn: 14732
2004-07-10 16:37:42 +00:00
Reid Spencer
27a5454cf0 Make the VBRSavings percentage make sense (as a fraction of the total
expanded size instead of the file size). Thanks Chris.

llvm-svn: 14731
2004-07-10 08:04:13 +00:00
Chris Lattner
3732a0d0db Minor cleanups:
* Mention the --help and --help-hidden options
 * Don't say program when we really mean any old bytecode file
 * Add a link to the man pages
 * Move analyze down in the list, as it's not as important as the rest

llvm-svn: 14730
2004-07-10 06:06:56 +00:00
Reid Spencer
20dc3903a6 Error Handling Cleanup:
- get rid of PARSE_ERROR macro
- add error(std::string) function
- use error(std::string) for all errors
- make input dependent asserts call error(std::string) instead
- ensure asserts are only for logic bugs, not input discrepancies.

llvm-svn: 14729
2004-07-09 22:21:33 +00:00
Reid Spencer
d38042c423 Fix a backwards compatibility bug found by Tanya. In version 1.2, the
global type plane starts with a length and the TypeTyID value to identify
the type plane has having type definitions. This doesn't happen in 1.3
because the types are read from a known position in the file. However, the
TypeTyID must be read in (and ignored) if its a 1.2 bytecode file.

llvm-svn: 14728
2004-07-09 21:13:53 +00:00
Chris Lattner
a46346890c Removed unneeded forward decl
llvm-svn: 14727
2004-07-09 17:02:57 +00:00
Chris Lattner
d3f73edc53 Remove unused method
llvm-svn: 14726
2004-07-09 16:48:13 +00:00
Chris Lattner
456583c52c Add checks to ensure that there are no unreachable blocks in the function
llvm-svn: 14725
2004-07-09 16:44:37 +00:00
Chris Lattner
75bbce2fdb Don't call Type::setName()
llvm-svn: 14724
2004-07-09 16:43:55 +00:00
Misha Brukman
f8f753f04b * Add support for indexing into structures, thanks to Chris (x86)
The large diff is because of indentation of a whole region
* Fix querying predecessor blocks in SelectPHINodes(), thanks to Brian (v8)
* Add support for external functions malloc() and free()
* Fix some code indentation

Remember, kids: It's not plagiarism if you "creatively borrow" from your
sources.  It's called "research"!

llvm-svn: 14723
2004-07-09 15:45:07 +00:00
Misha Brukman
1881beb0b3 Read/write the offset value for stack-relative loads via correct instr operand.
llvm-svn: 14722
2004-07-09 15:37:16 +00:00
Misha Brukman
abbe59490b * Doxygenify comments
* Fix spacing, grammar in comment
* Make code layout consistent
* Wrap code at 80 cols
* Delete spurious blank lines

No functional changes.

llvm-svn: 14721
2004-07-09 14:45:17 +00:00
Alkis Evlogimenos
d8e8396e33 Fix typo.
llvm-svn: 14720
2004-07-09 11:25:27 +00:00
Alkis Evlogimenos
57839c592a Improve code comments.
llvm-svn: 14719
2004-07-09 11:10:00 +00:00
Chris Lattner
81452531cc No really, he did finish!
llvm-svn: 14717
2004-07-09 06:58:43 +00:00
Chris Lattner
082a11d719 Too much of a title for it's own good
llvm-svn: 14716
2004-07-09 05:05:39 +00:00
Chris Lattner
baa8ac1880 Fix Validation bugs
llvm-svn: 14715
2004-07-09 05:03:54 +00:00
Chris Lattner
235331d922 Eliminate the UID field in the Type class, bringing it down to 28 bytes.
llvm-svn: 14709
2004-07-08 22:31:37 +00:00
Chris Lattner
ef1e8119ec The uid mapping is no more
llvm-svn: 14708
2004-07-08 22:31:09 +00:00
Chris Lattner
2d48ef104b Eliminate uses of the UniqueID field on Type objects
llvm-svn: 14707
2004-07-08 22:30:50 +00:00
Chris Lattner
0939a316d6 Do not call Type::getUniqueID
llvm-svn: 14706
2004-07-08 22:09:34 +00:00
Chris Lattner
c03416c90a Add a new method
llvm-svn: 14705
2004-07-08 22:09:07 +00:00
Reid Spencer
abd8f7a30f Get rid of some cruft in the insert method.
llvm-svn: 14704
2004-07-08 21:50:33 +00:00
Misha Brukman
b83ace891d Add support for __fixdfdi(), __floatdisf(), and __floatdidf() external functions
llvm-svn: 14703
2004-07-08 19:41:16 +00:00
Reid Spencer
6996ff8254 First version of a vector with uniqueness constraints (or a set with
deterministic, insertion-order iteration).

llvm-svn: 14702
2004-07-08 19:36:21 +00:00
Misha Brukman
db4cddea8d * Use several Function* for external functions instead of a std::map
* Non-const FP values must be loaded into int regs (for vararg fns) via memory

llvm-svn: 14701
2004-07-08 18:27:59 +00:00
Misha Brukman
869f2b7219 * Add support for loading FP constants from the constant pool
* Load FP values into int regs as well for vararg functions; without memory ops!

llvm-svn: 14700
2004-07-08 18:02:38 +00:00
Misha Brukman
3bbd3cd1de * Fix header comment, excise references to X86
* Add suport for printing out references to constant pool indices

llvm-svn: 14699
2004-07-08 17:58:04 +00:00