Commit Graph

15988 Commits

Author SHA1 Message Date
Reid Spencer
be0b356593 PR466:
* Make the linker find lib*.bca files now instead of lib*.bc since those
  are what the makefiles now generate for bytecode archives.
* Make sure the linker only links archives when LinkLibraries is called.
  Previously if it found a lib*.bc file and that file was a bytecode file,
  it would link in the entire bytecode. This could make -lc -lc fail with
  duplicate symbols error but it shouldn't as searching multiple libraries,
  even the same one more than once, is permitted.
* Now that the above problems are corrected, implement the dependent libs
  feature. After the module is linked with all specified libraries, the
  LinkLibraries function will obtain the set of dependent libraries from
  the linked modules and attemp to find and link against those libraries.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18428 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 09:52:10 +00:00
Reid Spencer
8aa9a8ca98 Standardize the format of the runtime libraries makefiles.
* Don't have lines longer than 80 cols
* Blank line after the header
* Reduce spaces in var definitions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18427 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 09:31:40 +00:00
Reid Spencer
f5b709854f For PR466:
Much of what this Makefile did to make a libcrtend.a file is now supported
by Makefile.rules when BYTECODE_LIBRARY=1 is specified. So, we've
simplified the make rules for building this library.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18426 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 09:29:49 +00:00
Reid Spencer
9a2f137765 For PR466:
Change construction of bytecode libraries from producing a single bytecode
file to producing a library containing bytecode files. This gets around the
problem of multiple symbol definitions in the linker if something like
-lc -lc is attempted on the command line. Previously this happened because
the linker would find libc.bc as a "library". It will now find libc.a which
it can simply search for missing symbols instead of linking in wholesale.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18425 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 09:28:21 +00:00
Reid Spencer
3298f87c0b Remove this left-over crud from the automake experiment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18424 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 09:23:51 +00:00
Reid Spencer
0de66b5cc8 Implement file replacement correctly even with the f (TruncateNames) flag
set. The member name comparison was failing for truncated names. This patch
fixes that. Truncated names are now properly replaced.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18423 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 09:21:55 +00:00
Reid Spencer
86ac2dcda1 Fix seriously broken implementation of GetMagicNumber.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18422 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 09:09:48 +00:00
Reid Spencer
fc757b5217 Search for tclsh last so we don't find the FreeBSD warning script too early
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18421 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 07:31:22 +00:00
Reid Spencer
104298d1b4 Search for tclsh last so we don't find the FreeBSD warning script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18420 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 07:29:17 +00:00
Tanya Lattner
ad7654f7c4 Reworked branch adding in prologue. Added check for infinite loops which are not modulo scheduled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18419 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 07:22:15 +00:00
Chris Lattner
fa07e4fc30 Implement a FIXME by checking to make sure that a malloc is not being used
in scary and unknown ways before we promote it.  This fixes the miscompilation
of 188.ammp that has been plauging us since a globalopt patch went in.

Thanks a ton to Tanya for helping me diagnose the problem!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18418 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 07:11:07 +00:00
Chris Lattner
bc965b97ad Fix a minor bug where we set a var to initialized on malloc, not on store.
This doesn't fix anything that I'm aware of, just noticed it by inspection


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18417 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 06:25:58 +00:00
Reid Spencer
cda35f824b Fix the tclsh test to find tclsh8.[34] and tclsh8.[34].X as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18415 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 04:17:20 +00:00
Reid Spencer
d56a04f680 * Make sure the cache variable gets cached
* Don't search a bunch of .. directories for something we'd never find,
  because we don't imbed tclsh into LLVM.
* Look for various tclsh versions because some platforms don't install the
  tclsh link but just have tclsh8.3 or tclsh8.4 or some such.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18414 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 04:15:24 +00:00
Chris Lattner
a05ec71f45 Remove dead field
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18412 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 02:35:38 +00:00
Chris Lattner
25f89656b0 This program doesn't break anything anymore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18411 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-02 02:26:18 +00:00
Misha Brukman
b755d2ee78 Reid has implemented llvm-ranlib. Thanks, Reid!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18410 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 21:07:40 +00:00
Misha Brukman
a424228023 * Hyphenate ``constant-propagate''
* Add testing notes to the instruction section similar as for intrinsics
* Mention adding codegen support for new instructions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18409 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 20:58:54 +00:00
Misha Brukman
e940714e4e Remove duplicated link to "Machine backend"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18408 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 19:12:27 +00:00
Tanya Lattner
9855b84469 Reverting this patch:
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20041122/021428.html

