Reid Spencer
fe020a38bc
Implement dependent library processing and search paths for them.
...
llvm-svn: 16287
2004-09-11 04:32:42 +00:00
Reid Spencer
96019262ca
Convert the Emitter to use the lib/System "Memory" interface instead of the
...
old SystemUtils.h interface to allocate RWX blocks of memory.
llvm-svn: 16286
2004-09-11 04:31:03 +00:00
Reid Spencer
0bb062e55d
Add library LLVMsystem.a because the JIT now needs it.
...
llvm-svn: 16285
2004-09-11 04:29:44 +00:00
Reid Spencer
92475489e7
Correct the interface of a function to use the correct typedef for an
...
argument so that it will always compile.
llvm-svn: 16284
2004-09-11 04:29:13 +00:00
Reid Spencer
9cfa81662f
Implement the remove method for deleting entries from the SetVector.
...
llvm-svn: 16283
2004-09-11 04:25:58 +00:00
Reid Spencer
1b34fde1cc
Implement support for dependent libraries. The "source" module's dependent
...
libraries list is merged into the "destination" module's list. Also, if the
source module is one of the dependent libraries, it is removed from the
list.
llvm-svn: 16282
2004-09-11 04:25:17 +00:00
Reid Spencer
14072a3f54
Change interface to use correct typedef so it will always compile.
...
llvm-svn: 16281
2004-09-11 04:22:58 +00:00
Reid Spencer
a529d4eaa7
Make the dependent libraries list use a SetVector instead of a regular
...
vector so that duplicate libraries never occur within a module.
llvm-svn: 16280
2004-09-11 04:22:14 +00:00
Reid Spencer
886fc070d5
Initial commit of a file to declare the interface for platform independent
...
support for various memory allocation operations.
llvm-svn: 16279
2004-09-11 04:20:58 +00:00
Reid Spencer
e88d949c1e
Add methods for detecting file types by magic number, getting the file name
...
suffix for shared objects, and stripping a path down to its base name.
llvm-svn: 16278
2004-09-11 04:19:17 +00:00
Reid Spencer
cf40b4a423
Add methods for detecting different kinds of files by their magic number,
...
getting the suffix for shared objects, and extracting the basename from a
path.
llvm-svn: 16277
2004-09-11 04:18:05 +00:00
Reid Spencer
07e7a5ec18
Use llvm-link to link the .bc with testing.bc. This helps test the new
...
llvm-link dependent libraries feature.
llvm-svn: 16276
2004-09-11 04:15:09 +00:00
Reid Spencer
c90a765368
Print the dependent libraries when dumping bytecode.
...
llvm-svn: 16275
2004-09-11 04:14:07 +00:00
Brian Gaeke
c722311fb5
Update to latest versions of config.guess and config.sub from
...
http://savannah.gnu.org/projects/config
llvm-svn: 16268
2004-09-10 19:20:06 +00:00
Misha Brukman
04bbe6fa25
Renamed file to SparcV8ISelSimple.cpp
...
llvm-svn: 16267
2004-09-10 18:51:12 +00:00
Brian Gaeke
86584749b6
Roll back constant printing changes until the problems with larger
...
programs and C++ can be looked at in detail.
llvm-svn: 16266
2004-09-10 18:01:45 +00:00
Alkis Evlogimenos
cb031d9518
Add assertion descriptiosn on type mismatches when creating
...
ConstantArray and ConstantPacked objects.
llvm-svn: 16261
2004-09-10 04:16:59 +00:00
Misha Brukman
0bc8b12734
Fix broken internal links (one found by seventwentyfour.com spider)
...
llvm-svn: 16260
2004-09-09 20:34:13 +00:00
Alkis Evlogimenos
213e6db9ce
Grow the map on entry so that we don't crash if joinIntervals never
...
runs (if coalescing is disabled for example).
llvm-svn: 16259
2004-09-09 19:24:38 +00:00
Misha Brukman
4657235e36
If updating from CVS gives error "No rule to make target", it's faster to just
...
delete .d files than to rebuild from scratch.
llvm-svn: 16258
2004-09-09 16:36:47 +00:00
Misha Brukman
6e8f860fee
Fix broken link to the 2004 CGO paper.
...
llvm-svn: 16257
2004-09-09 16:18:40 +00:00
Chris Lattner
c8f1d71f1b
Add missing #include
...
llvm-svn: 16256
2004-09-09 02:37:56 +00:00
Brian Gaeke
ee83ff191f
Regenerated, to recognize mingw.
...
llvm-svn: 16255
2004-09-08 20:38:05 +00:00
Brian Gaeke
f8d86008c5
recognize MinGW
...
llvm-svn: 16254
2004-09-08 20:32:11 +00:00
Misha Brukman
17e894523a
Disable libprofile as it breaks the build on Sparc (autoconf issues).
...
llvm-svn: 16253
2004-09-08 20:30:26 +00:00
Misha Brukman
6ea13f679b
Make file comment span the entire line
...
llvm-svn: 16249
2004-09-08 19:48:15 +00:00
Alkis Evlogimenos
371403193c
Use a shorter form to express implicit use/defs in FpGETRESULT and
...
FpSETRESULT.
llvm-svn: 16247
2004-09-08 18:29:31 +00:00
Alkis Evlogimenos
8b700215ed
A call instruction should implicitely define ST0 since the return
...
value is returned in that register. The pseudo instructions
FpGETRESULT and FpSETRESULT shold also have an implicity use and def
of ST0 repsecitvely.
llvm-svn: 16246
2004-09-08 16:54:54 +00:00
Brian Gaeke
acafb39cc3
This file does not need <iostream>, I think.
...
llvm-svn: 16245
2004-09-08 04:10:52 +00:00
Alkis Evlogimenos
adb2ce2962
Use a DenseMap for mapping reg->reg. This improves the LiveInterval
...
analysis running time from 2.7869secs to 2.5226secs on 176.gcc.
llvm-svn: 16244
2004-09-08 03:01:50 +00:00
Brian Gaeke
52a4e667e8
Use libtool, not mklib (which somehow doesn't get generated anymore)
...
llvm-svn: 16243
2004-09-07 19:03:35 +00:00
Reid Spencer
1a2f0432d5
Remove PAPIDIR, per brg
...
llvm-svn: 16240
2004-09-07 18:04:45 +00:00
Reid Spencer
05b9b53b79
bug 352 fixed
...
bug 257 fixed
llvm-svn: 16238
2004-09-07 17:52:38 +00:00
Brian Gaeke
64a0630d72
PAPI check has been moved to projects/reopt.
...
llvm-svn: 16237
2004-09-07 17:35:16 +00:00
Brian Gaeke
6e07318a38
PAPI is not used here.
...
llvm-svn: 16236
2004-09-07 17:34:34 +00:00
Reid Spencer
edd0b5b653
Removed this file as its contents are now in the m4 directory.
...
llvm-svn: 16234
2004-09-07 16:50:22 +00:00
Reid Spencer
ee0a2bee10
Remove variables and tests that were specific to the now defunct
...
test/Programs. These have been moved to llvm-test/autoconf/configure.ac and
llvm-test/Makefile.config.in
llvm-svn: 16231
2004-09-07 16:35:45 +00:00
Reid Spencer
90de7fbb3e
- Handle AC_CONFIG_SUBDIRS properly for existing "well known" projects
...
while still retaining the ability to configure unknown ones.
- Excise crud left over from when test/Projects was still part of the main
LLVM module. These removed tests are now all in
llvm-test/autoconf/configure.ac
llvm-svn: 16230
2004-09-07 16:26:18 +00:00
Reid Spencer
d7eeb3ae28
- Perform all validity checks before doing anything.
...
- Use the -I parameter to aclocal to tell it where the autoconf/m4
directory is located so it can find needed autoconf functions
llvm-svn: 16225
2004-09-07 16:00:48 +00:00
Reid Spencer
8118dba3e6
move AC_FUNC_ISINF and AC_FUNC_ISNAN to their own files.
...
llvm-svn: 16224
2004-09-07 14:23:53 +00:00
Reid Spencer
b15e69a09b
Individual autoconf function broken out of acincludes.m4. This change
...
per the recommended style guide for autoconf and so that individual
autoconf functions can more easily be shared across projects.
llvm-svn: 16223
2004-09-07 06:56:14 +00:00
Misha Brukman
33427efbe6
This is the documentation style sheet, not the one for the website.
...
llvm-svn: 16222
2004-09-07 05:09:22 +00:00
Misha Brukman
125255b9f6
Remove extraneous blank lines.
...
llvm-svn: 16205
2004-09-06 23:00:30 +00:00
Misha Brukman
a0194211d7
Add link to new howto on writing backends.
...
llvm-svn: 16204
2004-09-06 23:00:01 +00:00
Misha Brukman
25e6361939
How to write an LLVM backend, first draft.
...
llvm-svn: 16203
2004-09-06 22:58:13 +00:00
Misha Brukman
d48f54417f
* Profile-guided needs a hyphen
...
* Dead store elimination has been implemented
llvm-svn: 16202
2004-09-06 22:35:43 +00:00
Misha Brukman
a196c6859e
Reword to not use a link text `click here'.
...
llvm-svn: 16201
2004-09-06 20:58:44 +00:00
Reid Spencer
ec0c48e0f9
Modify the lines of code counting mechanism to use the new "countloc.sh"
...
utility. This avoids some problems with long line lengths and counting the
wrong things.
llvm-svn: 16200
2004-09-06 19:32:55 +00:00
Reid Spencer
2a91e7f660
Added a tool to more accurately count the lines of code. The previous
...
utility, getsrcs.sh suffered from two problems: (1) it generated command
lines too long for some platforms and (2) it searched the projects diretory
which now contains the llvm-test module (in nightly tester) but we don't
want to include the test code in our LOC calculation. This script should
be maintained as LLVM adds new top level directories that contain source
code.
llvm-svn: 16199
2004-09-06 19:06:27 +00:00
Nate Begeman
54bcf2db01
Add 64 bit divide instructions, and use them
...
llvm-svn: 16198
2004-09-06 18:46:59 +00:00
Reid Spencer
d5de72cd6b
Remove double paren use in system() function so that the command line can
...
be correctly interpreted by non-bash shells.
llvm-svn: 16194
2004-09-05 20:57:22 +00:00
Reid Spencer
075de23a3d
HTML 4.01 STRICT compliance.
...
Added missing definitions
Noted the difference between llvm/test and llvm-test
llvm-svn: 16193
2004-09-05 20:50:22 +00:00
Reid Spencer
ae21b0b836
Make section separator comments 80 chars, not 70.
...
Revise descriptions to account for llvm/test/Programs being moved to
the new CVS module llvm-test.
Incoporate an example of how to run the NightlyTest.pl script from a
shell script.
llvm-svn: 16192
2004-09-05 20:07:26 +00:00
Alkis Evlogimenos
58350a7435
Indent to 2 spaces and cleanup excess whitespace.
...
llvm-svn: 16188
2004-09-05 18:41:35 +00:00
Alkis Evlogimenos
fcb3f5197e
Indent to 2 spaces.
...
llvm-svn: 16187
2004-09-05 18:39:20 +00:00
Reid Spencer
7433dcdc0f
Remove configuration of test/Programs/* Makefiles.
...
llvm-svn: 16186
2004-09-05 17:48:32 +00:00
Reid Spencer
20f712853f
Added the configuration of the test/Makefile.
...
llvm-svn: 16185
2004-09-05 16:42:30 +00:00
Reid Spencer
fe4c30ec5b
Add HAS_U_INT64_T
...
llvm-svn: 16184
2004-09-05 16:41:11 +00:00
Reid Spencer
7650c06a45
Add LLVMC as a supported tool.
...
llvm-svn: 16183
2004-09-05 16:39:01 +00:00
Reid Spencer
ebb2334fa5
Per Bug 257
...
The "Programs" directory no longer lives here. It have been moved to its
own cvs module. Check it out into llvm/projects and configure/build it
there.
llvm-svn: 16182
2004-09-05 08:18:23 +00:00
Reid Spencer
2263203a94
Make the NightlyTest run tests out of projects/llvm-test instead of
...
llvm/test/Programs
llvm-svn: 16181
2004-09-05 07:58:10 +00:00
Misha Brukman
0d68e4cde6
Put a space between `Data' and `Structure' of DSA.
...
llvm-svn: 16179
2004-09-05 03:57:23 +00:00
Misha Brukman
3541004158
Remove the bit about this document being my `notes', it has matured since then.
...
llvm-svn: 16178
2004-09-05 03:24:34 +00:00
Misha Brukman
68d6f7fa22
Fix object/library filenames that have changed, clarify descriptions.
...
llvm-svn: 16177
2004-09-05 03:20:18 +00:00
Misha Brukman
adfa8b8ab4
Add DSA.
...
llvm-svn: 16176
2004-09-05 03:00:20 +00:00
Misha Brukman
73b6e9679b
* CSS was created to reduce re-specifying design styles: specify table cell
...
color once at the top, and do not repeat it 82 times
* Replace bright blue table border with gray, which is easier on the eyes and
matches the gray LLVM documentation color scheme
llvm-svn: 16175
2004-09-05 02:56:39 +00:00
Misha Brukman
175fdd4678
* Change PPC32AsmPrinter => PowerPCAsmPrinter since it is now shared between
...
Darwin and AIX and is not 32- or 64-bit specific
* Bring back PowerPC.td as a result, to make it use the `PowerPC' class name
* Adjust Makefile accordingly
llvm-svn: 16174
2004-09-05 02:42:44 +00:00
Misha Brukman
4acadb3af7
Renamed PPC32AsmPrinter.cpp => PowerPCAsmPrinter.cpp as the Darwin and AIX asm
...
printers are now unified into one file.
llvm-svn: 16173
2004-09-05 02:27:37 +00:00
Reid Spencer
738122ce2c
Make sure llvm-test doesn't build automatically so the nightly test can
...
finish its build phase without building and running all the tests.
llvm-svn: 16172
2004-09-04 23:07:57 +00:00
Reid Spencer
ab4df83228
Take one item off the "to do" list: implemented -O1 .. -O5 options for
...
optimization in stkrc instead of depending on "opt"
llvm-svn: 16169
2004-09-04 20:30:01 +00:00
Reid Spencer
8ea6e94df9
Convert makefile to use standard LLVM macros for tool names
...
Utilize new stkrc -O4 option for optimization during translation.
llvm-svn: 16168
2004-09-04 20:13:54 +00:00
Reid Spencer
950d604ef9
Make Stacker into a complete project with its own configuration.
...
llvm-svn: 16167
2004-09-04 19:48:50 +00:00
Reid Spencer
fbd716d621
Make the StackerCompiler and optimizing translator by running specific
...
optimizations after construction of the Module. The OptLevel argument
to the compile function controls the level of optimization.
llvm-svn: 16166
2004-09-04 19:07:32 +00:00
Reid Spencer
4771383e47
Make the Stacker compiler handle -O1 .. -O5 options so it is compliant with
...
the compiler driver interface as an optimizing translator. Also clean up
error message handling.
llvm-svn: 16165
2004-09-04 19:05:53 +00:00
Nate Begeman
4d847047a0
Include MathExtras.h to fix build breakage, thanks to Vladimir
...
llvm-svn: 16164
2004-09-04 14:51:26 +00:00
Nate Begeman
4bfceb1ed5
All PPC instructions are now auto-printed
...
32 and 64 bit AsmWriters unified
Darwin and AIX specific features of AsmWriter split out
llvm-svn: 16163
2004-09-04 05:00:00 +00:00
Reid Spencer
b9c90a2b02
Get rid of an un-needed and un-used GCCism. ATTR_DEPRECATED is used nowhere
...
in the LLVM source base.
llvm-svn: 16162
2004-09-03 23:38:25 +00:00
Reid Spencer
0ded30aec4
Clean up some "clean:" targets so they use $(VERB) and don't print anything
...
by default, like every other "clean" target in LLVM.
llvm-svn: 16161
2004-09-03 23:19:53 +00:00
Reid Spencer
c8ec13388b
Make tblgen's exception handling a little more robust by printing the
...
program name and also catching ...
llvm-svn: 16160
2004-09-03 23:17:54 +00:00
Reid Spencer
f68090d67f
Don't re-instantiate the std::string in catch block.
...
llvm-svn: 16159
2004-09-03 22:59:32 +00:00
Reid Spencer
3f4bdc96fe
Uh, changing in build dir and committing in src dir doesn't lead to correct
...
commits. Fix it so it actually works.
llvm-svn: 16158
2004-09-03 22:28:24 +00:00
Reid Spencer
6d28a14133
Correct the specification of the DIRS variable to not include the source
...
directory prefix, just the name of the subdirectory. This prevents the
makefile from trying to find makefiles (like Makefile.common) in the wrong
place.
llvm-svn: 16157
2004-09-03 22:25:40 +00:00
Misha Brukman
1a45021535
I was actually wrong in my "simplification".
...
llvm-svn: 16156
2004-09-03 19:46:43 +00:00
Misha Brukman
247b22c56d
Simplify check for uint64_t and u_int64_t
...
llvm-svn: 16155
2004-09-03 19:44:28 +00:00
Reid Spencer
6f21308b16
Provide correct definition of uint64_t for platforms that have only
...
u_int64_t defined.
llvm-svn: 16154
2004-09-03 19:37:39 +00:00
Misha Brukman
14a2b4628d
Order #includes alphabetically, local .h files first.
...
llvm-svn: 16153
2004-09-03 18:25:53 +00:00
Alkis Evlogimenos
a5c04ee50f
Fixes to make LLVM compile with vc7.1.
...
Patch contributed by Paolo Invernizzi!
llvm-svn: 16152
2004-09-03 18:19:51 +00:00
Misha Brukman
cb46e66983
Regenerated after Reid's change for uint64_t/u_int64_t (patch by Bill Wendling)
...
llvm-svn: 16151
2004-09-02 23:02:30 +00:00
Reid Spencer
109524cae3
Make the text of this file a little more useful.
...
llvm-svn: 16150
2004-09-02 22:49:27 +00:00
Reid Spencer
ab2228ad7e
Don't just assume that either uint64_t or u_int64_t is available. Instead,
...
give preference to uint64_t if it exists. If not, check for u_int64_t. If
that doesn't exist either, then error out.
llvm-svn: 16149
2004-09-02 21:38:24 +00:00
Alkis Evlogimenos
9f82237f4e
Change the way we choose a free register: instead of picking the first
...
free allocatable register, we prefer the a free one with the most uses
of inactive intervals.
llvm-svn: 16148
2004-09-02 21:24:33 +00:00
Alkis Evlogimenos
095c3a80f3
Change the way we choose a free register: instead of picking the first
...
free allocatable register, we prefer the a free one with the most uses
of inactive intervals. This causes less spills and performes a bit
better compared to gcc:
Program | GCC/LLC (Before)| GCC/LLC (After)
164.gzip/164.gzip | 0.59 | 0.60
175.vpr/175.vpr | 0.57 | 0.58
176.gcc/176.gcc | 0.59 | 0.61
181.mcf/181.mcf | 0.94 | 0.95
186.crafty/186.crafty | 0.62 | 0.62
197.parser/197.parser | 0.89 | 0.88
252.eon/252.eon | 0.61 | 0.66
253.perlbmk/253.perlbmk | 0.79 | 0.84
254.gap/254.gap | 0.81 | 0.81
255.vortex/255.vortex | 0.92 | 0.93
256.bzip2/256.bzip2 | 0.69 | 0.69
300.twolf/300.twolf | 0.91 | 0.90
llvm-svn: 16147
2004-09-02 21:23:32 +00:00
John Criswell
d672a3dbe3
Added a check for u_int64_t, which is used by Interix.
...
llvm-svn: 16145
2004-09-02 18:44:44 +00:00
John Criswell
4fcd5c30fa
Added u_int64_t because some systems use that instead of uint64_t.
...
llvm-svn: 16144
2004-09-02 18:41:30 +00:00
Alkis Evlogimenos
dcbf893095
We don't need to sort the added vector as unhandled intervals are
...
stored in a binary heap.
llvm-svn: 16143
2004-09-02 18:00:38 +00:00
Nate Begeman
6173878304
Convert remaining X-Form and Pseudo instructions over to asm writer
...
llvm-svn: 16142
2004-09-02 08:13:00 +00:00
Alkis Evlogimenos
7063868e2a
Pull in definition of std::unary_function.
...
llvm-svn: 16140
2004-09-02 03:24:45 +00:00
Brian Gaeke
45fb84d68d
Unbreak build
...
llvm-svn: 16139
2004-09-02 03:24:08 +00:00
Brian Gaeke
c6e81f0fde
Back to compiling land for v8
...
llvm-svn: 16138
2004-09-02 02:37:43 +00:00
Reid Spencer
7c16caa336
Changes For Bug 352
...
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
2004-09-01 22:55:40 +00:00
Alkis Evlogimenos
fae8f6a4fb
Be a bit more efficient when processing the active and inactive
...
lists. Instead of scanning the vector backwards, scan it forward and
swap each element we want to erase. Then at the end erase all removed
intervals at once. This doesn't save much: 0.08s out of 4s when
compiling 176.gcc.
llvm-svn: 16136
2004-09-01 22:52:29 +00:00
Alkis Evlogimenos
6a099d439e
Give a better assertion if we see a use before a def.
...
llvm-svn: 16135
2004-09-01 22:34:52 +00:00
Reid Spencer
a50cb6c8b9
Make sure <cassert> is included for platforms that don't include it via
...
other header files.
llvm-svn: 16134
2004-09-01 20:36:15 +00:00
Reid Spencer
f4e546b7aa
mkdtemp doesn't exist on Cygwin. Use tempnam & mkdir instead.
...
llvm-svn: 16133
2004-09-01 20:29:35 +00:00
Reid Spencer
9501b9b82b
Make CommandLine prefix error output with the name of the program.
...
llvm-svn: 16129
2004-09-01 04:41:28 +00:00
Reid Spencer
67c06d7df0
Initial commit for platform independent system configuration support.
...
llvm-svn: 16128
2004-08-31 18:13:52 +00:00
Reid Spencer
8c73e0041a
Add support for FreeBSD
...
llvm-svn: 16127
2004-08-31 18:09:35 +00:00
Reid Spencer
f2531a1568
Add support for Interix and FreeBSD
...
llvm-svn: 16126
2004-08-31 18:03:23 +00:00
Reid Spencer
b14809c51d
Actually define PreventCoreFiles in the sys namespace.
...
llvm-svn: 16125
2004-08-31 17:53:41 +00:00
Reid Spencer
4f48470d84
Add a new abstraction, SysConfig for platform independent system
...
configuration calls. Right now this just contains PreventCoreFiles so that
bugpoint can by platform independent.
llvm-svn: 16124
2004-08-31 17:43:29 +00:00
Alkis Evlogimenos
b84f0be5b1
Minor code clarity changes.
...
llvm-svn: 16123
2004-08-31 17:39:15 +00:00
Reid Spencer
67be17afbe
Fix a "test" botch.
...
Alphabetize the platform list
Install some AC_MSG_CHECKING/AC_MSG_RESULT pairs.
llvm-svn: 16122
2004-08-31 14:20:36 +00:00
Nate Begeman
a113d74e4c
convert M and MD form instructions to generated asm writer
...
llvm-svn: 16121
2004-08-31 02:28:08 +00:00
Reid Spencer
1daffa57c1
Recognize Interix systems as if they were SunOS and make sure we don't
...
attempt to configure for "Unknown" system types.
llvm-svn: 16120
2004-08-31 01:34:10 +00:00
Reid Spencer
79d4c3d5db
Move the GetTemporaryDirectory function from "generic Unix" to platform
...
specific.
llvm-svn: 16119
2004-08-30 21:46:55 +00:00
Reid Spencer
f98fff36ef
Add inclusion of assert.h
...
llvm-svn: 16118
2004-08-30 16:03:54 +00:00
Reid Spencer
47fc279160
Initial commit of a configuration file for compiling C++ programs with
...
the file name pattern *.cpp
llvm-svn: 16117
2004-08-30 06:32:24 +00:00
Reid Spencer
a681845e69
Implement the "setIncludePaths" and "setSymbolDefines" interface methods.
...
Revise token substitution to be a little faster.
Clean up exception throwing, make sure its always a std::string.
llvm-svn: 16116
2004-08-30 06:29:06 +00:00
Reid Spencer
1b389f09b4
Pass lists of -I and -D options through to the Compiler Driver.
...
Handle -g and -Wxxx for GCC compatibility
llvm-svn: 16115
2004-08-30 06:27:32 +00:00
Reid Spencer
cf2bc3d767
Add a blurb about exploiting the use of external storage.
...
llvm-svn: 16114
2004-08-30 05:56:51 +00:00
Nate Begeman
143cf94f92
Move yet more instructions over to being printed by the generated asm writer
...
llvm-svn: 16112
2004-08-30 02:28:06 +00:00
Reid Spencer
b55c0cbaee
Abbreviate the long descriptions which are now in docs/SystemLibrary.html.
...
llvm-svn: 16111
2004-08-30 02:03:51 +00:00
Reid Spencer
8aca0b494d
Reduce the number of arguments in the instruction builder and make some
...
improvements on instruction selection that account for register and frame
index bases.
Patch contributed by Jeff Cohen. Thanks Jeff!
llvm-svn: 16110
2004-08-30 00:13:26 +00:00
Reid Spencer
9f64b91e27
Need to throw std::string not const char* if we want error messages to be
...
caught.
llvm-svn: 16109
2004-08-30 00:06:52 +00:00
Reid Spencer
94596c2102
Synchronize documentation of configuration items and substitutions with
...
current reality of llvmc implementation.
llvm-svn: 16108
2004-08-29 23:20:42 +00:00
Nate Begeman
6cdbd22245
Convert A-Form instructions to auto-generated asm writer
...
llvm-svn: 16107
2004-08-29 22:45:13 +00:00
Nate Begeman
434234f6d1
Register sizes should be specified in bits
...
llvm-svn: 16106
2004-08-29 22:03:40 +00:00
Nate Begeman
8cb6bd5f3c
Improvements to int->float cast code for PPC-64
...
llvm-svn: 16105
2004-08-29 22:02:43 +00:00
Nate Begeman
50d140ee3d
Must link against new LLVMsystem library
...
llvm-svn: 16104
2004-08-29 22:01:44 +00:00
Nate Begeman
a094704ff9
RemoveFileOnSignal is now in sys:: namespace
...
llvm-svn: 16103
2004-08-29 22:01:17 +00:00
Nate Begeman
c9dec3ae70
Put this change back in after testing from Reid proved its innocence. getSpillSize now returns value in bits
...
llvm-svn: 16102
2004-08-29 22:00:24 +00:00
Nate Begeman
168be7e43f
Update doxygen comment now that getSpillSize is supposed to return value in bits
...
llvm-svn: 16101
2004-08-29 21:59:26 +00:00
Reid Spencer
023637eb38
Add a declaration of environ global for Darwin
...
llvm-svn: 16100
2004-08-29 20:10:07 +00:00
Reid Spencer
a62e5a837f
Add a missing header file
...
llvm-svn: 16099
2004-08-29 20:02:28 +00:00
Reid Spencer
3311669903
Add an assert to cature null Operands. It is better to catch it here than
...
to SIGSEGV in the bowels of isa<...> later.
llvm-svn: 16098
2004-08-29 19:37:59 +00:00
Reid Spencer
6fca37236d
Signals support has been moved to lib/System
...
llvm-svn: 16097
2004-08-29 19:36:34 +00:00
Reid Spencer
efc94f5e72
Updated to create a link needed for correct lib/System compilation.
...
llvm-svn: 16096
2004-08-29 19:35:28 +00:00
Reid Spencer
90f56ee8b4
Add lib/System ahead of lib/Support in case there are operating system
...
issues.
llvm-svn: 16095
2004-08-29 19:33:21 +00:00
Reid Spencer
811c3c0edb
Link with LLVMsystem.a for operating system independence.
...
llvm-svn: 16094
2004-08-29 19:31:19 +00:00
Reid Spencer
9b129bea2e
RemoveFileOnErrorSignal is now in the llvm::sys namespace. Adjust
...
accordingly.
llvm-svn: 16093
2004-08-29 19:30:41 +00:00
Reid Spencer
74c3dc6927
Add the LLVMsystem.a library as it is now used for operating system
...
independence of the tool.
llvm-svn: 16092
2004-08-29 19:29:38 +00:00
Reid Spencer
e3263ecaf0
The functions in Signal.h are now in the llvm::sys namespace - adjust
...
llvm-svn: 16091
2004-08-29 19:28:55 +00:00
Reid Spencer
5b43fc9b53
add llvmc
...
llvm-svn: 16090
2004-08-29 19:27:34 +00:00
Reid Spencer
1b5b24f9fb
Convert llvmc to use the lib/System interface instead of directly
...
using Unix operating system calls.
llvm-svn: 16089
2004-08-29 19:26:56 +00:00
Reid Spencer
b8c572df56
Move a warning comment to where it should have been in the first place.
...
llvm-svn: 16088
2004-08-29 19:25:54 +00:00
Reid Spencer
bb5301eebf
Correct the vim: specification
...
llvm-svn: 16087
2004-08-29 19:24:53 +00:00
Reid Spencer
2f209c4452
Include some additional header files.
...
Fix the banner length.
llvm-svn: 16086
2004-08-29 19:24:20 +00:00
Reid Spencer
3d7a614ec7
Initial platform independent implementation of operating system concept
...
of "Signals" (cleanup after fatal errors).
llvm-svn: 16085
2004-08-29 19:22:48 +00:00
Reid Spencer
76b83a1869
Initial commit of an platform-indepdendent implementation for the
...
"Program" operating system concept (find and execute programs).
llvm-svn: 16084
2004-08-29 19:20:41 +00:00
Reid Spencer
21087b0f7e
Put the lib/System interface functions in llvm::sys namespace.
...
llvm-svn: 16083
2004-08-29 19:19:07 +00:00
Reid Spencer
a872cbe3bd
Create a link from $BUILD_OBJ_ROOT/lib/System/platform to
...
$BUILD_SRC_ROOT/lib/System/$build which gives us the ability to
configure the lib/System for the current type of operating system.
Also cleaned up some indentation.
llvm-svn: 16082
2004-08-29 19:18:05 +00:00
Nate Begeman
4483df8b63
Implement the following missing functionality in the PPC backend:
...
cast fp->bool
cast ulong->fp
algebraic right shift long by non-constant value
These changes tested across most of the test suite. Fixes Regression/casts
llvm-svn: 16081
2004-08-29 08:19:32 +00:00
Reid Spencer
023ff63545
Initial commit of the platform agnostic interface to finding and executing
...
programs.
llvm-svn: 16080
2004-08-29 05:29:35 +00:00
Reid Spencer
319b136522
Add a function to remove whole directorys on fatal signal.
...
Doxygenify function comments.
llvm-svn: 16079
2004-08-29 05:27:15 +00:00
Reid Spencer
6df221d50a
Revise the design of the Path concept per peer review. Too many changes to
...
note individually but these essence of it is to not derive from
std::string, clarify the interface, and provide better documentation.
There is now also (untested) implementations for AIX, Darwin, and SunOS.
llvm-svn: 16078
2004-08-29 05:24:01 +00:00
Alkis Evlogimenos
c227d73e5f
Remove dead code.
...
llvm-svn: 16077
2004-08-28 22:43:31 +00:00
Alkis Evlogimenos
e2d962e0fd
Now that LiveIntervals::addIntervalsForSpills is fixed, do not require
...
LiveVariables.
llvm-svn: 16076
2004-08-27 19:00:29 +00:00
Alkis Evlogimenos
8c67a3003e
Only update LiveVariables if it is available. addIntervalsForSpills
...
runs after the initial run of the live interval analysis.
llvm-svn: 16075
2004-08-27 18:59:22 +00:00
Alkis Evlogimenos
efd40bce75
Back out this change as it broke the build last night. This should be
...
investicated further as the linearscan variants don't really need
LiveVariables...
llvm-svn: 16074
2004-08-27 18:01:21 +00:00
Nate Begeman
c561fc3731
Back out change to divide getSpillSize by 8 until I figure out why it breaks x86, which has register sizes in bits.
...
llvm-svn: 16073
2004-08-27 16:48:24 +00:00
Nate Begeman
0c1e6804a1
Fix a typo in the bytecode format documentation
...
llvm-svn: 16072
2004-08-27 07:59:37 +00:00
Alkis Evlogimenos
11f0fc8eda
The linear scan variants do not require the LiveVariables analysis.
...
llvm-svn: 16071
2004-08-27 04:51:13 +00:00
Nate Begeman
fa2bf42539
Register sizes are in bits, not bytes
...
llvm-svn: 16070
2004-08-27 04:28:10 +00:00
Alkis Evlogimenos
7ebfde2be6
Add getLastBlock member. This is useful when growing a densemap keyed
...
on MachineBasicBlocks.
llvm-svn: 16069
2004-08-27 04:02:35 +00:00
Alkis Evlogimenos
390c820a82
Add MachineBasicBlock2IndexFunctor. This is useful for densemaps from
...
MachineBasicBlocks to an arbitrary type.
llvm-svn: 16068
2004-08-27 04:00:26 +00:00
Alkis Evlogimenos
60f33d4d66
Add size member function.
...
llvm-svn: 16067
2004-08-27 03:58:31 +00:00
Reid Spencer
6e8ffc3831
Add more content.
...
This isn't in reviewable shape yet, unless you're curious.
llvm-svn: 16066
2004-08-27 02:08:04 +00:00
Reid Spencer
7d0a123c3e
Bug 430 Fixed.
...
llvm-svn: 16065
2004-08-27 00:48:26 +00:00
Reid Spencer
366c457e08
Correctly compute the number of compaction tables.
...
llvm-svn: 16064
2004-08-27 00:43:51 +00:00
Reid Spencer
248c06dcea
Prevent an empty compaction table from being written to the bytecode file.
...
llvm-svn: 16063
2004-08-27 00:38:44 +00:00
Reid Spencer
3b789ad2b8
Add the CompactionTableIsEmpty function so that we can determine if a
...
CompactionTable really needs to be emitted. This is not a straight forward
computation, hence the need for a member function here.
llvm-svn: 16062
2004-08-26 22:32:00 +00:00
Alkis Evlogimenos
2c69803b61
Use newly added API in MRegisterInfo and don't expose the allocatable
...
register set anymore. Its users now use the MRegisterInfo API.
llvm-svn: 16061
2004-08-26 22:23:32 +00:00
Alkis Evlogimenos
542ac1cba7
Use newly added API in MRegisterInfo.
...
llvm-svn: 16060
2004-08-26 22:22:38 +00:00
Alkis Evlogimenos
8b5b3fdb50
Add getAllocatableSet() function.
...
llvm-svn: 16059
2004-08-26 22:21:04 +00:00
Reid Spencer
cb84e4351d
Provide some meta tags for this document.
...
llvm-svn: 16058
2004-08-26 20:44:00 +00:00
Reid Spencer
1d9e29bdc0
Add the default table related styles
...
llvm-svn: 16057
2004-08-26 20:43:21 +00:00
Reid Spencer
c948f9d9e9
Document the rational for the #include hierarchy.
...
llvm-svn: 16056
2004-08-26 18:52:52 +00:00
Reid Spencer
30e25f33f7
Fix a typo.
...
llvm-svn: 16055
2004-08-26 07:43:33 +00:00
Reid Spencer
3f3d1666ff
First cut at a README for lib/System explaining the #inclusion rules and
...
design criteria.
llvm-svn: 16054
2004-08-26 07:41:41 +00:00
Reid Spencer
b3f342c877
Add a README explaining the intended content of this directory.
...
llvm-svn: 16053
2004-08-26 05:58:20 +00:00
Alkis Evlogimenos
127c2aa7b2
Add default index functor (an identity functor). You could use a
...
vector directly to get the same functionality but using a DenseMap
makes the code more readable IMO.
llvm-svn: 16052
2004-08-26 03:37:28 +00:00
Brian Gaeke
7f00753f70
Previous checkin broke printf(%a) support for fp constants-- re-fix it.
...
llvm-svn: 16051
2004-08-25 19:37:26 +00:00
Brian Gaeke
35eb7aeae3
New version of Bill Wendling's PR33 patch.
...
llvm-svn: 16050
2004-08-25 19:00:42 +00:00
Reid Spencer
ebb91dcfe7
Fix documentation.
...
Make the library name LLVMsystem instead of just system so as to not
to be confused with other "system" libraries.
llvm-svn: 16049
2004-08-25 06:23:45 +00:00
Reid Spencer
814ba578ba
Initial implementation of the Path operating system concept.
...
llvm-svn: 16048
2004-08-25 06:20:07 +00:00
Reid Spencer
13ebda70ea
License for this library.
...
llvm-svn: 16047
2004-08-25 00:48:02 +00:00
Reid Spencer
135006cab1
Update to include tools/llvmc and lib/System as having additional copyright
...
licenses.
llvm-svn: 16046
2004-08-25 00:45:35 +00:00
Reid Spencer
6275eee949
License file for llvmc.
...
llvm-svn: 16045
2004-08-25 00:41:06 +00:00
Reid Spencer
01b22282fc
Document definitions and computations provided by llvm-bcanalyzer.
...
llvm-svn: 16044
2004-08-25 00:35:20 +00:00
Reid Spencer
44bc15064c
Insert declarations for two new functions that support the dependent
...
libraries feature.
llvm-svn: 16043
2004-08-24 22:55:34 +00:00
Reid Spencer
7a0348b163
Run the compilation actions before we attempt linking work.
...
Correctly implement the dependent libraries feature so that linked bytecode
files automatically include any dependent libraries they specify.
llvm-svn: 16042
2004-08-24 22:54:32 +00:00
Reid Spencer
3aac4f7d88
Add the directory specified by LLVM_LIB_SEARCH_PATH to the list of
...
directories to be searched during linking.
llvm-svn: 16041
2004-08-24 22:53:13 +00:00
Reid Spencer
f20d76d71e
Add dependent library support for Stacker. It now inserts "stkr_runtime" as
...
a dependent library.
llvm-svn: 16040
2004-08-24 22:52:01 +00:00
Reid Spencer
db0bdd69f5
Add a function that gets just the dependent libraries from a bytecode file.
...
Doxygenify comments.
llvm-svn: 16039
2004-08-24 22:49:07 +00:00
Reid Spencer
ce9b84a6af
Provide a method for wholesale extraction of the dependent libraries.
...
llvm-svn: 16038
2004-08-24 22:47:39 +00:00
Reid Spencer
79725deeb0
Add a wrapper for extraction of the dependent libraries from a bytecode
...
file.
llvm-svn: 16037
2004-08-24 22:46:20 +00:00
Reid Spencer
f341d29514
Rearrange output a little to make it nicer.
...
llvm-svn: 16036
2004-08-24 22:45:32 +00:00
Chris Lattner
7bf499c040
Add some details
...
llvm-svn: 16035
2004-08-24 18:53:39 +00:00
Reid Spencer
7c8d658efc
Added BURS.
...
llvm-svn: 16034
2004-08-24 18:34:10 +00:00
Reid Spencer
8d86dd6453
Get rid of error messages from CommandLine because -time-passes was
...
defined twice. We make use of the new TimePassesIsEnabled global boolean
value from Pass.h to access the value.
llvm-svn: 16033
2004-08-24 17:54:26 +00:00
Reid Spencer
2e4bfff37c
Give the -time-passes tool option a global storage location so that its
...
value can be discovered by the various LLVM tools.
llvm-svn: 16032
2004-08-24 17:52:35 +00:00
Chris Lattner
d8b5be4726
Fix a bug in a previous checkin of mine, correcting
...
Regression.CodeGen.Generic.2004-04-09-SameValueCoalescing.llx and the
code size problem.
This bug prevented us from doing most register coallesces.
llvm-svn: 16031
2004-08-24 17:48:29 +00:00
Reid Spencer
ad4c8e330f
Add the examples directory to these scripts.
...
llvm-svn: 16030
2004-08-24 17:42:33 +00:00
Chris Lattner
57a2c3bad9
Modify testcase to merit a warning, though no warning is still printed!
...
llvm-svn: 16029
2004-08-24 17:40:02 +00:00
Reid Spencer
b1a014f786
Include the "examples" directory as optional.
...
Update configure script to configure the examples/Makefile
llvm-svn: 16028
2004-08-24 16:32:21 +00:00
Reid Spencer
a407007e07
Ensure that the examples get built.
...
llvm-svn: 16027
2004-08-24 16:31:01 +00:00
Reid Spencer
b26202f10c
Adjustments for changes in the configuration language.
...
llvm-svn: 16026
2004-08-24 14:24:14 +00:00
Reid Spencer
a86672b929
- Unify format of output messages
...
- All errors throw std::string
- Default output file name to a.out (if we're linking)
llvm-svn: 16025
2004-08-24 14:05:30 +00:00
Reid Spencer
5b902eba71
Link with bcreader and vmcore.
...
llvm-svn: 16024
2004-08-24 14:04:07 +00:00
Reid Spencer
a1049043d7
- Implement the %args% substitution
...
- Implement parsing of the .output={bytecode|assembly} item.
- Drop parsing support for translator.optimizes, translator.groks_dash_O,
optimizer.groks_dash_O, translator.output_is_asm, optimizer.output_is_asm
- Add parsing support for translator.output and optimizer.output
- Add optimizer.required parsing support
- Add linker.libs and linker.libpaths parsing support
- Fix error messages to list correct set of tokens expected.
- Rename FileReadable -> FileIsReadable (changed in CompilerDriver.cpp)
llvm-svn: 16023
2004-08-24 14:03:23 +00:00
Reid Spencer
ed9b3c4c20
- Alphabetize the list of token enumerators.
...
- Drop old tokens, insert new tokens
llvm-svn: 16022
2004-08-24 13:59:35 +00:00
Reid Spencer
20db3234bc
- Rename and rearrange for clarity
...
- Drop name tokens not used any more (GROKS_DASH_O)
- Rename OUTPUT_IS_ASM as OUTPUT and allow "bytecode" and "assembly" as
values of it.
- Simplify handleContext (now handleNameContext) arguments and ensure that
it returns OPTION tokens exactly as scanned.
llvm-svn: 16021
2004-08-24 13:58:37 +00:00
Reid Spencer
f62f89b3eb
- Remove unused GetSuffix function
...
- Renamed FileReadable -> FileIsReadable
- Remove support for GROKS_DASH_O; deferr it to %opts% substitution
- Require a -o option except in case of linking where it defaults to a.out
- Fix problem processing *.o and *.bc files.
- Ignore optimization phase if -emit-raw-code
- Correct the assembly generation phase to support -emit-native-code
- Implement dependent library lookup
llvm-svn: 16020
2004-08-24 13:55:17 +00:00
Reid Spencer
6ad2030f7a
Remove unneeded flags.
...
llvm-svn: 16019
2004-08-24 13:49:57 +00:00
Chris Lattner
dfa9dbceaa
Add -sse[,2,3] arguments to LLC
...
llvm-svn: 16018
2004-08-24 08:18:44 +00:00
Chris Lattner
61e6dbc761
Nuke commented out stuff
...
llvm-svn: 16017
2004-08-24 08:18:27 +00:00
Brian Gaeke
730d8d6259
bug fixed
...
llvm-svn: 16016
2004-08-24 07:43:48 +00:00
Brian Gaeke
1bd0804f6d
note pr#
...
llvm-svn: 16015
2004-08-24 07:28:45 +00:00
Brian Gaeke
75dca84c7f
This code is dodgy, but the guaranteed assertion failure doesn't help anything.
...
llvm-svn: 16014
2004-08-24 06:41:40 +00:00
Brian Gaeke
98aa7797c3
Fix bug in PhyRegAlloc::setCallInterferences() handling call through a
...
null pointer.
llvm-svn: 16013
2004-08-24 06:41:39 +00:00
Brian Gaeke
d315f43587
Revise head-of-file comment.
...
Eliminate some excess whitespace.
Fix bug in CallArgsDescriptor::get() handling call through a null pointer.
llvm-svn: 16012
2004-08-24 06:41:38 +00:00
Reid Spencer
be36a8cd2a
Actually get the URL to my notes page correct.
...
llvm-svn: 16011
2004-08-24 05:40:25 +00:00
Reid Spencer
ea6ad243e9
Correct my home page. Shorten my entry. Reference home page in description.
...
llvm-svn: 16010
2004-08-24 05:21:49 +00:00
Misha Brukman
2ace8cbb17
Change LVN -> Load-VN since that's the name of the cmdline switch
...
llvm-svn: 16009
2004-08-24 04:13:17 +00:00
Misha Brukman
4c70105c4c
Fix some grammar.
...
llvm-svn: 16008
2004-08-24 02:23:58 +00:00
Misha Brukman
00b21aef7b
Added DSE, LICM, LVN, PRE, SCCP, and SSA
...
llvm-svn: 16007
2004-08-24 01:57:02 +00:00
Chris Lattner
a88d667487
Do not use .xword and friends to emit zeros on V9. Apparently there are issues
...
with emitting .xwords when not on an 8-byte boundary (.xword 0 is not the
same as 8 .byte 0's). Because we do not know when or when we are not aligned,
just emit bytes like the old V9 asmprinter did.
llvm-svn: 16006
2004-08-24 00:26:11 +00:00
Brian Gaeke
adc0b83eec
A PR60 test case
...
llvm-svn: 16005
2004-08-23 20:49:33 +00:00
Misha Brukman
62a2c1fd7a
Document 'gmake install' vs. 'install-bytecode' (used for bytecode libs)
...
llvm-svn: 16004
2004-08-23 20:25:33 +00:00
Reid Spencer
5b81eea7a5
Moved small examples from /projects/SmallExamples to /examples.
...
Made the "ModuleMaker" into an example since its just one source file.
llvm-svn: 16003
2004-08-23 19:29:54 +00:00
Reid Spencer
b987b7cede
Moved the "SmallExamples" out of the /projects directory and into a new
...
/examples directory. History was maintained. These programs do not need to
be configured but things in /projects must be.
llvm-svn: 16002
2004-08-23 19:28:39 +00:00
Reid Spencer
300396971c
Fix Title line
...
Make the "DIRS" option descend any directory with a Makefile.
llvm-svn: 16001
2004-08-23 18:06:31 +00:00
Misha Brukman
39efd01983
Note: do not use GNU binutils under AIX, they're not stable.
...
llvm-svn: 16000
2004-08-23 17:54:45 +00:00
Reid Spencer
06afee6ede
Change the makefile back so it descends any directory with a Makefile.
...
llvm-svn: 15999
2004-08-23 17:47:16 +00:00
Reid Spencer
a628856d1e
Many useful corrections resulting from Chris Lattner's review. Thanks Chris!
...
Misha: you're next. :)
llvm-svn: 15996
2004-08-22 18:06:59 +00:00
Reid Spencer
f222ee6546
Provide support for retaining the version number found in a config file.
...
llvm-svn: 15995
2004-08-22 18:03:25 +00:00
Reid Spencer
3820372162
Add the VERSION token.
...
llvm-svn: 15994
2004-08-22 18:02:41 +00:00
Reid Spencer
a318822db2
Add support for version numbers.
...
Allow CRLF as a line terminator (as well as plain LF)
llvm-svn: 15993
2004-08-22 18:02:13 +00:00
Reid Spencer
ed09afc536
Shorten lines so this file can be used as the documentation example
...
directly. Remove -pre (experimental pass).
llvm-svn: 15992
2004-08-22 18:01:19 +00:00
Nate Begeman
1c57b4fa32
Kill a majority of unnecessary sign extensions for byte loads
...
llvm-svn: 15991
2004-08-22 08:10:15 +00:00
Nate Begeman
64ef0262bd
Don't hard code the offset of the saved R31 in functions with frame pointers
...
llvm-svn: 15990
2004-08-22 08:09:17 +00:00
Misha Brukman
5d41391185
Bytecode libraries are installed with `make install-bytecode'
...
llvm-svn: 15989
2004-08-21 23:40:49 +00:00
Reid Spencer
5a2dfbae3d
First complete version. The details of configuration are now correctly
...
stated. PLEASE REVIEW THIS DOCUMENT NOW! :)
llvm-svn: 15988
2004-08-21 22:37:42 +00:00
Reid Spencer
f39f66e3ef
Initial checkin of a pass to lower packed operations to scalars operations.
...
This also registers the pass with opt with a -lower-packed command line
option.
Patch contributed by Brad Jones.
llvm-svn: 15987
2004-08-21 21:39:24 +00:00
Reid Spencer
d6dd465326
Correct to change interface of the analyzer.
...
llvm-svn: 15986
2004-08-21 21:00:24 +00:00
Reid Spencer
2807accdc5
Bytecode Analyzer Cleanup:
...
- Rearrange output order to make more sense
- Make only the function level output count as "detailed"
- Output dump output directly to stream, don't buffer it.
- Fix counting of block sizes
- Implement new handlers for number of types, dependent libs, target triple
- Compute the size of block headers.
llvm-svn: 15985
2004-08-21 20:58:19 +00:00
Reid Spencer
9874c63314
Get rid of an extraneous local variable.
...
llvm-svn: 15984
2004-08-21 20:53:56 +00:00
Reid Spencer
6639333f20
Two Changes:
...
- Pass the output stream to the analyzer so it can write its output there
directly instead of buffering it.
- Don't pass a boolean to ParseBytecode because its not needed any more.
llvm-svn: 15983
2004-08-21 20:52:03 +00:00
Reid Spencer
8631bc3aaa
Add boolean file format flags in preparation for version 5 bytecode.
...
Remove the "processFunctions" boolean from ParseBytecode as it is no
longer needed. This is part of avoiding double reading of functions
when analyzing bytecode.
llvm-svn: 15982
2004-08-21 20:50:49 +00:00
Reid Spencer
191aa30ac1
Bytecode Reader Cleanup:
...
- provide the correct conversion for ModuleBlockID in read_block (a potential
bug but not actually exploited because reading module block ids doesn't
use read_block).
- install support for handleTypeList handler
- install support for handleDependentLibrary handler
- install support for handleTargetTriple handler
- clean up comments, output strings,
- ensure that processing function arguments doesn't SIGSEGV if one of the
arguments is a null pointer (yeah, it happened .. weird)
- prepare for version 5 bytecode by documenting what will change.
llvm-svn: 15981
2004-08-21 20:49:23 +00:00
Reid Spencer
c039e6301a
Dump the DependentLibsBlockID, its not a block, its just a list inside the
...
globals info block. Add an enumerator for getting the number of enumerators
so we can range check in assertions.
llvm-svn: 15980
2004-08-21 20:42:28 +00:00
Nate Begeman
45b0b7cd7c
Back out branchless SetCC code. While it helped a lot in some cases, it
...
hurt a lot in others. Instead, improve branching version of SetCC and
Select instructions. The old code will be in CVS should we ever need to
dig it up again.
llvm-svn: 15979
2004-08-21 20:42:14 +00:00
Reid Spencer
f9ce66b75a
Add new methods:
...
- get the total number of types in the global type list
- handle dependent libraries
- handle target triple
llvm-svn: 15978
2004-08-21 20:41:12 +00:00
Reid Spencer
83c307de5d
Bytecode Analyzer cleanup:
...
- don't save the "dump" output, just emit it
- record the bc version number
- record info about the dependent libraries and target triple
- use the correct enumeration as the index on the block size map
llvm-svn: 15977
2004-08-21 20:40:08 +00:00
Chris Lattner
8eab62ee0d
Alignment is now in bits.
...
llvm-svn: 15976
2004-08-21 20:15:25 +00:00
Chris Lattner
70efc8f8e1
Switch from bytes to bits for alignment.
...
Also, change GPRC for PPC32 to align on 32-bit boundary instead of 64-bit
llvm-svn: 15975
2004-08-21 20:14:40 +00:00
Chris Lattner
5f6556da45
Switch from bytes to bits for alignment for consistency
...
llvm-svn: 15974
2004-08-21 20:14:13 +00:00
Chris Lattner
7c98308013
Reduce uses of getRegClass
...
llvm-svn: 15973
2004-08-21 20:13:52 +00:00
Chris Lattner
a440d5b081
Convert regclass alignment from bytes to bites
...
llvm-svn: 15972
2004-08-21 20:13:09 +00:00
Chris Lattner
b7ddc73b45
Convert bytes to bits in alignment
...
llvm-svn: 15971
2004-08-21 20:09:46 +00:00
Chris Lattner
36ba4bb042
Register info alignment is in bits, frame object alignment is (currently) in
...
bytes.
llvm-svn: 15970
2004-08-21 20:04:59 +00:00
Chris Lattner
beadefde19
Make alignment be in bits, just like size is
...
llvm-svn: 15969
2004-08-21 20:00:36 +00:00
Chris Lattner
c1ba9fb6e1
Reduce uses of getRegClass
...
llvm-svn: 15968
2004-08-21 19:51:17 +00:00
Chris Lattner
f76ccd43b8
Now that we have per-register spill size/alignment info, remove more uses
...
of getRegClass
llvm-svn: 15967
2004-08-21 19:45:10 +00:00
Chris Lattner
a6d34d9e19
Infer the spillsize/alignment of a register based on the register classes
...
it is embedded into.
llvm-svn: 15966
2004-08-21 19:42:03 +00:00
Chris Lattner
d3244d9cec
Support "Methods" in register classes in CodgeGenRegisterClass
...
llvm-svn: 15965
2004-08-21 19:21:21 +00:00
Chris Lattner
f7833ba375
Fix warning
...
llvm-svn: 15964
2004-08-21 19:11:03 +00:00
Reid Spencer
04f4d52d9e
Examine the type code in the setcc class of instructions and if it
...
is a PackedType, throw an error. Temporary solution.
Patch contributed by Brad Jones.
llvm-svn: 15963
2004-08-21 16:11:02 +00:00
Nate Begeman
3ad3ad4f3f
Move XForm instructions over to the auto-generated asm writer
...
llvm-svn: 15962
2004-08-21 05:56:39 +00:00
Chris Lattner
2a86fab933
Start parsing register classes into a more structured form
...
llvm-svn: 15961
2004-08-21 04:05:00 +00:00
Chris Lattner
e34ae99942
Read in declared reg sizes
...
llvm-svn: 15960
2004-08-21 02:24:57 +00:00
Chris Lattner
6a92fdef72
Add two values
...
llvm-svn: 15959
2004-08-21 02:17:39 +00:00
Chris Lattner
8439f382b6
Fix a nasty bug that Nate ran into. In particular, instead of emitting a 2+MB
...
error message, print out:
llvm-link: error linking in 'g.2.rbc': Global Variable Collision on
' %struct.D_Reduction* %d_reduction_10_gram' - External linkage globals have
different initializers
That's a bit more concise, huh?
llvm-svn: 15958
2004-08-21 00:50:59 +00:00
Reid Spencer
7f9971f349
Change @ -> % in config files. @name@ might be needed for config files to
...
themselves be configured via autoconf so its not a good substitition syntax
for llvmc. Furthermore % is more llvmish :)
llvm-svn: 15957
2004-08-20 22:53:11 +00:00
Nate Begeman
abf3c4d787
remove some things from the todo list.
...
llvm-svn: 15956
2004-08-20 18:46:54 +00:00
Chris Lattner
f1cd650251
Do not register ppc64 yet, as it breaks the SparcV9 backend
...
llvm-svn: 15955
2004-08-20 18:09:18 +00:00
Chris Lattner
d0713e7664
quish a warning
...
llvm-svn: 15954
2004-08-20 18:07:39 +00:00
Reid Spencer
e203d35be4
Fix a bug found exposed by: Regression/Other/2004-08-20-PackedControlFlow.ll
...
Packed types need to be allowed in type statements too.
Patch provided by Brad Jones.
llvm-svn: 15953
2004-08-20 15:37:30 +00:00
Nate Begeman
1b1a784afa
Implement code to convert SetCC into straight line code where appropriate. Add necessary instructions for this transformation to the .td file.
...
llvm-svn: 15952
2004-08-20 09:56:22 +00:00
Reid Spencer
6f7407880f
Remove even the slightest chance of a race condition occurring :)
...
llvm-svn: 15951
2004-08-20 09:32:32 +00:00
Reid Spencer
a17a413cc1
Implement the correct search for configuration files. llvmc will now try
...
the following in this order:
1. -config-dir=/path/to/configs
2. LLVM_CONFIG_DIR=/path/to/configs
3. ~/.llvm/etc
4. $prefix/etc
5. /etc/llvm
llvm-svn: 15950
2004-08-20 09:24:07 +00:00
Reid Spencer
6ad57b2491
Add CONFIG_FILES so the language specific config files can be installed.
...
llvm-svn: 15949
2004-08-20 09:21:51 +00:00
Reid Spencer
cc51e7b358
Added a set of rules for installing configuration files. You can now say
...
CONFIG_FILES=a b c
in a Makefile and when you "make install" the files a b and c will get
installed into the $prefix/etc directory.
llvm-svn: 15948
2004-08-20 09:20:05 +00:00
Reid Spencer
fab530daf2
Implement Assembly support.
...
Consolidate platform-specific code into "sys" namespace.
llvm-svn: 15947
2004-08-20 09:14:05 +00:00
Reid Spencer
288adf1a3f
Changes resulting from change in autoconf/configure.in (rename a #define)
...
llvm-svn: 15946
2004-08-20 09:10:31 +00:00
Reid Spencer
3b65b0a67a
Actually name the #define correctly.
...
llvm-svn: 15945
2004-08-20 09:08:57 +00:00
Reid Spencer
d677a43b4b
Added various LLVM_* strings that are configured to provide the user's
...
choice of installation directories. Programs can then automagically know
where the installation files are located.
llvm-svn: 15944
2004-08-20 09:05:15 +00:00
Reid Spencer
4d5c2a98d3
Update after change to autoconf/configure.ac
...
llvm-svn: 15943
2004-08-20 09:03:57 +00:00
Reid Spencer
cf05c1256b
Change version 1.3 -> 1.4
...
Add basic installation directories as AC_DEFINES and AC_SUBST so they can
be used by llvm programs with a simple #include <Config/config.h>
llvm-svn: 15942
2004-08-20 09:03:12 +00:00
Chris Lattner
befb7361c6
New testcase that the vector support does not work with yet.
...
This is also designed to make lowering a bitch :)
llvm-svn: 15941
2004-08-20 08:34:27 +00:00
Reid Spencer
f98e3c9358
Added various tests in support of Packed Types.
...
Tests kindly provided by Brad Jones.
llvm-svn: 15940
2004-08-20 06:06:43 +00:00
Reid Spencer
b6388f725e
Added a test case for packed types. Test case kindly provided by Brad Jones
...
llvm-svn: 15939
2004-08-20 06:02:24 +00:00
Brian Gaeke
0220904e7a
Packed types, brought to you by Brad Jones
...
llvm-svn: 15938
2004-08-20 06:00:58 +00:00
Reid Spencer
2b4b4a577a
Avoid building samples. Require explicit list of directory names to build.
...
llvm-svn: 15937
2004-08-20 01:49:59 +00:00
Chris Lattner
ab8d172df2
Make people explicitly add dirs to this. Remove ModuleMaker as it currently
...
does not build (it must be configured before it will work)
llvm-svn: 15936
2004-08-20 01:11:16 +00:00
Chris Lattner
40d0204067
Only build project dirs with a Makefile in them. This should fix the
...
problem where Depend or Debug directories prevent CVS from nuking an obsolete
project dir
llvm-svn: 15935
2004-08-20 01:07:54 +00:00
Chris Lattner
615ffb84fa
Bug fixed
...
llvm-svn: 15934
2004-08-20 00:36:23 +00:00
Chris Lattner
14c198d09a
If we are linking two global variables and they have the same size, do not
...
spew warnings, even if the types don't match.
llvm-svn: 15933
2004-08-20 00:30:39 +00:00
Misha Brukman
8f12956327
Fix opcodes being printed in caps (the more general fix may be `AsmWriter')
...
llvm-svn: 15932
2004-08-19 21:56:12 +00:00
Reid Spencer
9251cb2ecd
Actually let it compile after file name changes.
...
llvm-svn: 15931
2004-08-19 21:52:49 +00:00
Misha Brukman
170943a795
Stack space for argument passing is 32 regardless of 32- vs. 64-bit arch.
...
Thanks to Nate Begeman for pointing this out.
llvm-svn: 15930
2004-08-19 21:51:19 +00:00
Misha Brukman
f73c87b36c
LR needs to be saved at 16-byte offset on a 64-bit arch
...
llvm-svn: 15929
2004-08-19 21:36:14 +00:00
Misha Brukman
f35b35a926
On 64-bit PowerPC, pointers are 8 bytes, so parameter area offset is 48, not 24
...
llvm-svn: 15928
2004-08-19 21:34:05 +00:00
Reid Spencer
b32e350931
Moved ConfigData -> Configuration
...
llvm-svn: 15927
2004-08-19 21:17:53 +00:00
Misha Brukman
75e987d0b8
This PHI has 4 additional operands, not 2.
...
llvm-svn: 15926
2004-08-19 21:00:12 +00:00
Reid Spencer
90b057bf2a
Moved these files to "SmallExamples" directory.
...
llvm-svn: 15925
2004-08-19 20:16:42 +00:00
Reid Spencer
f30f28e05f
Add the fibonacci example provided by Valery Khamenya.
...
llvm-svn: 15924
2004-08-19 20:10:04 +00:00
Reid Spencer
7d12179af1
Make the SmallExamples programs compile in their new home.
...
llvm-svn: 15923
2004-08-19 20:09:14 +00:00
Misha Brukman
a26a61aa18
Use the appropriate 64-bit register description file.
...
llvm-svn: 15922
2004-08-19 19:36:57 +00:00
Reid Spencer
01ea7aed59
Fixed the test to actually run correctly.
...
llvm-svn: 15921
2004-08-19 19:23:28 +00:00
Reid Spencer
cdce60cae2
Add a test case test test 1.3 alignment removal and to test a regression
...
on disassembly speed (where SlotMachine was being recomputed on each
getSlot() call).
llvm-svn: 15920
2004-08-19 19:11:57 +00:00
Misha Brukman
a5543ac5fb
Fix more remaining 32-bit vestiges of PowerPC
...
llvm-svn: 15919
2004-08-19 18:49:58 +00:00
Misha Brukman
2ff719f74f
Fix another vestige of the 32-bit PowerPC backend.
...
llvm-svn: 15918
2004-08-19 16:50:30 +00:00
Misha Brukman
714d166c22
Correct character prepended to global symbols ('.'), use Mangler consistently
...
llvm-svn: 15917
2004-08-19 16:33:56 +00:00
Misha Brukman
0010ea3042
* Eliminate global base register, r2 is used for that on AIX/PowerPC
...
* Fix bug from 32-bit PowerPC days of 2-register long split
llvm-svn: 15916
2004-08-19 16:29:25 +00:00
Misha Brukman
6c4a085286
Wrap long lines.
...
llvm-svn: 15915
2004-08-19 16:28:30 +00:00
Nate Begeman
d5c6380015
Convert casts that will have no effect into move instructions.
...
llvm-svn: 15914
2004-08-19 08:07:50 +00:00
Nate Begeman
e4e6d92d1d
Clean up floating point instruction selection.
...
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
llvm-svn: 15913
2004-08-19 05:20:54 +00:00
Reid Spencer
dc20389b5c
Implement many new features for llvmc. This is the first version that will
...
actually execute actions and it is been shown to optimize a Stacker program
llvm-svn: 15912
2004-08-19 04:49:47 +00:00
Misha Brukman
b3b5890213
Instead of int64_t, overload itostr with `long long' parameter.
...
This appeases both SparcV9 and 64-bit PowerPC.
llvm-svn: 15910
2004-08-18 22:56:12 +00:00
Reid Spencer
3cff8a04ef
Correct a link, add a TOC entry.
...
llvm-svn: 15909
2004-08-18 20:17:05 +00:00
Reid Spencer
375d78428c
Provided opcode definitions.
...
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.
llvm-svn: 15908
2004-08-18 20:06:19 +00:00
Brian Gaeke
1936ce708d
M_DUMMY_PHI_FLAG is no longer used to distinguish V9::PHI. Get rid of it and
...
its TargetInstrInfo accessor.
llvm-svn: 15907
2004-08-18 20:04:28 +00:00
Brian Gaeke
7593525fcd
Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.
...
llvm-svn: 15906
2004-08-18 20:04:24 +00:00
Brian Gaeke
de44bc018a
Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.
...
Also, squash a use of TargetInstrInfo::isNop().
llvm-svn: 15905
2004-08-18 20:04:21 +00:00
Chris Lattner
1ea6d207ce
Convert to the new MachineFunctionInfo interface
...
llvm-svn: 15904
2004-08-18 18:13:37 +00:00
Chris Lattner
663bf7e765
All targets are now allowed to have their own MachineFunctionInfo objects,
...
also, make getInfo do some checking and cast to the appropriate concrete type.
llvm-svn: 15903
2004-08-18 18:13:16 +00:00
Brian Gaeke
dddd639059
M_PSEUDO_FLAG is no longer used. Get rid of it and its accessor.
...
llvm-svn: 15902
2004-08-18 17:44:17 +00:00
Brian Gaeke
b8183ff647
The SparcV9 target no longer uses any pseudoinstructions (SETSW, SETUW,
...
SETX) or M_PSEUDO_FLAG.
llvm-svn: 15901
2004-08-18 17:44:16 +00:00
Brian Gaeke
2fbe85b1f3
The Create*Const methods don't need to pass around a TargetMachine reference.
...
Other minor cleanups.
llvm-svn: 15900
2004-08-18 17:44:15 +00:00
Brian Gaeke
c03556f67e
Doxygenify some comments.
...
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.
llvm-svn: 15899
2004-08-18 17:44:14 +00:00
Chris Lattner
12754fe6b3
Switch V9 over to using the AsmPrinter base class to do its constant printing
...
Massive thanks to the brg miester for doing the testing. :)
llvm-svn: 15898
2004-08-18 05:29:08 +00:00
Chris Lattner
10262ab3f1
Rename var
...
llvm-svn: 15897
2004-08-18 02:22:55 +00:00
Chris Lattner
ddc7e4863d
Alkis pointed out that this is not a character (we actually support strings)
...
and as such, we should use self revealing names. Hey, makes sense to me!
llvm-svn: 15896
2004-08-18 02:22:34 +00:00
Chris Lattner
6a9f355b1b
new method
...
llvm-svn: 15895
2004-08-17 21:38:51 +00:00
Chris Lattner
ea75199996
Add support for targets without a .zero directive
...
llvm-svn: 15894
2004-08-17 21:38:40 +00:00
Misha Brukman
faa6e51d6e
This file is no longer used.
...
llvm-svn: 15893
2004-08-17 20:23:33 +00:00
Chris Lattner
2501f5852a
Start using alignment output routines from AsmPrinter.
...
Changes to make this more similar to the X86 asmprinter
Fix overalignment of globals.
llvm-svn: 15891
2004-08-17 19:26:03 +00:00
Chris Lattner
866b58d2ef
Start using alignment output routines from AsmPrinter.
...
Changes to make this more similar to the ppc asmprinter
llvm-svn: 15890
2004-08-17 19:25:42 +00:00
Chris Lattner
32ac814f29
Add an overload
...
llvm-svn: 15889
2004-08-17 19:17:10 +00:00
Chris Lattner
1d35c1673f
Add support for alignment
...
llvm-svn: 15888
2004-08-17 19:14:29 +00:00
Chris Lattner
0c2ab8a9d4
Add a new helper method to get log2(type alignment)
...
llvm-svn: 15887
2004-08-17 19:13:00 +00:00
Chris Lattner
65066a40ea
Add punctuation, add a new method
...
llvm-svn: 15886
2004-08-17 19:12:44 +00:00
Misha Brukman
a9ed31a50b
Add itostr(long) for our furry 64-bit friends.
...
llvm-svn: 15885
2004-08-17 18:08:52 +00:00
Misha Brukman
0f2e2f7e5b
Ultra-doxygenify some function header comments.
...
llvm-svn: 15884
2004-08-17 17:52:36 +00:00
Chris Lattner
caf3f3e970
Check constant expression validity more strictly
...
llvm-svn: 15883
2004-08-17 17:28:46 +00:00
Chris Lattner
fca2833838
Work around PR424 for old c/c++ frontends.
...
llvm-svn: 15882
2004-08-17 17:26:41 +00:00
Chris Lattner
cc21bfd809
Print comments with ;
...
llvm-svn: 15881
2004-08-17 16:27:26 +00:00
Chris Lattner
da6beac0ff
Use a designated comment character when printing comments.
...
llvm-svn: 15880
2004-08-17 16:27:05 +00:00
Chris Lattner
db00f45936
Allow targets to specify a comment character
...
llvm-svn: 15879
2004-08-17 16:26:36 +00:00
Reid Spencer
9f093edf1a
Added a *very* initial cut at a lexicon for LLVM. I don't plan to write
...
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.
llvm-svn: 15878
2004-08-17 09:38:50 +00:00
Reid Spencer
be6a243b9f
Documented (Java properties file like) syntax of config file format
...
Added definitions for some of the configuration items.
Made the document HTML 4.01 Strict compliant.
Ran ispell on it.
llvm-svn: 15877
2004-08-17 09:18:37 +00:00
Reid Spencer
cde8a13a1c
Add a reference to the ComilerDriver documentation.
...
llvm-svn: 15876
2004-08-17 08:01:57 +00:00
Reid Spencer
c3e436427b
Bytecode File Format Changes:
...
- File format version number bumped to 4
- Writer will now align nothing
- Reader now only expects alignment for version 3 or earlier
llvm-svn: 15875
2004-08-17 07:45:14 +00:00
Reid Spencer
0b85d03b57
Documented the removal of alignment in version 4 bytecode files (version 3
...
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.
llvm-svn: 15874
2004-08-17 07:43:43 +00:00
Nate Begeman
0818541631
Re-fix hiding the Frame Pointer from the register allocator in functions
...
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
llvm-svn: 15873
2004-08-17 07:17:44 +00:00
Chris Lattner
b3739ceb6e
Use the AsmPrinter emitGlobalConstant.
...
llvm-svn: 15872
2004-08-17 06:48:55 +00:00
Chris Lattner
404bc3dcaf
Add missing \t
...
llvm-svn: 15871
2004-08-17 06:48:34 +00:00
Chris Lattner
9fa0fc4d5e
Add support for targets that have .quad, drop extra tab inserted
...
llvm-svn: 15870
2004-08-17 06:48:16 +00:00
Chris Lattner
f97bce7214
Use the emitGlobalConstant defined in AsmPrinter
...
llvm-svn: 15869
2004-08-17 06:37:12 +00:00
Chris Lattner
8452a1f6df
Implement emitGlobalConstant
...
llvm-svn: 15868
2004-08-17 06:36:49 +00:00
Chris Lattner
81e514b8a6
Add some hooks
...
llvm-svn: 15867
2004-08-17 06:36:27 +00:00
Chris Lattner
ac253447d3
New, more general, interface.
...
llvm-svn: 15866
2004-08-17 06:07:43 +00:00
Chris Lattner
104bfb7576
Allow an arbitrary prefix
...
llvm-svn: 15865
2004-08-17 06:06:54 +00:00
Chris Lattner
c16a4a7b55
Allow an arbitrary prefix.
...
llvm-svn: 15864
2004-08-17 06:06:37 +00:00
Chris Lattner
6d42cbd71a
We now allow targets to use any prefix they want for global symbols. Lets
...
hear it for ".".
llvm-svn: 15863
2004-08-17 06:06:19 +00:00
Misha Brukman
9254441cdf
Rewrite targets/rules to generate files for just PowerPC or PPC{32,64}
...
llvm-svn: 15862
2004-08-17 05:11:54 +00:00
Misha Brukman
4eab7f3d5b
Register classes are target-dependent
...
llvm-svn: 15861
2004-08-17 05:10:31 +00:00
Misha Brukman
851a54656a
#include <map> is not necessary here
...
llvm-svn: 15860
2004-08-17 05:09:39 +00:00
Misha Brukman
fd2df5afab
`PowerPC' is no longer a real target
...
llvm-svn: 15859
2004-08-17 05:09:10 +00:00
Misha Brukman
38c61506a8
Move variables and methods which need PPC{32,64}* distinction to subclasses
...
llvm-svn: 15858
2004-08-17 05:08:44 +00:00
Misha Brukman
ba7fe16dbf
No need for an `is64bit' flag
...
llvm-svn: 15857
2004-08-17 05:06:47 +00:00
Misha Brukman
fe3e46a0b3
PowerPCInstrInfo and PowerPCRegisterInfo have gone away; they are replaced
...
by 32- and 64-bit customized files, named appropriately.
llvm-svn: 15856
2004-08-17 05:05:00 +00:00
Misha Brukman
de4fc10733
Consistently name passed with 32 or 64 in their name
...
llvm-svn: 15855
2004-08-17 05:02:58 +00:00
Misha Brukman
68ede7e9ba
PowerPCRegisterInfo no longer takes a bool to differentiate 32 vs 64 bits
...
llvm-svn: 15854
2004-08-17 05:02:18 +00:00
Misha Brukman
d61283f347
The PowerPCInstrInfo class has gone away.
...
llvm-svn: 15853
2004-08-17 05:00:46 +00:00
Misha Brukman
0674182457
PowerPCInstrInfo has gone away, PPC32 and PPC64 share opcodes.
...
llvm-svn: 15852
2004-08-17 04:58:50 +00:00
Misha Brukman
ac0ae7c215
PowerPC 32-/64-bit split: Part II, 64-bit customizations on PowerPC
...
llvm-svn: 15851
2004-08-17 04:57:37 +00:00
Misha Brukman
116f9277f6
PowerPC 32-/64-bit split: Part I, PPC32* bit files, adapted from former PowerPC*
...
llvm-svn: 15850
2004-08-17 04:55:41 +00:00
Chris Lattner
c9d99efdd3
Do not #include files into the llvm namespace
...
llvm-svn: 15849
2004-08-17 03:08:28 +00:00
Reid Spencer
f8a18099fb
Correct the comments in the symbol table writer to reflect reality.
...
llvm-svn: 15848
2004-08-17 02:59:02 +00:00
Chris Lattner
a8fbbc0ec3
Print float constants as 4 byte values.
...
Also, fix endianness problems when cross compiling from little-endian host.
llvm-svn: 15847
2004-08-17 02:48:44 +00:00
Chris Lattner
bc9372bf77
Make sure to put an _ prefix on all identifiers!
...
Also, add some (currently disabled) code to print float's as 32-bits.
llvm-svn: 15846
2004-08-17 02:29:00 +00:00
Chris Lattner
07e78f177a
Some asmwriters want an _ prefix
...
llvm-svn: 15845
2004-08-17 02:28:26 +00:00
Chris Lattner
278f1cb3d4
Some asmweriters want an _ prefix
...
llvm-svn: 15844
2004-08-17 02:28:12 +00:00
Reid Spencer
9a91081c51
Technical Corrections (thanks to Robert Mykland):
...
- Define the "opcode" data type and reference the Instruction.def file
- Clean up the definition of symtab by indicating that it is composed of
two llists.
- Fix some broken links.
llvm-svn: 15843
2004-08-17 00:49:03 +00:00
Chris Lattner
5491774934
More changes to make PPC32 and X86 more similar
...
llvm-svn: 15842
2004-08-16 23:38:36 +00:00
Chris Lattner
b4f1f71bf0
Minor changes to make the diff be nothing against the X86 version
...
llvm-svn: 15841
2004-08-16 23:30:16 +00:00
Chris Lattner
0ced90583d
Finegrainify namespacification
...
Start using the AsmPrinter base class to factor out a bunch of code
llvm-svn: 15840
2004-08-16 23:25:21 +00:00
Chris Lattner
9cf46456cb
Start using the AsmPrinter to emit our first class constants. This also
...
drops our half-assed support for cygwin, which noone uses and doesn't work
anyway.
llvm-svn: 15839
2004-08-16 23:16:06 +00:00
Chris Lattner
6a8e0f511b
Initial implementation of the asmprinter base class
...
llvm-svn: 15838
2004-08-16 23:15:22 +00:00
Chris Lattner
7e3f28fcdf
Moved this file out of lib/CodeGen
...
llvm-svn: 15837
2004-08-16 22:38:02 +00:00
Chris Lattner
2cb145ceb5
Hacks to make the MachineFunction class be able to delete the MFI object
...
without knowing anything about it.
llvm-svn: 15836
2004-08-16 22:37:18 +00:00
Chris Lattner
95de5ddbbd
Code moved out of lib/CodeGen/MachineFunction.cpp
...
llvm-svn: 15835
2004-08-16 22:36:54 +00:00
Chris Lattner
a1d7802e3c
Move this code to lib/Target/SparcV9/MachineFunctionInfo.cpp
...
llvm-svn: 15834
2004-08-16 22:36:34 +00:00
Chris Lattner
bb9aa25a52
This file is moving to lib/Target/SparcV9
...
llvm-svn: 15833
2004-08-16 22:36:10 +00:00
Chris Lattner
5217efc496
Fit into 80 lines, add a gross hack for MachineFunctionInfo
...
llvm-svn: 15832
2004-08-16 22:35:26 +00:00
Chris Lattner
359c83fb5a
These files now live in lib/Target/SparcV9
...
llvm-svn: 15831
2004-08-16 21:56:15 +00:00
Chris Lattner
9fb30a4257
Move MachineCodeForInstruction.h and MachineFunctionInfo.h into lib/Target/SparcV9
...
llvm-svn: 15830
2004-08-16 21:55:02 +00:00
Chris Lattner
491a52cf22
Nuke this file
...
llvm-svn: 15829
2004-08-16 21:36:40 +00:00