oota-llvm.git
21 years agoI must have missed these when eliminating the cast to bool cannonicalizations
Chris Lattner [Wed, 13 Aug 2003 20:17:41 +0000 (20:17 +0000)]
I must have missed these when eliminating the cast to bool cannonicalizations

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7829 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement instcombine optimizations:
Chris Lattner [Wed, 13 Aug 2003 20:16:26 +0000 (20:16 +0000)]
Implement instcombine optimizations:
   (A <setcc1> B) logicalop (A <setcc2> B)  -> (A <setcc3> B) or true or false

Where setcc[123] is one of the 6 setcc instructions, and logicalop is one of: And, Or, Xor

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7828 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd some more tests for: (A <setcc1> B) logicalop (A <setcc2> B)
Chris Lattner [Wed, 13 Aug 2003 20:13:15 +0000 (20:13 +0000)]
Add some more tests for: (A <setcc1> B) logicalop (A <setcc2> B)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7827 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoX86 static backend: smacked
Brian Gaeke [Wed, 13 Aug 2003 19:02:09 +0000 (19:02 +0000)]
X86 static backend: smacked
Function at a time: smacked

Who you gonna call!!!  :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7826 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoGeneralize some of the add tests to allow for reassociation to take place
Chris Lattner [Wed, 13 Aug 2003 19:01:45 +0000 (19:01 +0000)]
Generalize some of the add tests to allow for reassociation to take place

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7825 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd some tests for difficult reassociation cases
Chris Lattner [Wed, 13 Aug 2003 19:01:09 +0000 (19:01 +0000)]
Add some tests for difficult reassociation cases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7824 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFactory methods for FunctionPasses now return type FunctionPass *.
Brian Gaeke [Wed, 13 Aug 2003 18:18:15 +0000 (18:18 +0000)]
Factory methods for FunctionPasses now return type FunctionPass *.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7823 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDeconstify parameter to getPointerToFunction().
Brian Gaeke [Wed, 13 Aug 2003 18:17:54 +0000 (18:17 +0000)]
Deconstify parameter to getPointerToFunction().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7822 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoaddPassesToJITCompile and addPassesToEmitMachineCode now take a
Brian Gaeke [Wed, 13 Aug 2003 18:17:27 +0000 (18:17 +0000)]
addPassesToJITCompile and addPassesToEmitMachineCode now take a
 FunctionPassManager, to support function-at-a-time compilation and
 emission of code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7821 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDeconstify parameter to getPointerToFunction().
Brian Gaeke [Wed, 13 Aug 2003 18:16:50 +0000 (18:16 +0000)]
Deconstify parameter to getPointerToFunction().
Use a FunctionPassManager instead of a PassManager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7820 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDeconstify parameter to getPointerToFunction().
Brian Gaeke [Wed, 13 Aug 2003 18:16:34 +0000 (18:16 +0000)]
Deconstify parameter to getPointerToFunction().
Run passes on single function (hey, just-in-time compilation!)
 instead of the entire module that contains it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7819 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoIn ExecutionEngine::getPointerToGlobal(), throw away const qualifier
Brian Gaeke [Wed, 13 Aug 2003 18:16:14 +0000 (18:16 +0000)]
In ExecutionEngine::getPointerToGlobal(), throw away const qualifier
 on Function * when passing it to getPointerToFunction().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7818 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoaddPassesToJITCompile now takes a FunctionPassManager, to support
Brian Gaeke [Wed, 13 Aug 2003 18:15:52 +0000 (18:15 +0000)]
addPassesToJITCompile now takes a FunctionPassManager, to support
 function-at-a-time compilation and emission of code.
Separate addPassesToEmitAssembly from addPassesToJITCompile, because
 the latter requires you to use FunctionPasses, and the former might
 diverge anyway.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7817 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFactory methods for FunctionPasses now return type FunctionPass *.
Brian Gaeke [Wed, 13 Aug 2003 18:15:29 +0000 (18:15 +0000)]
Factory methods for FunctionPasses now return type FunctionPass *.
Correct one of the functions' comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7816 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFactory methods for FunctionPasses now return type FunctionPass *.
Brian Gaeke [Wed, 13 Aug 2003 18:15:15 +0000 (18:15 +0000)]
Factory methods for FunctionPasses now return type FunctionPass *.
Revert (to v1.55) one of the hunks of Chris's change that messed up the
 %-register workaround.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7815 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAssign arguments different ranks so they get grouped together