It broke Mutlisource/Applications/obsequi


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18407 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 18:27:03 +00:00
Chris Lattner
527efc6742 Initial support for packed types, contributed by Morten Ofstad
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18406 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 17:14:28 +00:00
Chris Lattner
f71755dc56 Remove unneeded cast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18405 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 17:13:05 +00:00
Chris Lattner
f0228053f8 Get GEP's working with packed types. Contributed by Morten Ofstad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18404 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 17:12:16 +00:00
Chris Lattner
d92017a924 Add line # info
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18403 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 17:10:36 +00:00
John Criswell
c7f426449d Fixed pathname to LLVM tools.
Thanks to Vladimir Merzliakov for finding this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18402 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 14:12:30 +00:00
Reid Spencer
0b4f468bf6 Be a little more explicit about how to configure LLVM with the --prefix
option so that permissions errors don't occur if the default, /usr/local,
is taken.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18401 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 05:15:44 +00:00
Chris Lattner
302ed2a3c1 Fix typeo, thanks to Duraid for pointing it out
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18400 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-01 04:16:29 +00:00
Reid Spencer
0022b83491 Revert version 1.39. It breaks the ordering of the library processing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18399 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 22:54:48 +00:00
Chris Lattner
40e7c35a2f Do not let GCC emit a warning for INT64_MIN
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18398 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 21:33:58 +00:00
Brian Gaeke
33ce43e8a8 Sparcs behave better if we use <alloca.h> and avoid messing with __builtin_alloca.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18397 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 21:27:01 +00:00
Tanya Lattner
78887f46ac Added TCLSH var to site.exp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18396 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 19:13:06 +00:00
Chris Lattner
d616597b85 Move this from the C test suite
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18395 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 18:25:12 +00:00
Chris Lattner
11875ec1b9 This is a c++ test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18394 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 18:25:05 +00:00
Chris Lattner
adc539044a Add back -e, which apparently works in sh's echo but not tcsh's, which does
not need it.  Also, grep some output so we know that this command does something.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18393 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 17:47:13 +00:00
Chris Lattner
5b0a4ff668 If TESTSUITE is set, we obviously want to run dejagnu
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18392 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 17:45:08 +00:00
Chris Lattner
532343b24e Fix the JIT when being used from llvm-db
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18391 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 17:41:49 +00:00
Chris Lattner
907e9bc3f1 do not pass -e into llvm-db as a command.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18390 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 17:13:13 +00:00
Chris Lattner
13eef45ee5 Put the output in the temporary location
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18389 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 17:12:00 +00:00
Chris Lattner
15a286b665 This is a cross platform fail, failing on freebsd as well
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18388 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 17:10:47 +00:00
Chris Lattner
6b205c3ef1 This pass is completely broken.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18387 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 17:09:06 +00:00
Chris Lattner
3af4b4fe78 RevisionNum is read by error(), initialize it early.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18386 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 16:58:18 +00:00
Chris Lattner
3a9e1fa428 This was fixed with the recent tester changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18385 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 16:48:26 +00:00
Brian Gaeke
cb7a76283b Update list of failing benchmarks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18384 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:15:44 +00:00
Brian Gaeke
9e0b9028c7 If we're about to emit something like:
%f0 = fmovs %f0
  %f1 = fmovs %f1

then just delete the FpMOVD pseudo-instruction instead.  Also, add
statistics and debug printouts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18383 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:15:15 +00:00
Reid Spencer
0fcb9410b9 Add a check for the tclsh program needed by dejagnu. This can have weird
names that have version numbers in it so this macro, DJ_AC_PATH_TCLSH will
make the necessary checks. The makefile variable TCLSH is set to the path
found.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18382 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:11:54 +00:00
Chris Lattner
0f535c6fa8 Squelch warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18381 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:47:34 +00:00
Chris Lattner
7d66434023 This passes on darwin now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18380 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:38:41 +00:00
Chris Lattner
0284628e8e Fix several bugs in 'op x, imm' handling. Foremost is that we now emit
addi r3, r3, -1
instead of
   addi r3, r3, 1

for 'sub int X, 1'.

Secondarily, this fixes several cases where we could crash given an unsigned
constant.  And fixes a couple of minor missed optimization cases, such as
xor X, ~0U -> not X


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18379 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:30:20 +00:00
Reid Spencer
a7a5cc889c Up the compression threshold to 64K so we avoid it for all but the largest
bytecode files. This should help linking substantially.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18378 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:13:34 +00:00
Chris Lattner
5a85d9c664 Fix test/Regression/Transforms/LICM/2004-09-14-AliasAnalysisInvalidate.llx
This only fails on darwin or on X86 under valgrind.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18377 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:01:15 +00:00