Brian Gaeke
d1b3679214
Move all the SaveState options and stuff inton one spot at the top of the file.
...
De-constify SaveStateToModule; we have to set both it and SaveRegAllocState
explicitly in the reoptimizer.
Make SaveRegAllocState an 'external location' option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12278 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 22:21:03 +00:00
Brian Gaeke
14068d9f97
Only call verifySavedState if SaveRegAllocState is set AND debugging flag is on.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12277 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 22:01:59 +00:00
Chris Lattner
7c62728018
Bugz fixed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12276 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 21:43:47 +00:00
Chris Lattner
c6b0c4b9e2
Fix PR284: [indvars] Induction variable analysis violates LLVM invariants
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12275 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 21:42:19 +00:00
Chris Lattner
a22ef48fee
New testcase for PR284: [indvars] Induction variable analysis violates LLVM invariants
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12274 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 21:41:47 +00:00
Alkis Evlogimenos
5d72853173
Add link to bugzilla query of unassigned enhancements. Specific open
...
projects like 'port glibc to llvm' or 'improve nightly tester', should
have an unassigned enhancement bug opened for them so that they can be
tracked more easily. Open projects should only list generic projects
like 'compile programs with the LLVM compiler' or 'write a new backend
for target'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12273 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 19:38:33 +00:00
Misha Brukman
1a49bc8d5e
We need a logo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12272 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 19:22:29 +00:00
Brian Gaeke
a2245a3b11
Add brainstorm for a random test vector generator
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12271 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 19:15:50 +00:00
Brian Gaeke
714caf24bc
Recommend using install-bytecode target
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12270 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 19:08:52 +00:00
Brian Gaeke
d0f3c5e8b1
My fix for PR274 broke the build on Darwin/PPC. As I'm fairly certain this
...
bug only affects Linux systems that use GLIBC, I'm going to put ifdefs around
the array.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12269 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 17:38:28 +00:00
Brian Gaeke
f313ea7da4
Add support for 'install-bytecode' target, used for ONLY installing
...
bytecode-libs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12268 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 17:38:01 +00:00
Brian Gaeke
b798b1e9a3
Fix up a seriously outdated comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12267 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 17:37:50 +00:00
Chris Lattner
0b67f04a1c
New testcase for PR275
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12266 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-10 03:07:45 +00:00
Chris Lattner
c1a5bacea8
New testcase for PR276: llvm-g++ does not mangle method names that match stdlib function names
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12265 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 22:51:03 +00:00
Chris Lattner
85fb1be62f
implement new method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12264 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 19:37:06 +00:00
Chris Lattner
69a69ff5fd
new method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12263 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 19:36:59 +00:00
Alkis Evlogimenos
6a367f33f3
Spill explicit physical register defs as well.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12260 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 08:35:13 +00:00
Brian Gaeke
73716d582e
Now that I read it again, this part in particular strikes me as kind of
...
pushy and contentious...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12259 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 07:20:26 +00:00
Alkis Evlogimenos
519f4e76b7
Check if printing of implicit uses is required for all types of shift
...
instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12258 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 06:10:15 +00:00
Brian Gaeke
bd1c2853e8
b00g fixed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12257 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 05:43:59 +00:00
Brian Gaeke
00f0a29e1c
Address PR274 - '[JIT] Programs cannot resolve the fstat function'
...
by trying to get the compiler to generate an undefined reference for it
and related functions which live in libc_nonshared.a on Linux.
Linkers... sigh.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12256 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 05:22:10 +00:00
Brian Gaeke
cf47198a49
Hmm, who left this sitting around in my tree
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12255 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 04:49:13 +00:00
Alkis Evlogimenos
cc2a2a530f
Differentiate between extended precision floats (80-bit) and double precision floats (64-bit)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12254 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 03:37:54 +00:00
Alkis Evlogimenos
0309066f6c
Use newly added API to emit bytes for instructions that gas misassembles
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12253 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 03:35:34 +00:00
Alkis Evlogimenos
39c2005b70
Add emitInstruction() API so that we can get the bytes of a simple instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12252 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 03:34:53 +00:00
Alkis Evlogimenos
f6e8156008
Constify things a bit
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12251 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 03:30:12 +00:00
Chris Lattner
0fe65a8001
Bug fixed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12250 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 00:59:15 +00:00
Chris Lattner
313b84b662
Checkin testcase for PR261
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12249 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 00:55:58 +00:00
Chris Lattner
15f0a87f31
John fixed this bug
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12248 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-09 00:40:49 +00:00
Brian Gaeke
8b16a16918
Change PhyRegAlloc::saveStateForValue()'s arg type to deal with
...
AllocInfo.Instruction becoming an int.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12247 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 23:22:03 +00:00
Brian Gaeke
54a76b8808
Save argument list alloc state by recording it as the operands of Instruction
...
#-1. Other minor changes to deal with AllocInfo.Instruction becoming an int.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12246 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 23:22:02 +00:00
Brian Gaeke
757ccd5149
Make AllocInfo's Instruction an int, so that we can overload it for arguments.
...
(Instruction #-1's operands = argument list).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12245 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 23:22:01 +00:00
Misha Brukman
efc182e49c
Fix some spelling and grammar.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12244 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 23:06:46 +00:00
Chris Lattner
a5422e4048
Update the profiling section
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12243 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 22:29:35 +00:00
Chris Lattner
96ab5caf2d
Switch to using edge profiling information as the basic source of profile info
...
from using basic block counts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12242 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 22:04:08 +00:00
Chris Lattner
7d84dda560
Switch over to using edge profile information as the basic profiling representation,
...
from basic block counts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12241 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 22:03:45 +00:00
Chris Lattner
62e84f376b
Refactor implementations
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12240 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 21:30:35 +00:00
Chris Lattner
0f54bc7630
We don't want to make this a pure interface, as it makes all implementors
...
bear the burden of implementing what will be all exactly the same methods.
They just want to provide the information in differing ways.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12239 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 21:30:18 +00:00
Chris Lattner
3f25328fbf
Rearrange some methods, implement the dominates method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12237 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 21:07:12 +00:00
Chris Lattner
6ba8972919
Import the trace class from the reoptimizer
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12236 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 20:57:27 +00:00
Chris Lattner
5cedabafe5
Default to using edge counts
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12234 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 20:04:46 +00:00
Chris Lattner
8c2730e347
Annotate functions with edge counts as well, if they are available.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12233 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 20:04:32 +00:00
Chris Lattner
dbbbfef165
If we have edge counts, we can produce block counts. I've verified that
...
using an edge profile to produce block counts gives the exact same numbers
as using a block count directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12232 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 20:03:52 +00:00
Chris Lattner
9f717ef279
Adjust to new interface
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12231 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 18:51:45 +00:00
Chris Lattner
0b6af79e62
Add the ability to put an annotation at the end of a basic block as well.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12230 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 18:51:05 +00:00
Chris Lattner
01945c1739
Add initial support for reading edge counts. This will be improved to enable
...
translation of edge counts into block/function counts when possible.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12229 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 18:20:18 +00:00
Chris Lattner
fd755f7c7c
Add support for representing edge counts
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12228 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 18:19:37 +00:00
Chris Lattner
127cab2cc7
Add edge profiling support to the runtime library
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12227 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 18:04:31 +00:00
Misha Brukman
d6cf0d4d4f
Fix link to license: point to current version in CVS.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12226 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 17:59:31 +00:00
Chris Lattner
b2f12a2c38
Initial support for edge profiling
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12225 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 17:54:34 +00:00