Commit Graph

9492 Commits

Author SHA1 Message Date
Chris Lattner dd978ce8c5 Finegrainify namespacification
Make the Timer code give correct user/system/user+system times when -track-memory is enabled

llvm-svn: 10463
2003-12-14 21:27:33 +00:00
Alkis Evlogimenos fc2234ff4b I wonder how this didn't cause any tests to fail...
llvm-svn: 10462
2003-12-14 13:30:19 +00:00
Alkis Evlogimenos aaba4639f8 Change interface of MachineOperand as follows:
a) remove opIsUse(), opIsDefOnly(), opIsDefAndUse()
    b) add isUse(), isDef()
    c) rename opHiBits32() to isHiBits32(),
              opLoBits32() to isLoBits32(),
              opHiBits64() to isHiBits64(),
              opLoBits64() to isLoBits64().

This results to much more readable code, for example compare
"op.opIsDef() || op.opIsDefAndUse()" to "op.isDef()" a pattern used
very often in the code.

llvm-svn: 10461
2003-12-14 13:24:17 +00:00
Alkis Evlogimenos fbeb3b02c3 Change preserve all claim to just preserve live variables and phielimination.
llvm-svn: 10460
2003-12-14 10:14:23 +00:00
Chris Lattner 5a8a7282dc Rev the release notes to 1.2
llvm-svn: 10459
2003-12-14 05:03:43 +00:00
Chris Lattner d1c371c32c Do not promote volatile alias sets into registers
llvm-svn: 10458
2003-12-14 04:52:31 +00:00
Chris Lattner 0a14060ce2 Finegrainify namespacification
Add capability to represent volatile AliasSet's
Propagate this information from loads&stores into the aliassets

llvm-svn: 10457
2003-12-14 04:52:11 +00:00
Chris Lattner 310da97240 Add capability to represent volatile AliasSet's
llvm-svn: 10456
2003-12-14 04:51:34 +00:00
Chris Lattner 29da20f96c Testcase for PR179
llvm-svn: 10455
2003-12-14 04:46:07 +00:00
Alkis Evlogimenos 4f7f017ab5 When reserving a preallocated register spill the aliases of this
register too.

llvm-svn: 10450
2003-12-13 11:58:10 +00:00
Alkis Evlogimenos 7dbdf3839c Ignore non-allocatable physical registers in live interval analysis.
llvm-svn: 10449
2003-12-13 11:11:02 +00:00
Alkis Evlogimenos ed53b35076 Expire any active intervals left when register allocation is done.
llvm-svn: 10448
2003-12-13 05:50:19 +00:00
Alkis Evlogimenos e6dc614c3c Add instruction numbers to debugging output.
llvm-svn: 10447
2003-12-13 05:48:57 +00:00
Alkis Evlogimenos 904cd6d48c Add a floating point killer pass. This pass runs before register
allocaton on the X86 to add information to the machine code denoting
that our floating point stackifier cannot handle virtual point
register that are alive across basic blocks. This pass adds an
implicit def of all virtual floating point register at the end of each
basic block.

llvm-svn: 10446
2003-12-13 05:36:22 +00:00
Alkis Evlogimenos 06f379a278 Handle explicit physical register defs.
llvm-svn: 10445
2003-12-13 05:26:39 +00:00
Alkis Evlogimenos 9bced9455a Remove unecessary if statements when looping on ImplicitDefs.
llvm-svn: 10444
2003-12-13 01:20:58 +00:00
Chris Lattner 6f9e65ef7a Try rewording stuff talking about unwinding. Hopefully it will make llvm sound less bad, and still make John happy. :)
llvm-svn: 10439
2003-12-12 21:33:08 +00:00
Chris Lattner b84f3323f7 Link to lists, incorporate feedback from Tanya
llvm-svn: 10438
2003-12-12 21:22:16 +00:00
John Criswell 8cc89ca6bc Updated configure script so that it does not configure llvm/project
directories that do not contain a configure script.

llvm-svn: 10437
2003-12-12 20:15:23 +00:00
John Criswell 6f73d28adf Don't configure directories that don't have a configure script (i.e Stacker).
llvm-svn: 10436
2003-12-12 20:09:33 +00:00
John Criswell c6efb11f02 Modified cast so that it converts the int to a long before casting to
a pointer.  This evades a warning emitted by GCC when we cast from
unsigned int (32 bit) to void * (64 bit) on SparcV9.

llvm-svn: 10435
2003-12-12 19:57:48 +00:00
John Criswell 604cd3c85f Fixed some minor typos.
Moved the new gccld feature to be in the list of enhancements.
Re-worded information on SPEC 2000 and Sparc support to try to make them
more accurate and precise.

llvm-svn: 10434
2003-12-12 19:54:20 +00:00
Brian Gaeke 13a2e54e0c Dynamically get the right-sized member of a GenericValue to hold a size_t, and
use it to return the result of strlen.

