Misha Brukman [Mon, 23 Aug 2004 20:25:33 +0000 (20:25 +0000)]
Document 'gmake install' vs. 'install-bytecode' (used for bytecode libs)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16004
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Aug 2004 19:29:54 +0000 (19:29 +0000)]
Moved small examples from /projects/SmallExamples to /examples.
Made the "ModuleMaker" into an example since its just one source file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16003
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Aug 2004 19:28:39 +0000 (19:28 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16002
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Aug 2004 18:06:31 +0000 (18:06 +0000)]
Fix Title line
Make the "DIRS" option descend any directory with a Makefile.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16001
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 23 Aug 2004 17:54:45 +0000 (17:54 +0000)]
Note: do not use GNU binutils under AIX, they're not stable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16000
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Aug 2004 17:47:16 +0000 (17:47 +0000)]
Change the makefile back so it descends any directory with a Makefile.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15999
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 22 Aug 2004 18:06:59 +0000 (18:06 +0000)]
Many useful corrections resulting from Chris Lattner's review. Thanks Chris!
Misha: you're next. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15996
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 22 Aug 2004 18:03:25 +0000 (18:03 +0000)]
Provide support for retaining the version number found in a config file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15995
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 22 Aug 2004 18:02:41 +0000 (18:02 +0000)]
Add the VERSION token.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15994
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 22 Aug 2004 18:02:13 +0000 (18:02 +0000)]
Add support for version numbers.
Allow CRLF as a line terminator (as well as plain LF)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15993
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 22 Aug 2004 18:01:19 +0000 (18:01 +0000)]
Shorten lines so this file can be used as the documentation example
directly. Remove -pre (experimental pass).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15992
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 22 Aug 2004 08:10:15 +0000 (08:10 +0000)]
Kill a majority of unnecessary sign extensions for byte loads
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15991
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 22 Aug 2004 08:09:17 +0000 (08:09 +0000)]
Don't hard code the offset of the saved R31 in functions with frame pointers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15990
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Sat, 21 Aug 2004 23:40:49 +0000 (23:40 +0000)]
Bytecode libraries are installed with `make install-bytecode'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15989
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 22:37:42 +0000 (22:37 +0000)]
First complete version. The details of configuration are now correctly
stated. PLEASE REVIEW THIS DOCUMENT NOW! :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15988
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 21:39:24 +0000 (21:39 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15987
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 21:00:24 +0000 (21:00 +0000)]
Correct to change interface of the analyzer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15986
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:58:19 +0000 (20:58 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15985
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:53:56 +0000 (20:53 +0000)]
Get rid of an extraneous local variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15984
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:52:03 +0000 (20:52 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15983
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:50:49 +0000 (20:50 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15982
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:49:23 +0000 (20:49 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15981
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:42:28 +0000 (20:42 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15980
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 21 Aug 2004 20:42:14 +0000 (20:42 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15979
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:41:12 +0000 (20:41 +0000)]
Add new methods:
- get the total number of types in the global type list
- handle dependent libraries
- handle target triple
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15978
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 20:40:08 +0000 (20:40 +0000)]
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15977
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:15:25 +0000 (20:15 +0000)]
Alignment is now in bits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15976
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:14:40 +0000 (20:14 +0000)]
Switch from bytes to bits for alignment.
Also, change GPRC for PPC32 to align on 32-bit boundary instead of 64-bit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15975
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:14:13 +0000 (20:14 +0000)]
Switch from bytes to bits for alignment for consistency
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15974
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:13:52 +0000 (20:13 +0000)]
Reduce uses of getRegClass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15973
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:13:09 +0000 (20:13 +0000)]
Convert regclass alignment from bytes to bites
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15972
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:09:46 +0000 (20:09 +0000)]
Convert bytes to bits in alignment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15971
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:04:59 +0000 (20:04 +0000)]
Register info alignment is in bits, frame object alignment is (currently) in
bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15970
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 20:00:36 +0000 (20:00 +0000)]
Make alignment be in bits, just like size is
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15969
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 19:51:17 +0000 (19:51 +0000)]
Reduce uses of getRegClass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15968
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 19:45:10 +0000 (19:45 +0000)]
Now that we have per-register spill size/alignment info, remove more uses
of getRegClass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15967
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 19:42:03 +0000 (19:42 +0000)]
Infer the spillsize/alignment of a register based on the register classes
it is embedded into.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15966
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 19:21:21 +0000 (19:21 +0000)]
Support "Methods" in register classes in CodgeGenRegisterClass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15965
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 19:11:03 +0000 (19:11 +0000)]
Fix warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15964
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Aug 2004 16:11:02 +0000 (16:11 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15963
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sat, 21 Aug 2004 05:56:39 +0000 (05:56 +0000)]
Move XForm instructions over to the auto-generated asm writer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15962
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 04:05:00 +0000 (04:05 +0000)]
Start parsing register classes into a more structured form
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15961
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 02:24:57 +0000 (02:24 +0000)]
Read in declared reg sizes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15960
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 02:17:39 +0000 (02:17 +0000)]
Add two values
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15959
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Aug 2004 00:50:59 +0000 (00:50 +0000)]
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?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15958
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 22:53:11 +0000 (22:53 +0000)]
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 :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15957
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 20 Aug 2004 18:46:54 +0000 (18:46 +0000)]
remove some things from the todo list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15956
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Aug 2004 18:09:18 +0000 (18:09 +0000)]
Do not register ppc64 yet, as it breaks the SparcV9 backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15955
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Aug 2004 18:07:39 +0000 (18:07 +0000)]
quish a warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15954
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 15:37:30 +0000 (15:37 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15953
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 20 Aug 2004 09:56:22 +0000 (09:56 +0000)]
Implement code to convert SetCC into straight line code where appropriate. Add necessary instructions for this transformation to the .td file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15952
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:32:32 +0000 (09:32 +0000)]
Remove even the slightest chance of a race condition occurring :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15951
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:24:07 +0000 (09:24 +0000)]
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15950
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:21:51 +0000 (09:21 +0000)]
Add CONFIG_FILES so the language specific config files can be installed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15949
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:20:05 +0000 (09:20 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15948
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:14:05 +0000 (09:14 +0000)]
Implement Assembly support.
Consolidate platform-specific code into "sys" namespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15947
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:10:31 +0000 (09:10 +0000)]
Changes resulting from change in autoconf/configure.in (rename a #define)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15946
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:08:57 +0000 (09:08 +0000)]
Actually name the #define correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15945
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:05:15 +0000 (09:05 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15944
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:03:57 +0000 (09:03 +0000)]
Update after change to autoconf/configure.ac
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15943
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 09:03:12 +0000 (09:03 +0000)]
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>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15942
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Aug 2004 08:34:27 +0000 (08:34 +0000)]
New testcase that the vector support does not work with yet.
This is also designed to make lowering a bitch :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15941
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 06:06:43 +0000 (06:06 +0000)]
Added various tests in support of Packed Types.
Tests kindly provided by Brad Jones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15940
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 06:02:24 +0000 (06:02 +0000)]
Added a test case for packed types. Test case kindly provided by Brad Jones
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15939
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 20 Aug 2004 06:00:58 +0000 (06:00 +0000)]
Packed types, brought to you by Brad Jones
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15938
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 20 Aug 2004 01:49:59 +0000 (01:49 +0000)]
Avoid building samples. Require explicit list of directory names to build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15937
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Aug 2004 01:11:16 +0000 (01:11 +0000)]
Make people explicitly add dirs to this. Remove ModuleMaker as it currently
does not build (it must be configured before it will work)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15936
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Aug 2004 01:07:54 +0000 (01:07 +0000)]
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15935
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Aug 2004 00:36:23 +0000 (00:36 +0000)]
Bug fixed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15934
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 20 Aug 2004 00:30:39 +0000 (00:30 +0000)]
If we are linking two global variables and they have the same size, do not
spew warnings, even if the types don't match.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15933
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 21:56:12 +0000 (21:56 +0000)]
Fix opcodes being printed in caps (the more general fix may be `AsmWriter')
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15932
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 21:52:49 +0000 (21:52 +0000)]
Actually let it compile after file name changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15931
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 21:51:19 +0000 (21:51 +0000)]
Stack space for argument passing is 32 regardless of 32- vs. 64-bit arch.
Thanks to Nate Begeman for pointing this out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15930
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 21:36:14 +0000 (21:36 +0000)]
LR needs to be saved at 16-byte offset on a 64-bit arch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15929
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 21:34:05 +0000 (21:34 +0000)]
On 64-bit PowerPC, pointers are 8 bytes, so parameter area offset is 48, not 24
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15928
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 21:17:53 +0000 (21:17 +0000)]
Moved ConfigData -> Configuration
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15927
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 21:00:12 +0000 (21:00 +0000)]
This PHI has 4 additional operands, not 2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15926
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 20:16:42 +0000 (20:16 +0000)]
Moved these files to "SmallExamples" directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15925
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 20:10:04 +0000 (20:10 +0000)]
Add the fibonacci example provided by Valery Khamenya.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15924
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 20:09:14 +0000 (20:09 +0000)]
Make the SmallExamples programs compile in their new home.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15923
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 19:36:57 +0000 (19:36 +0000)]
Use the appropriate 64-bit register description file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15922
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 19:23:28 +0000 (19:23 +0000)]
Fixed the test to actually run correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15921
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 19:11:57 +0000 (19:11 +0000)]
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).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15920
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 18:49:58 +0000 (18:49 +0000)]
Fix more remaining 32-bit vestiges of PowerPC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15919
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 16:50:30 +0000 (16:50 +0000)]
Fix another vestige of the 32-bit PowerPC backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15918
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 16:33:56 +0000 (16:33 +0000)]
Correct character prepended to global symbols ('.'), use Mangler consistently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15917
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 16:29:25 +0000 (16:29 +0000)]
* Eliminate global base register, r2 is used for that on AIX/PowerPC
* Fix bug from 32-bit PowerPC days of 2-register long split
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15916
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 19 Aug 2004 16:28:30 +0000 (16:28 +0000)]
Wrap long lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15915
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Thu, 19 Aug 2004 08:07:50 +0000 (08:07 +0000)]
Convert casts that will have no effect into move instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15914
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Thu, 19 Aug 2004 05:20:54 +0000 (05:20 +0000)]
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15913
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 19 Aug 2004 04:49:47 +0000 (04:49 +0000)]
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15912
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 18 Aug 2004 22:56:12 +0000 (22:56 +0000)]
Instead of int64_t, overload itostr with `long long' parameter.
This appeases both SparcV9 and 64-bit PowerPC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15910
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 18 Aug 2004 20:17:05 +0000 (20:17 +0000)]
Correct a link, add a TOC entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15909
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 18 Aug 2004 20:06:19 +0000 (20:06 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15908
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 18 Aug 2004 20:04:28 +0000 (20:04 +0000)]
M_DUMMY_PHI_FLAG is no longer used to distinguish V9::PHI. Get rid of it and
its TargetInstrInfo accessor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15907
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 18 Aug 2004 20:04:24 +0000 (20:04 +0000)]
Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15906
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 18 Aug 2004 20:04:21 +0000 (20:04 +0000)]
Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.
Also, squash a use of TargetInstrInfo::isNop().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15905
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 18 Aug 2004 18:13:37 +0000 (18:13 +0000)]
Convert to the new MachineFunctionInfo interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15904
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 18 Aug 2004 18:13:16 +0000 (18:13 +0000)]
All targets are now allowed to have their own MachineFunctionInfo objects,
also, make getInfo do some checking and cast to the appropriate concrete type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15903
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 18 Aug 2004 17:44:17 +0000 (17:44 +0000)]
M_PSEUDO_FLAG is no longer used. Get rid of it and its accessor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15902
91177308-0d34-0410-b5e6-
96231b3b80d8