Commit Graph

7972 Commits

Author SHA1 Message Date
John Criswell
83ca6ec8a3 Added the use of the const keyword.
Have gccld find the path to llc and gcc instead of having the library do it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8586 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 19:04:22 +00:00
John Criswell
e5b3e1559b In ExecWait(), made the child process exit if it can't execve() the new
program.
Added the use of const (which compiles and is hopefully correct).
Added comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8585 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 19:02:49 +00:00
Misha Brukman
f1d01fb6a4 Added sections about debugging mis-compilations and incorrect code generation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8584 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 18:51:47 +00:00
Misha Brukman
0bb806bd9a Do not put DEBUG() guard around error condition; this must *always* be printed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8583 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 18:21:48 +00:00
Misha Brukman
4104f23e52 Fix the flag on `rm' to properly do a recursive deletion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8582 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 18:20:35 +00:00
Chris Lattner
63bd61330b Change FunctionInfo from being an annotation put on Functions to be
something which is mapped from functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8580 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 17:26:22 +00:00
John Criswell
621727c29e Removed the use of the environ variable and instead use the environment array
passed into main().  This may (or may not) be more portable, but it looks
nicer.
Added functions to copy the environment array and modify the copy, thus
preserving the environment.
Switched from using system() to using ExecWait().
The code now removes the assembly file generated when using the -native option.
Fixed the remove_env() function: The previous revision truncated the
environment variable list.  This version just zaps the variable as intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8579 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 15:20:51 +00:00
John Criswell
e9ba8b3674 Added the ExecWait() function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8578 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 15:14:25 +00:00
John Criswell
5afb5f6377 Added the ExecWait() function. It executes a program with the specified
arguments and environment.
Perhaps it should be merged with the RunProgramWithTimeout function, but I'd
want to allow it to inherit the parent process's stdin and stdout.
I'll save that for a rainy day...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8577 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 15:13:59 +00:00
Chris Lattner
35f474acd6 fix misspelling analyse -> analyze
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8576 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 15:00:45 +00:00
John Criswell
58ebcd0d82 Renamed the link page to llvmlink.html
Added initial pages for the extract and llvm-link commands.
Reworded the description of the -load option for analyze to hopefully make it
more clear.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8575 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 14:11:24 +00:00
Chris Lattner
dd408e12d6 new old testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8574 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 05:00:56 +00:00
Chris Lattner
79f03d350e Use new method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8573 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 05:00:07 +00:00
Chris Lattner
0981b62eec Change the semancics of the dropallrefs method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8572 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 04:58:59 +00:00
Chris Lattner
0c448e58d3 Add new deleteBody method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8571 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17 04:58:43 +00:00
John Criswell
dabaf7de39 Added the -native option.
With this option, gccld links the program into LLVM bytecode and a native code
binary.  This allows llvmgcc to correctly tell GNU configure scripts when
things aren't defined properly (because the native link will fail).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8570 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 21:27:35 +00:00
John Criswell
d16afe9d3e Updated the name of the linker to llvm-link.
This should fix the MultiSource tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8569 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 20:02:22 +00:00
Chris Lattner
cc838348fc Fix bug raising allocations whose call sites were invoke instructions.
Thanks to brg for tracking down the problem so precisely!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8568 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 19:42:21 +00:00
Chris Lattner
1cbcd0fd48 This is effectively a complete rewrite of the globaldce algorithm, resulting
in it being both shorter and more effective.  It no longer depends on the
callgraph, so one FIXME has been fixed.

Additionally, this pass was not able to delete recursive (but dead) functions
if they were pointed to by global variables which were also dead.  In fact
this pass had a lot of problems deleting functions which were only pointed
to by dead globals and other stuff.

Fixing this means that the entire EH library should be stripped away now from
programs that don't use sjlj or exceptions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8567 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 19:27:31 +00:00
Brian Gaeke
c86e84bcf3 Add missing apostrophe. It's been bugging me for years.
No really, years.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8566 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 18:00:35 +00:00
John Criswell
ddb7b4ed73 Regenerated configure with Misha's changes.
Now link is llvm-link and things are alphabetized.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8565 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:54:19 +00:00
Brian Gaeke
305f02dd64 Fix typo in comment. Take out some random whitespace.
(Partial merge from my working file)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8564 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:38:05 +00:00
Misha Brukman
e655a637a7 These transitional scripts are no longer necessary, no one should have `as' or
`dis' anymore.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8563 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:37:32 +00:00
Brian Gaeke
d0534a863a Edit comment for accuracy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8562 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:36:50 +00:00
Chris Lattner
dd3e51dd35 Remove obsolete -abort-on-exception flag from LLI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8561 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:35:14 +00:00
Chris Lattner
e22040c84a Remove obsolete option
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8560 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:34:36 +00:00
Misha Brukman
950971dfe6 Fixed spelling & grammar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8559 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:31:46 +00:00
Misha Brukman
e78760e179 Renamed as' => llvm-as', dis' => llvm-dis', link' => llvm-link'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8558 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:29:54 +00:00
Misha Brukman
aad65f6c18 link' is now llvm-link'. Also alphabetized the tools for easy reference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8557 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:22:55 +00:00
Misha Brukman
c679d7e88f link' is now llvm-link'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8556 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:21:52 +00:00
Misha Brukman
64899a4fb9 link' has become llvm-link'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8555 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 15:21:21 +00:00
Vikram S. Adve
5be7434c8b Fix longjmp case so that, along with the call to abort(), we also
generate the appropriate CallArgsDescriptor and tmp. virtual regs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8554 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 05:56:22 +00:00
Vikram S. Adve
bed4effb84 Add flag to control whether or not delay slots are filled during
instruction scheduling (this is off by default).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8553 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 05:55:15 +00:00
John Criswell
1ce5c596a2 Allow multiple object trees to use the source tree tests at once by
using a QMTEST_CLASS_PATH local to the object tree.
Add the gui target to start the QMTest gui (saves writing a few lines of
documentation too).	:)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8552 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 02:59:26 +00:00
John Criswell
08acb9b87f Have the configure script put llvm.py into the object root.
The QMTest program can then use that as the location for loading test and
resource class, thus compiling the Python code into the object root as
desired.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8551 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-16 02:12:45 +00:00
Chris Lattner
0df847aa5e Put llvm .bc files into the BytecodeObj subdirectory instead of the Bytecode
subdirectory.  This prevents the 'make clean' rule from removing lib/Bytecode


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8550 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 22:17:02 +00:00
John Criswell
538a317d03 QMTest test and resource classes are always register before running the tests.
This ensures that any python bytecode generated by another platform is
replaced with new pythong bytecode before the tests begin.

Perferably, a better method will be implemented in the next few weeks.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8549 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 21:54:49 +00:00
John Criswell
473741930e Removing Makefiles. Regression tests are now run by QMTest.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8548 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 20:21:38 +00:00
John Criswell
7f8e3aff0e Removing Makefile. The QMTest program now handles the running of these tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8547 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 20:18:06 +00:00
John Criswell
1070840eda Removed llvm/tools/as, llvm/tools/dis, and runtime/GCCLibraries/libexception.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8546 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 20:12:48 +00:00
Misha Brukman
b6cb66f1c3 Renamed as' => llvm-as', dis' => llvm-dis', link' => llvm-link'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8545 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 20:04:28 +00:00
Misha Brukman
14285c89e7 Renamed as' => llvm-as', dis' => llvm-dis'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8544 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 20:02:53 +00:00
Chris Lattner
af229bb669 Fix building outside the srcdir, again
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8543 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 19:22:36 +00:00
Chris Lattner
98d58862ac Fix building into a different obj directory
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8542 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 19:20:11 +00:00
Misha Brukman
3ef3beb1d7 link' is being renamed to llvm-link'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8541 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 18:34:34 +00:00
John Criswell
1b82432a83 Modified the checks slightly so that one can re-configure LLVM without
having to do a "make distclean" when building in the source directory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8540 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 17:19:42 +00:00
John Criswell
93e1c72ec0 Added code that verifies that the source directory has not been configured
already.  This should help prevent strange errors from happening, but will
make re-configuring the source directory more difficult when it is shared with
the object directory.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8539 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 17:04:06 +00:00
Chris Lattner
bdbecac051 Fix problems with programs that prototype printf to something unusual
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8538 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 16:47:12 +00:00
Chris Lattner
c72b249e9c Do not segfault when the post-dominator tree is empty (ie, there are no return
or unwind instructions in the function)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8537 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 15:47:40 +00:00
Chris Lattner
3a49a6b5b8 new testcase that crashes opt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8536 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-15 15:29:11 +00:00