llvm-svn: 10433
2003-12-12 15:38:06 +00:00
Chris Lattner 542d24f530 PR177 is no longer among the open
llvm-svn: 10432
2003-12-12 07:26:25 +00:00
Chris Lattner 89af2d5a36 Implement the ExecutionEngine::getPointerToFunctionOrStub by forwarding the
request on to the TargetMachine if it supports the getJITStubForFunction method

llvm-svn: 10431
2003-12-12 07:12:02 +00:00
Chris Lattner 2e7416cb04 Implement the TargetMachine::getJITStubForFunction method for X86, finegrainify
namespacification.

llvm-svn: 10430
2003-12-12 07:11:18 +00:00
Chris Lattner 538dffd9fa Add new getJITStubForFunction method, which may optionally be implemented by
targets for better performance.

llvm-svn: 10429
2003-12-12 07:10:32 +00:00
Chris Lattner fa41ea3397 Doxygenify comments, remove extraneous #include
llvm-svn: 10428
2003-12-12 06:31:42 +00:00
Chris Lattner 4b34b35549 Note about bytecode format
llvm-svn: 10427
2003-12-12 05:52:39 +00:00
Brian Gaeke 8657acc07e Since we are using a gep_type_iterator, we apparently must get the type
index by using I.getOperand() here. This was failing an assertion on
basically every struct access.

llvm-svn: 10426
2003-12-12 05:13:05 +00:00
Brian Gaeke e60a0289d4 Use uintptr_t for pointer values in the ExecutionEngine.
llvm-svn: 10425
2003-12-12 05:06:09 +00:00
Brian Gaeke 1fe9f83b52 Fix typo in comment
llvm-svn: 10424
2003-12-12 04:58:13 +00:00
Chris Lattner eb8b184825 These aren't bugs, don't phrase them like they are.
llvm-svn: 10423
2003-12-12 04:56:02 +00:00
Chris Lattner 88e24cffe6 I'm a spaz
llvm-svn: 10422
2003-12-12 04:51:00 +00:00
Chris Lattner d25f26fce8 Add note about Stacker, duh!
llvm-svn: 10421
2003-12-12 04:45:09 +00:00
Misha Brukman 8395d737f2 Break lines and add space after ':' to be consistent in layout.
llvm-svn: 10420
2003-12-12 04:37:31 +00:00
Chris Lattner e76e9abeab More updates for the release
llvm-svn: 10419
2003-12-12 04:25:33 +00:00
Brian Gaeke d24cfed317 Throw better error messages, by calling strerror(errno) when we
get an error inside the bytecode reader.

llvm-svn: 10415
2003-12-12 00:47:44 +00:00
Brian Gaeke 1f147379b7 Add an assertion to make sure we are at least getting argv[0] right.
Use a clearer error message when we fail to load a program.

llvm-svn: 10414
2003-12-12 00:47:19 +00:00
Chris Lattner e4151eba68 Update release notes for PR86 and C++ support
llvm-svn: 10413
2003-12-11 23:31:21 +00:00
Chris Lattner 1eed55d6b9 Factor out some duplicated code, implement the rest of the cases in
BasicAA/2003-12-11-ConstExprGEP.ll

llvm-svn: 10412
2003-12-11 23:20:16 +00:00
Chris Lattner ace41617c7 Rename variable to avoid confusing it with the global G
llvm-svn: 10411
2003-12-11 22:49:32 +00:00
Chris Lattner 6ea17f77f8 Fix PR86. This makes basicaa _SIGNIFICANLY_ more aggressive with getelementptr's
llvm-svn: 10410
2003-12-11 22:44:13 +00:00
Chris Lattner 34399dda2d Fix LICM/2003-12-11-SinkingToPHI.ll, and quite possibly all of the other known problems in the universe.
llvm-svn: 10409
2003-12-11 22:23:32 +00:00
Chris Lattner 99146bb2a7 New testcase that LICM is breaking crafty on
llvm-svn: 10408
2003-12-11 22:15:11 +00:00
Chris Lattner 62aff8412a Finegrainify namespacification
Add new -print-cfg-only pass

llvm-svn: 10407
2003-12-11 21:48:18 +00:00
Chris Lattner 027253b0d5 verifyFunction depends on dominator info, which levelraise does not declare
that it needs.  This is pretty scary code!  This fixes

Regression.Transforms.LevelRaise.2002-07-16-SourceAndDestCrash
Regression.Transforms.LevelRaise.2002-07-31-AssertionFailure

llvm-svn: 10406
2003-12-11 21:47:37 +00:00
Chris Lattner 15b2e377ae Fix test that was failing because we were optimizing the program better than expected :)
llvm-svn: 10404
2003-12-11 21:06:43 +00:00
Chris Lattner 659a500e57 New testcase for PR86
llvm-svn: 10403
2003-12-11 19:16:30 +00:00
Chris Lattner ed9fc4baad Run tailcall elimination in a more logical place
llvm-svn: 10402
2003-12-11 17:50:32 +00:00