Chris Lattner [Wed, 13 Aug 2003 16:16:26 +0000 (16:16 +0000)]
Assign arguments different ranks so they get grouped together

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7813 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement constant folding of casts from boolean constants to other values
Chris Lattner [Wed, 13 Aug 2003 15:52:25 +0000 (15:52 +0000)]
Implement constant folding of casts from boolean constants to other values

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7812 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemoving the pool allocator from the main CVS tree.
John Criswell [Wed, 13 Aug 2003 15:36:15 +0000 (15:36 +0000)]
Removing the pool allocator from the main CVS tree.
Use the poolalloc module in CVS from now on.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7810 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement InstCombine/2003-08-12-AllocaNonNull.ll
Chris Lattner [Wed, 13 Aug 2003 05:38:46 +0000 (05:38 +0000)]
Implement InstCombine/2003-08-12-AllocaNonNull.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7807 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDo not cannonicalize (X != 0) into (cast X to bool)
Chris Lattner [Wed, 13 Aug 2003 05:33:12 +0000 (05:33 +0000)]
Do not cannonicalize (X != 0) into (cast X to bool)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7806 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoReorganize tests because we no longer cannonicalize X != 0 -> cast X to bool
Chris Lattner [Wed, 13 Aug 2003 05:27:57 +0000 (05:27 +0000)]
Reorganize tests because we no longer cannonicalize X != 0 -> cast X to bool
In fact, we plan to eliminate cast to bool entirely.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7805 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUpdate test to represent new cannonicalization rules for multiplies
Chris Lattner [Wed, 13 Aug 2003 04:20:06 +0000 (04:20 +0000)]
Update test to represent new cannonicalization rules for multiplies

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7804 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoChange cannonicalization rules: add X,X is represented as multiplies, multiplies
Chris Lattner [Wed, 13 Aug 2003 04:18:28 +0000 (04:18 +0000)]
Change cannonicalization rules: add X,X is represented as multiplies, multiplies
of a power of two are represented as a shift.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7803 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdjust files for move of mapping info stuff into the Sparc directory
Chris Lattner [Wed, 13 Aug 2003 02:38:16 +0000 (02:38 +0000)]
Adjust files for move of mapping info stuff into the Sparc directory

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7802 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMapping directory no longer exists
Chris Lattner [Wed, 13 Aug 2003 02:37:24 +0000 (02:37 +0000)]
Mapping directory no longer exists

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7801 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoIncorporate mapping library into the sparc library
Chris Lattner [Wed, 13 Aug 2003 02:28:20 +0000 (02:28 +0000)]
Incorporate mapping library into the sparc library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7800 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoObsolete file
Chris Lattner [Wed, 13 Aug 2003 02:27:13 +0000 (02:27 +0000)]
Obsolete file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7799 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoJust incorporating some notes I wrote for myself into a place where they won't
Brian Gaeke [Wed, 13 Aug 2003 00:30:48 +0000 (00:30 +0000)]
Just incorporating some notes I wrote for myself into a place where they won't
get lost...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7798 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake MInst2LVSetBI and MInst2LVSetAI be hash_maps instead of maps.
Vikram S. Adve [Tue, 12 Aug 2003 23:39:08 +0000 (23:39 +0000)]
Make MInst2LVSetBI and MInst2LVSetAI be hash_maps instead of maps.
Add some comments and non-const methods to fix constness problems.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7797 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFor instructions in a delay slot of another instruction,
Vikram S. Adve [Tue, 12 Aug 2003 22:22:24 +0000 (22:22 +0000)]
For instructions in a delay slot of another instruction,
we no longer need to find the live-before set of the delayed
branch since that set is now included the live-before/after
set of the instructions in each delay slot.  Just assert that instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7796 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFor an instruction with delay slots, mark all live values before
Vikram S. Adve [Tue, 12 Aug 2003 22:19:59 +0000 (22:19 +0000)]
For an instruction with delay slots, mark all live values before
the instruction as being live before/after the delay slot
instructions as well.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7795 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoGive std::map<BasicBlock *, BasicBlock *> the short name BBMap, because
Brian Gaeke [Tue, 12 Aug 2003 22:00:24 +0000 (22:00 +0000)]
Give std::map<BasicBlock *, BasicBlock *> the short name BBMap, because
 it's used 7 different times.
