Chris Lattner [Fri, 13 Feb 2004 23:00:29 +0000 (23:00 +0000)]
Make the cwriter use the lowerinvoke pass so that it can either use "disabled exceptions" or
"expensive exceptions" controlled by an option. Also refactor and eliminate a bunch of cruft.
This is a temporary solution and causes millions of warnings to pour out of programs that use
exceptions, but it should fix the problem with sparc and the 'write' declaration (PR190).
Subsequent changes will make this stink much less
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11405
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 22:04:41 +0000 (22:04 +0000)]
New testcase. The CFE should not generate illegal LLVM intrinsics, even if
the input program is horribly broken (like 126.gcc).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11401
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Fri, 13 Feb 2004 21:57:29 +0000 (21:57 +0000)]
Added check for target machine endian-ness and put the result into
Makefile.config (ENDIAN variable is set to big or little).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11398
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 21:21:48 +0000 (21:21 +0000)]
Add support for a bunch more functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11395
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Fri, 13 Feb 2004 21:01:20 +0000 (21:01 +0000)]
Remove getAllocatedRegNum(). Use getReg() instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11393
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Fri, 13 Feb 2004 20:05:56 +0000 (20:05 +0000)]
Mark MachineBasicBlock::operator[] deprecated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11392
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Fri, 13 Feb 2004 20:05:44 +0000 (20:05 +0000)]
Define DEPRECATED so that it can be used in function and variable
declarations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11391
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 20:05:32 +0000 (20:05 +0000)]
Add support for fopen/fclose. Specifically with fopen, we were marking all of the
operands as incomplete, though fopen is known to only read them. This just adds
fclose for symmetry, though it doesn't gain anything. This makes the dsgraphs for
181.mcf much more precise.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11390
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Fri, 13 Feb 2004 18:20:47 +0000 (18:20 +0000)]
Use getNumVirtualRegs().
Whitespace cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11389
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Fri, 13 Feb 2004 18:07:06 +0000 (18:07 +0000)]
Add getNumVirtualRegs().
Whitespace cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11388
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 17:03:01 +0000 (17:03 +0000)]
Bug fixed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11385
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:47:35 +0000 (16:47 +0000)]
Fix compilation of 126.gcc: intrinsic functions cannot throw, so they are not
allowed in invoke instructions. Thus, if we are inlining a call to an intrinsic
function into an invoke site, we don't need to turn the call into an invoke!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11384
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:46:46 +0000 (16:46 +0000)]
Intrinsic functions cannot throw
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11383
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Fri, 13 Feb 2004 16:46:05 +0000 (16:46 +0000)]
Updated to list all code/directories that have additional or alternate
licensing information.
Also added note to indicate that warrany disclaimer and the no-endorsement
clause applies to everything.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11382
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:40:24 +0000 (16:40 +0000)]
Bug fix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11381
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:37:43 +0000 (16:37 +0000)]
exit(1) instead of abort()'ing on error
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11380
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:33:56 +0000 (16:33 +0000)]
Fix buggy error message problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11379
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 13 Feb 2004 16:23:14 +0000 (16:23 +0000)]
Fix spelling of `tendency'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11378
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:16:35 +0000 (16:16 +0000)]
Expose a pass ID for lower-invoke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11377
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:16:16 +0000 (16:16 +0000)]
Expose a pass ID that can be 'required'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11376
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:14:50 +0000 (16:14 +0000)]
Squish warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11375
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:09:54 +0000 (16:09 +0000)]
Restructure code to handle memcpy/memmove
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11374
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:09:37 +0000 (16:09 +0000)]
Right, memcpy READS memory too :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11373
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 16:04:51 +0000 (16:04 +0000)]
New testcase for support for memcpy/memmove
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11372
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 13 Feb 2004 06:18:39 +0000 (06:18 +0000)]
Fix off-by-one in Interpreter::getFirstVarArg(), which was punishing
any attempts by LLI to use varargs (possibly left over from the introduction
of IntrinsicLowering??)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11370
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 13 Feb 2004 06:18:21 +0000 (06:18 +0000)]
Fine grainify namespacification, prune #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11369
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 13 Feb 2004 05:48:00 +0000 (05:48 +0000)]
The Interpreter was failing the AtExit UnitTest. This fixes it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11367
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 13 Feb 2004 04:49:04 +0000 (04:49 +0000)]
Update the example here in the header file.
I don't know about you guys, but I rarely read the .html manuals :-)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11366
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 13 Feb 2004 04:40:15 +0000 (04:40 +0000)]
Include <iosfwd>.
Add prototypes for MachineBasicBlock's dump() and print() methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11365
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 13 Feb 2004 04:39:55 +0000 (04:39 +0000)]
Refactor MachineFunction::print() into MachineBasicBlock::print().
Add MachineBasicBlock::dump().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11364
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Fri, 13 Feb 2004 04:39:32 +0000 (04:39 +0000)]
Add head-of-file comments and Doxygen comments. Tighten up a lot of whitespace.
Rename SetMachineOperandConst's formal parameters to match other methods here.
Mark some methods as being used only by the SPARC back-end.
Fix a missing-paren bug in OutputValue().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11363
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 23:13:33 +0000 (23:13 +0000)]
Add support for memcpy and memmove intrinsics. Why isn't the cwriter using
the intrinsiclowering code?? :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11362
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 21:21:17 +0000 (21:21 +0000)]
New features
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11361
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 21:18:15 +0000 (21:18 +0000)]
Be a bit more specific about what the alignment value means and the restrictions on it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11360
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 21:06:52 +0000 (21:06 +0000)]
New testcase for PR233: [llvmgcc] Structure copies result in a LOT of code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11359
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 12 Feb 2004 19:12:03 +0000 (19:12 +0000)]
Move ilist_trairs<MachineInstr> in MachineBasicBlock.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11358
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 12 Feb 2004 18:49:07 +0000 (18:49 +0000)]
Add parent pointer to MachineInstr that points to owning
MachineBasicBlock. Also change opcode to a short and numImplicitRefs
to an unsigned char so that overall MachineInstr's size stays the
same.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11357
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 12 Feb 2004 18:11:53 +0000 (18:11 +0000)]
Fixed minor typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11356
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 18:11:20 +0000 (18:11 +0000)]
Add support for the llvm.memmove intrinsic
Patch graciously contributed by Reid Spencer!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11355
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 18:10:10 +0000 (18:10 +0000)]
Add support for the llvm.memmove intrinsic.
Patch graciously contributed by Reid Spencer!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11354
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 17:57:11 +0000 (17:57 +0000)]
Urg, check in header I forgot. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11353
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 17:53:43 +0000 (17:53 +0000)]
Test that we get rep movs when calling memcpy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11352
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 17:53:22 +0000 (17:53 +0000)]
Add support for the rep movs[bwd] instructions, and emit them when code
generating the llvm.memcpy intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11351
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 17:01:32 +0000 (17:01 +0000)]
Document the llvm.memcpy intrinsic. Clean up some of the formatting of other
sections
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11350
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 17:01:09 +0000 (17:01 +0000)]
Implement the llvm.memcpy intrinsic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11349
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 16:09:53 +0000 (16:09 +0000)]
Rename the opCode instance variable to Opcode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11348
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 16:05:03 +0000 (16:05 +0000)]
Remove a dead field from MachineInstr!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11347
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 12 Feb 2004 16:04:49 +0000 (16:04 +0000)]
This field is never read
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11346
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 12 Feb 2004 08:11:04 +0000 (08:11 +0000)]
Change interface so that we can add to the end of a basic block
without getting an assertion from ilist that we are dereferencing
ilist<T>::end().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11345
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 12 Feb 2004 04:26:49 +0000 (04:26 +0000)]
Add one more doxygen comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11344
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 12 Feb 2004 04:15:00 +0000 (04:15 +0000)]
Express one of MachineOperand's many constructors in terms of another, by means of default arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11343
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 12 Feb 2004 04:01:07 +0000 (04:01 +0000)]
Remove this MachineOpCodeFlags assertion - its test can never be false.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11342
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 12 Feb 2004 04:00:55 +0000 (04:00 +0000)]
Remove these MachineOpCodeFlags and their accessor - they are never set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11341
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 12 Feb 2004 02:27:10 +0000 (02:27 +0000)]
Change MachineBasicBlock's vector of MachineInstr pointers into an
ilist of MachineInstr objects. This allows constant time removal and
insertion of MachineInstr instances from anywhere in each
MachineBasicBlock. It also allows for constant time splicing of
MachineInstrs into or out of MachineBasicBlocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11340
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 12 Feb 2004 01:34:05 +0000 (01:34 +0000)]
getOpCode() --> getOpcode().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11339
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 12 Feb 2004 01:34:03 +0000 (01:34 +0000)]
Remove getOpCode(). Help doxygenify some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11338
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 12 Feb 2004 00:03:08 +0000 (00:03 +0000)]
Ooops, top-level C++-comments aren't recognized by flex.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11337
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 12 Feb 2004 00:00:46 +0000 (00:00 +0000)]
* Convert C comments to C++ style (why are some one way, some another?!)
* Delete extra space, extra blank comment lines
* Convert function comments to doxygen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11336
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 11 Feb 2004 20:47:34 +0000 (20:47 +0000)]
MachineInstr::getOpCode() --> getOpcode() in SPARC back-end.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11335
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 20:44:17 +0000 (20:44 +0000)]
If a node has more than 64 outgoing edges, make the edges go from the 'truncated' block,
instead of dropping them entirely.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11334
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 11 Feb 2004 19:47:43 +0000 (19:47 +0000)]
Fix typos in comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11333
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 19:26:28 +0000 (19:26 +0000)]
s/getOpCode/getOpcode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11332
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 19:14:04 +0000 (19:14 +0000)]
Cosmetic improvements to this option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11331
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 11 Feb 2004 18:52:05 +0000 (18:52 +0000)]
Fix bug in initial check - when recompiling everything with llvm-native-gcc,
you have to erase the program and re-run the linker, too, before running the
checker.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11328
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 11 Feb 2004 18:44:55 +0000 (18:44 +0000)]
add advice bullet about -check-exit-code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11327
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 11 Feb 2004 18:40:04 +0000 (18:40 +0000)]
add description of -check-exit-code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11326
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Wed, 11 Feb 2004 18:37:32 +0000 (18:37 +0000)]
Add check-exit-code option, defaulting to true.
Add ProgramExitedNonzero argument to executeProgram(), and make it
tell its caller whether the program exited nonzero.
Move executeProgramWithCBE() out of line, to ExecutionDriver.cpp, and remove
its extra arguments which are always defaulted. Make it turn off
check-exit-code if the program exits nonzero while generating a reference
output.
Make diffProgram() assume that any nonzero exit code is a failure, if
check-exit-code is turned on.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11325
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 18:21:05 +0000 (18:21 +0000)]
Actually load profiling information now! Block layout can use real, live,
actual profile info, and works! :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11324
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 18:20:41 +0000 (18:20 +0000)]
Fix a typeo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11323
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 11 Feb 2004 17:55:09 +0000 (17:55 +0000)]
Increase constness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11322
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 06:11:06 +0000 (06:11 +0000)]
Add an important prototype
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11320
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 06:10:18 +0000 (06:10 +0000)]
Fix copy-and-pastos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11319
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 06:10:05 +0000 (06:10 +0000)]
Add skeleton profileinfoloader pass. This will be enhanced to actually LOAD
a profile tommorow. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11318
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 11 Feb 2004 06:04:51 +0000 (06:04 +0000)]
Remove assert as the only integer registers on the sparc are physical.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11317
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 05:56:07 +0000 (05:56 +0000)]
Factor profile information loading OUT of llvm-prof into libanalysis
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11316
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 11 Feb 2004 05:55:00 +0000 (05:55 +0000)]
Fix previous broken commit. A MachineOperand may have opType ==
MO_VirtualRegister but if the register number is one of a physical
register is it considered as a physical register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11315
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 05:54:25 +0000 (05:54 +0000)]
Factor this code out of llvm-prof
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11314
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 05:20:50 +0000 (05:20 +0000)]
Remove obsolete comment. Unreachable blocks will automatically be left at the
end of the function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11313
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 05:00:27 +0000 (05:00 +0000)]
Basic functionality testing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11312
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 04:53:20 +0000 (04:53 +0000)]
Add an _embarassingly simple_ implementation of basic block layout. This is
more of a testcase for profiling information than anything that should reasonably
be used, but it's a starting point. When I have more time I will whip this into
better shape.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11311
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 11 Feb 2004 04:52:30 +0000 (04:52 +0000)]
Remove assert as it is meaningless. MachineOperands can be tagged as
MO_VirtualRegister but actually be representing a physical register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11310
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 04:47:54 +0000 (04:47 +0000)]
Make sure to register the 'no profile' implementation as the default for ProfileInfo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11309
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 03:57:16 +0000 (03:57 +0000)]
Simplify implementation, and probably speed things up too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11308
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 03:36:04 +0000 (03:36 +0000)]
Implement SimplifyCFG/PhiEliminate.ll
Having a proper 'select' instruction would allow the elimination of a lot
of the special case cruft in this patch, but we don't have one yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11307
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 03:35:04 +0000 (03:35 +0000)]
New feature testcase for simplifycfg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11306
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 03:29:16 +0000 (03:29 +0000)]
Initialize the count instance variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11305
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 03:08:45 +0000 (03:08 +0000)]
Expose the "Other" value type to tablegen targets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11304
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 01:17:58 +0000 (01:17 +0000)]
Remove long obsolete method. switch instructions are first class entities in the CFG, and have been for a LOOOONG time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11303
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 01:17:33 +0000 (01:17 +0000)]
Remove obsolete method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11302
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 11 Feb 2004 01:17:07 +0000 (01:17 +0000)]
The hasConstantReferences predicate always returns false.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11301
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 10 Feb 2004 22:36:35 +0000 (22:36 +0000)]
Updated to handle the new SPEC95 configuration options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11298
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 10 Feb 2004 22:29:06 +0000 (22:29 +0000)]
Added support for configuring SPEC95.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11295
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 10 Feb 2004 22:11:42 +0000 (22:11 +0000)]
An initial implementation of an LLVM ProfileInfo class which is designed to
eventually allow Passes to use profiling information to direct them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11294
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Tue, 10 Feb 2004 21:49:59 +0000 (21:49 +0000)]
Sprinkle liberally with comments, saute with doxygen until readable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11293
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Tue, 10 Feb 2004 21:48:12 +0000 (21:48 +0000)]
Doxygenify comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11292
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 10 Feb 2004 21:43:11 +0000 (21:43 +0000)]
Urg, the X86 backend DOES use virtual register operands. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11288
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 10 Feb 2004 21:21:17 +0000 (21:21 +0000)]
Remove and simplify some of the bewildering collection of isFOORegister
methods which have strangely different semantics in different backends,
and noone knew what any did.
Getting rid of these ALSO allows the dependence of MachineInstr.h on
MRegisterInfo.h to be removed, which makes me much happier, and probably
alkis too. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11287
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 10 Feb 2004 21:19:49 +0000 (21:19 +0000)]
Remove some unneeded stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11286
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 10 Feb 2004 21:18:55 +0000 (21:18 +0000)]
Add #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11285
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 10 Feb 2004 21:12:22 +0000 (21:12 +0000)]
Do not use MachineOperand::isVirtualRegister either!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11283
91177308-0d34-0410-b5e6-
96231b3b80d8