Rename `getBackEdges' to `findAndInstrumentBackEdges', for clarity.
Remove some excess whitespace and commented-out code.
Use shorter forms of CallInst ctors.
Do not make `reopt_threshold' visible to the LLVM program, and do not
 pass it to the call to `reoptimizerInitialize'.  Don't pass the
 GlobalVariable representing it to any of our helper methods.
 `reopt_threshold' is an internal parameter of the reoptimizer, which
 InstLoops does not need to know about.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7794 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAllow pulling logical operations through shifts.
Chris Lattner [Tue, 12 Aug 2003 21:53:41 +0000 (21:53 +0000)]
Allow pulling logical operations through shifts.
This implements InstCombine/shift.ll:test14*

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7793 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: Reassociate/2003-08-12-InfiniteLoop.ll
Chris Lattner [Tue, 12 Aug 2003 21:45:24 +0000 (21:45 +0000)]
Fix bug: Reassociate/2003-08-12-InfiniteLoop.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7792 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agonew testcase
Chris Lattner [Tue, 12 Aug 2003 21:35:55 +0000 (21:35 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7791 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRight, instcombine cannot remove ((X >> C) << C) if it's signed.
Chris Lattner [Tue, 12 Aug 2003 21:22:51 +0000 (21:22 +0000)]
Right, instcombine cannot remove ((X >> C) << C) if it's signed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7790 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcases
Chris Lattner [Tue, 12 Aug 2003 21:20:49 +0000 (21:20 +0000)]
New testcases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7789 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoReenable optimized build
Chris Lattner [Tue, 12 Aug 2003 20:46:50 +0000 (20:46 +0000)]
Reenable optimized build

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7788 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAssign finer grained ranks, make sure to reassociate top-level after reassociating...
Chris Lattner [Tue, 12 Aug 2003 20:14:27 +0000 (20:14 +0000)]
Assign finer grained ranks, make sure to reassociate top-level after reassociating bottom level

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7787 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSimplify code
Chris Lattner [Tue, 12 Aug 2003 19:17:27 +0000 (19:17 +0000)]
Simplify code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7783 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement testcases InstCombine/or.ll:test16/test17
Chris Lattner [Tue, 12 Aug 2003 19:11:07 +0000 (19:11 +0000)]
Implement testcases InstCombine/or.ll:test16/test17

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7782 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcases
Chris Lattner [Tue, 12 Aug 2003 19:10:50 +0000 (19:10 +0000)]
New testcases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7781 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMerged in changes between PRE11_ROOT and LLVM_PRE111 (i.e. the beginning of
John Criswell [Tue, 12 Aug 2003 18:51:51 +0000 (18:51 +0000)]
Merged in changes between PRE11_ROOT and LLVM_PRE111 (i.e. the beginning of
the pre-release 1.1 branch and pre-release 1.1.1).
Made the USE_SPEC option work.
Silenced unnecessary error output from the cmp command when checking for
updates to lex/yacc generated files.  This fixes a problem where we get error
messages the first time the file is generated.
Fixed the distclean option.  It is now in the Makefile (i.e. only runs in the
top level source directory), removes more files, and plays nicely with
external project Makefiles.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7780 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd FunctionPassManager - it's like a PassManager, but it only deals in
Brian Gaeke [Tue, 12 Aug 2003 17:22:39 +0000 (17:22 +0000)]
Add FunctionPassManager - it's like a PassManager, but it only deals in
FunctionPasses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7778 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDisable emitting LLVM-to-MI maps, by default.
Vikram S. Adve [Tue, 12 Aug 2003 15:51:02 +0000 (15:51 +0000)]
Disable emitting LLVM-to-MI maps, by default.
Add -emitmaps options to turn this back on.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7774 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoTestcase for feature we should support eventually
Chris Lattner [Tue, 12 Aug 2003 14:58:08 +0000 (14:58 +0000)]
Testcase for feature we should support eventually

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7772 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix emission of instructions that directly reference MBBs
Chris Lattner [Tue, 12 Aug 2003 05:19:49 +0000 (05:19 +0000)]
Fix emission of instructions that directly reference MBBs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7771 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake LOC count more accurate by not including the tablegen lexer/parser, any .inc...
Chris Lattner [Tue, 12 Aug 2003 05:11:12 +0000 (05:11 +0000)]
Make LOC count more accurate by not including the tablegen lexer/parser, any .inc files, which are generated by tablegen, nor .lo files which sometimes get picked up from libtool

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7770 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for the Any type. Minor fixes and enhancements for BasicBlock operands
Chris Lattner [Tue, 12 Aug 2003 04:56:42 +0000 (04:56 +0000)]
Add support for the Any type.  Minor fixes and enhancements for BasicBlock operands

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7769 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRename DNVT_bool to DNVT_i1 to be consistent with type system
Chris Lattner [Tue, 12 Aug 2003 04:28:21 +0000 (04:28 +0000)]
Rename DNVT_bool to DNVT_i1 to be consistent with type system

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7768 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for basicblocks, setCC instructions, and branches
Chris Lattner [Tue, 12 Aug 2003 04:17:29 +0000 (04:17 +0000)]
Add support for basicblocks, setCC instructions, and branches

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7767 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for a bool argty
Chris Lattner [Tue, 12 Aug 2003 04:12:42 +0000 (04:12 +0000)]
Add support for a bool argty

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7766 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix va_arg to generate LDDFi for floating point values, instead of LDXi.
Vikram S. Adve [Tue, 12 Aug 2003 03:04:05 +0000 (03:04 +0000)]
Fix va_arg to generate LDDFi for floating point values, instead of LDXi.
All non-FP cases use LDXi as before.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7765 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoBug fix: Some nodes pointed to by globals may not be marked incomplete and need to...
Sumant Kowshik [Tue, 12 Aug 2003 00:45:13 +0000 (00:45 +0000)]
Bug fix: Some nodes pointed to by globals may not be marked incomplete and need to be tracked to find pool arguments

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7763 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMinor fix so that the program exits upon a poolfree failure
Sumant Kowshik [Tue, 12 Aug 2003 00:43:23 +0000 (00:43 +0000)]
Minor fix so that the program exits upon a poolfree failure

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7762 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoIt is not an error if a rule does not match, it's just a failed match!
Chris Lattner [Mon, 11 Aug 2003 22:30:51 +0000 (22:30 +0000)]
It is not an error if a rule does not match, it's just a failed match!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7761 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial checkin of the LLEE, the (LL)VM (E)xecution (E)nvironment.
Misha Brukman [Mon, 11 Aug 2003 22:29:36 +0000 (22:29 +0000)]
Initial checkin of the LLEE, the (LL)VM (E)xecution (E)nvironment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7760 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd basic support for 16 and 32 bit function arguments!
Chris Lattner [Mon, 11 Aug 2003 21:30:00 +0000 (21:30 +0000)]
Add basic support for 16 and 32 bit function arguments!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7755 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoadd frameidx support
Chris Lattner [Mon, 11 Aug 2003 21:29:40 +0000 (21:29 +0000)]
add frameidx support
Make load work
Make type inference infer from Arg1 to arg0 as well as from arg0 to arg1

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7754 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for frameidx and literal immediates for instructions
Chris Lattner [Mon, 11 Aug 2003 21:28:59 +0000 (21:28 +0000)]
Add support for frameidx and literal immediates for instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7749 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for naming the destination of a "set" in a pattern
Chris Lattner [Mon, 11 Aug 2003 20:32:02 +0000 (20:32 +0000)]
Add support for naming the destination of a "set" in a pattern

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7748 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for the Arg1 argument type
Chris Lattner [Mon, 11 Aug 2003 20:25:52 +0000 (20:25 +0000)]
Add support for the Arg1 argument type

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7747 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSort #includes, eliminate #include of "llvm/Type.h" which was redundant
Chris Lattner [Mon, 11 Aug 2003 20:06:16 +0000 (20:06 +0000)]
Sort #includes, eliminate #include of "llvm/Type.h" which was redundant

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7746 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoCygwin apparently works with %'s on registers!
Chris Lattner [Mon, 11 Aug 2003 20:04:57 +0000 (20:04 +0000)]
Cygwin apparently works with %'s on registers!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7745 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoIf we can't find INT64_MAX, set it to a reasonable default value,
Brian Gaeke [Mon, 11 Aug 2003 20:04:57 +0000 (20:04 +0000)]
If we can't find INT64_MAX, set it to a reasonable default value,
instead of printing out an (incorrect) #error message.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7744 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoWhoops, accidental checkin. :(
Chris Lattner [Mon, 11 Aug 2003 19:35:46 +0000 (19:35 +0000)]
Whoops, accidental checkin.  :(

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7743 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd a new -enable-cygwin-compatible-output argument, which make the output more
Chris Lattner [Mon, 11 Aug 2003 19:35:26 +0000 (19:35 +0000)]
Add a new -enable-cygwin-compatible-output argument, which make the output more
consumably by the cygwin assembler.  This is really just a nasty hack until we
get real target triple support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7742 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support to the mangler for targets which require _'s on global symbols
Chris Lattner [Mon, 11 Aug 2003 19:34:29 +0000 (19:34 +0000)]
Add support to the mangler for targets which require _'s on global symbols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7741 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded keyword `include', and a FIXME for hex and binary constants.
Misha Brukman [Mon, 11 Aug 2003 19:14:20 +0000 (19:14 +0000)]
Added keyword `include', and a FIXME for hex and binary constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7740 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Added pointers to the README files in emacs/ and vim/ directories.
Misha Brukman [Mon, 11 Aug 2003 19:13:12 +0000 (19:13 +0000)]
* Added pointers to the README files in emacs/ and vim/ directories.
* Added slashes to distinguish directories and tools from simple scripts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7739 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Added (X)Emacs mode for TableGen description files
Misha Brukman [Mon, 11 Aug 2003 19:10:02 +0000 (19:10 +0000)]
* Added (X)Emacs mode for TableGen description files
* Added README that describes how to use the mode files
* Associated files with .llx extension with llvm-mode

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7738 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoPrint % signs before register names; turn off "noprefix" mode in gas output.
Brian Gaeke [Mon, 11 Aug 2003 19:05:46 +0000 (19:05 +0000)]
Print % signs before register names; turn off "noprefix" mode in gas output.
Fixes test case test/Programs/LLVMSource/2003-08-03-ReservedWordGlobal.ll.

Also: Refactor implicit-uses printing into its own method.
Remove a couple of unused variables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7737 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoGeez, this misha guy is a _horrible_ speller. :)
Chris Lattner [Mon, 11 Aug 2003 18:53:14 +0000 (18:53 +0000)]
Geez, this misha guy is a _horrible_ speller.  :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7736 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Added a section describing the hidden gems in llvm/utils
Misha Brukman [Mon, 11 Aug 2003 18:45:46 +0000 (18:45 +0000)]
* Added a section describing the hidden gems in llvm/utils
* Converted some tabs to spaces
* Made lines fit within 80 columns

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7735 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRegister argument to va_start must be marked as defined!
Vikram S. Adve [Mon, 11 Aug 2003 18:42:47 +0000 (18:42 +0000)]
Register argument to va_start must be marked as defined!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7734 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agotablegen.vim:
Misha Brukman [Mon, 11 Aug 2003 18:05:19 +0000 (18:05 +0000)]
tablegen.vim:
* Added keyword `field'
* Keywords get different highlighting than types
* Added a simple attempt at multi-line C-style comments with FIXME

README:
* Added note about symlinking an entire directory ~/.vim/syntax

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7733 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd .llx
Chris Lattner [Mon, 11 Aug 2003 18:01:39 +0000 (18:01 +0000)]
Add .llx

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7732 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded a TableGen syntax highlighting mode for VIM and a README that describes
Misha Brukman [Mon, 11 Aug 2003 17:56:08 +0000 (17:56 +0000)]
Added a TableGen syntax highlighting mode for VIM and a README that describes
how to add the functionality to the user's VIM installation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7731 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd (ret int) expander so that we can at least write testcases
Chris Lattner [Mon, 11 Aug 2003 15:48:00 +0000 (15:48 +0000)]
Add (ret int) expander so that we can at least write testcases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7730 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't forget to initializer result field to 0!
Chris Lattner [Mon, 11 Aug 2003 15:47:35 +0000 (15:47 +0000)]
Don't forget to initializer result field to 0!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7729 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoConverted tabs to spaces.
Misha Brukman [Mon, 11 Aug 2003 15:38:50 +0000 (15:38 +0000)]
Converted tabs to spaces.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7728 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemoved `-debug' so that spurious printouts of patterns are not seen at
Misha Brukman [Mon, 11 Aug 2003 15:30:20 +0000 (15:30 +0000)]
Removed `-debug' so that spurious printouts of patterns are not seen at
compilation time.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7727 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove dead code
Chris Lattner [Mon, 11 Aug 2003 15:24:02 +0000 (15:24 +0000)]
Remove dead code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7726 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd patterns for multiply, and, or, and xor
Chris Lattner [Mon, 11 Aug 2003 15:23:25 +0000 (15:23 +0000)]
Add patterns for multiply, and, or, and xor

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7725 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoadd support for more nodes
Chris Lattner [Mon, 11 Aug 2003 15:23:05 +0000 (15:23 +0000)]
add support for more nodes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7724 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoPut printouts of acquired patterns under the DEBUG() guard, fixed spelling.
Misha Brukman [Mon, 11 Aug 2003 15:16:12 +0000 (15:16 +0000)]
Put printouts of acquired patterns under the DEBUG() guard, fixed spelling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7723 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUntil the pattern matching instruction selector is finished, enable debug output...
Chris Lattner [Mon, 11 Aug 2003 15:11:01 +0000 (15:11 +0000)]
Until the pattern matching instruction selector is finished, enable debug output from it

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7722 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix handling of 'free' if it has absolutely no prototype
Chris Lattner [Mon, 11 Aug 2003 15:05:08 +0000 (15:05 +0000)]
Fix handling of 'free' if it has absolutely no prototype

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7721 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInclude the new selection library for the X86 target
Chris Lattner [Mon, 11 Aug 2003 14:59:53 +0000 (14:59 +0000)]
Include the new selection library for the X86 target

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7720 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for a pattern matching instruction selector. This is still in
Chris Lattner [Mon, 11 Aug 2003 14:59:22 +0000 (14:59 +0000)]
Add support for a pattern matching instruction selector.  This is still in
the early implementation phases, so it is disabled by default

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7719 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoBuild the SelectionDAG library
Chris Lattner [Mon, 11 Aug 2003 14:57:48 +0000 (14:57 +0000)]
Build the SelectionDAG library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7718 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial checkin of SelectionDAG implementation. This is still rough and
Chris Lattner [Mon, 11 Aug 2003 14:57:33 +0000 (14:57 +0000)]
Initial checkin of SelectionDAG implementation.  This is still rough and
unfinished

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7717 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial checkin of SelectionDAG header file
Chris Lattner [Mon, 11 Aug 2003 14:56:26 +0000 (14:56 +0000)]
Initial checkin of SelectionDAG header file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7716 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd full support for code generating expanders!
Chris Lattner [Sun, 10 Aug 2003 23:51:52 +0000 (23:51 +0000)]
Add full support for code generating expanders!
This includes support for referencing named arguments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7715 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement autopromotion of leaf trees from arguments to nodes of their own,
Chris Lattner [Sun, 10 Aug 2003 22:38:36 +0000 (22:38 +0000)]
Implement autopromotion of leaf trees from arguments to nodes of their own,
making it easier to write patterns without lots of extraneous parens

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7714 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement correct parsing, representation, and printing of DAG argument names
Chris Lattner [Sun, 10 Aug 2003 22:14:13 +0000 (22:14 +0000)]
Implement correct parsing, representation, and printing of DAG argument names
Implements testcase TableGen/TreeNames.td

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7713 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRecognize $foo as a variable
Chris Lattner [Sun, 10 Aug 2003 22:04:25 +0000 (22:04 +0000)]
Recognize $foo as a variable

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7712 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase
Chris Lattner [Sun, 10 Aug 2003 22:02:44 +0000 (22:02 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7711 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoImplement real code emission, at least for Instruction patterns,
Chris Lattner [Sun, 10 Aug 2003 21:54:43 +0000 (21:54 +0000)]
Implement real code emission, at least for Instruction patterns,
next up: support for expanders

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7710 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFirst cut at emitting the reducer. This reducer just prints out the patterns
Chris Lattner [Sun, 10 Aug 2003 20:34:13 +0000 (20:34 +0000)]
First cut at emitting the reducer.  This reducer just prints out the patterns
selected, but it seems to work great!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7709 91177308-0d34-0410-b5e6-96231b3b80d8