oota-llvm.git
17 years agoRemoved some of the iostream #includes. Moved towards converting to using
Bill Wendling [Tue, 28 Nov 2006 22:46:12 +0000 (22:46 +0000)]
Removed some of the iostream #includes. Moved towards converting to using
llvm streams

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

17 years agoSupport for llvm streams.
Bill Wendling [Tue, 28 Nov 2006 22:45:17 +0000 (22:45 +0000)]
Support for llvm streams.

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

17 years agoAdd a helper function
Chris Lattner [Tue, 28 Nov 2006 22:32:35 +0000 (22:32 +0000)]
Add a helper function

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

17 years agoIdentities are default now
Andrew Lenharth [Tue, 28 Nov 2006 22:28:08 +0000 (22:28 +0000)]
Identities are default now

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

17 years agoMake identity default, and fix PR1020
Andrew Lenharth [Tue, 28 Nov 2006 22:25:32 +0000 (22:25 +0000)]
Make identity default, and fix PR1020

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

17 years agoAdded a temporary hack to get the llvm-streams to work for future checkins.
Bill Wendling [Tue, 28 Nov 2006 22:21:29 +0000 (22:21 +0000)]
Added a temporary hack to get the llvm-streams to work for future checkins.

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

17 years agoUndo the last patch until 253.perlbmk passes with these changes.
Reid Spencer [Tue, 28 Nov 2006 20:23:51 +0000 (20:23 +0000)]
Undo the last patch until 253.perlbmk passes with these changes.

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

17 years agoNew entries.
Evan Cheng [Tue, 28 Nov 2006 19:59:25 +0000 (19:59 +0000)]
New entries.

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

17 years agoupdate comments
Andrew Lenharth [Tue, 28 Nov 2006 19:56:02 +0000 (19:56 +0000)]
update comments

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

17 years agoGet the asminfo for the target most closely matching the module and use that for...
Andrew Lenharth [Tue, 28 Nov 2006 19:53:36 +0000 (19:53 +0000)]
Get the asminfo for the target most closely matching the module and use that for inline asm

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

17 years agoX86 asm -> gcc asm translation table (incomplete)
Andrew Lenharth [Tue, 28 Nov 2006 19:52:49 +0000 (19:52 +0000)]
X86 asm -> gcc asm translation table (incomplete)

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

17 years agoAdd per-target support for asm translation in the cbe
Andrew Lenharth [Tue, 28 Nov 2006 19:52:20 +0000 (19:52 +0000)]
Add per-target support for asm translation in the cbe

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

17 years agoRemove debug code.
Jim Laskey [Tue, 28 Nov 2006 18:27:02 +0000 (18:27 +0000)]
Remove debug code.

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

17 years agoPrime text sections to improve branch locality in large object files.
Jim Laskey [Tue, 28 Nov 2006 18:21:52 +0000 (18:21 +0000)]
Prime text sections to improve branch locality in large object files.

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

17 years ago32-bit int space was not accounted for properly in lowerCall.
Jim Laskey [Tue, 28 Nov 2006 14:53:52 +0000 (14:53 +0000)]
32-bit int  space was not accounted for properly in lowerCall.

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

17 years agoRegenerate.
Reid Spencer [Tue, 28 Nov 2006 07:29:44 +0000 (07:29 +0000)]
Regenerate.

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

17 years agoImplement signedness caching for values, value lists, constants and
Reid Spencer [Tue, 28 Nov 2006 07:28:14 +0000 (07:28 +0000)]
Implement signedness caching for values, value lists, constants and
constant lists. This is just an internal change to the parser in
preparation for some backwards compatibility code that is to follow.
This will allow things like "uint 4000000000" to retain the unsignedness
of the integer constant as the value moves through the parser. In the
future, all integer types will be signless but parsing "uint" and friends
will be retained for backwards compatibility.

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

17 years agoRemove 4 FIXME's from the CAST patch now that the back end is correctly
Reid Spencer [Tue, 28 Nov 2006 07:23:01 +0000 (07:23 +0000)]
Remove 4 FIXME's from the CAST patch now that the back end is correctly
producing code for "trunc to bool". This passes all tests on Linux.

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

17 years agoAdd an -append-exit-code option to bugpoint. This will cause bugpoint to
Reid Spencer [Tue, 28 Nov 2006 07:04:10 +0000 (07:04 +0000)]
Add an -append-exit-code option to bugpoint. This will cause bugpoint to
append "exit <retcode>" to the end of the output file. This is used by
the nightly tester to make bugpoint match the output generated by the
RunSafely.sh script so it doesn't find false positives.

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

17 years agoFix a typo.
Reid Spencer [Tue, 28 Nov 2006 06:14:06 +0000 (06:14 +0000)]
Fix a typo.

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

17 years agoPut the #include for a module first.
Bill Wendling [Tue, 28 Nov 2006 03:31:29 +0000 (03:31 +0000)]
Put the #include for a module first.

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

17 years agoClean up.
Evan Cheng [Tue, 28 Nov 2006 02:25:34 +0000 (02:25 +0000)]
Clean up.

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

17 years agoFix indentation.
Evan Cheng [Tue, 28 Nov 2006 02:22:51 +0000 (02:22 +0000)]
Fix indentation.

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

17 years agoChanged to using LLVM streams.
Bill Wendling [Tue, 28 Nov 2006 02:09:03 +0000 (02:09 +0000)]
Changed to using LLVM streams.

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

17 years agoChanged to using llvm streams.
Bill Wendling [Tue, 28 Nov 2006 02:08:17 +0000 (02:08 +0000)]
Changed to using llvm streams.

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

17 years agoAdded helper function to transition to using llvm streams.
Bill Wendling [Tue, 28 Nov 2006 02:07:29 +0000 (02:07 +0000)]
Added helper function to transition to using llvm streams.

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

17 years agoFix JIT encoding bugs for shift / rotate by one ops.
Evan Cheng [Tue, 28 Nov 2006 01:28:00 +0000 (01:28 +0000)]
Fix JIT encoding bugs for shift / rotate by one ops.

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

17 years agotestcase for pr1016
Chris Lattner [Tue, 28 Nov 2006 01:26:37 +0000 (01:26 +0000)]
testcase for pr1016

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

17 years agoFix PR1016
Chris Lattner [Tue, 28 Nov 2006 01:03:30 +0000 (01:03 +0000)]
Fix PR1016

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

17 years agoRemoved #include <iostream> and replaced streams with llvm streams.
Bill Wendling [Mon, 27 Nov 2006 23:54:50 +0000 (23:54 +0000)]
Removed #include <iostream> and replaced streams with llvm streams.

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

17 years agoPreliminary support for inline asm in the cbe. The target specific ugliness
Andrew Lenharth [Mon, 27 Nov 2006 23:50:49 +0000 (23:50 +0000)]
Preliminary support for inline asm in the cbe.  The target specific ugliness
is still in Writer, but issolated to a single function. This might be split
into something in each target directory.  This is sufficient to get through
archie and an strcpy impl on linux-x86.

Module level asm is not handled.

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

17 years agoChange MachineInstr ctor's to take a TargetInstrDescriptor reference instead
Evan Cheng [Mon, 27 Nov 2006 23:37:22 +0000 (23:37 +0000)]
Change MachineInstr ctor's to take a TargetInstrDescriptor reference instead
of opcode and number of operands.

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

17 years agoremove dead tag
Chris Lattner [Mon, 27 Nov 2006 21:53:28 +0000 (21:53 +0000)]
remove dead tag

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

17 years agoFix the dag combiner bug corresponding to PR1014.
Chris Lattner [Mon, 27 Nov 2006 21:50:02 +0000 (21:50 +0000)]
Fix the dag combiner bug corresponding to PR1014.

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

17 years agothis doesn't pass with CVS HEAD.
Chris Lattner [Mon, 27 Nov 2006 20:01:48 +0000 (20:01 +0000)]
this doesn't pass with CVS HEAD.

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

17 years agoFix PR1014 and InstCombine/2006-11-27-XorBug.ll.
Chris Lattner [Mon, 27 Nov 2006 19:55:07 +0000 (19:55 +0000)]
Fix PR1014 and InstCombine/2006-11-27-XorBug.ll.

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

17 years agoAdd 3 more test cases for ptrtoint, fptoui and fptosi
Reid Spencer [Mon, 27 Nov 2006 19:54:23 +0000 (19:54 +0000)]
Add 3 more test cases for ptrtoint, fptoui and fptosi

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

17 years agotestcase for PR1014
Chris Lattner [Mon, 27 Nov 2006 19:47:22 +0000 (19:47 +0000)]
testcase for PR1014

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

17 years agoWhen truncating to bool, it is necessary to & with 1 for all casts that
Reid Spencer [Mon, 27 Nov 2006 18:51:06 +0000 (18:51 +0000)]
When truncating to bool, it is necessary to & with 1 for all casts that
can result in a bool. Previously PtrToInt, FPToUI and FPToSI were missing
this operation.

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

17 years agoProtect against null streams.
Bill Wendling [Mon, 27 Nov 2006 10:45:49 +0000 (10:45 +0000)]
Protect against null streams.

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

17 years agoRemoved #include <iostream> and replaced with llvm_* streams.
Bill Wendling [Mon, 27 Nov 2006 10:09:12 +0000 (10:09 +0000)]
Removed #include <iostream> and replaced with llvm_* streams.

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

17 years agoAlter these tests to ensure they match a "test $1, X" X86 instruction that
Reid Spencer [Mon, 27 Nov 2006 05:08:03 +0000 (05:08 +0000)]
Alter these tests to ensure they match a "test $1, X" X86 instruction that
is now generated by the LLVM backend for "trunc to bool" instructions.

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

17 years agoAdd a test to ensure a bitcast/and/trunc combination eliminates the bitcast.
Reid Spencer [Mon, 27 Nov 2006 05:06:58 +0000 (05:06 +0000)]
Add a test to ensure a bitcast/and/trunc combination eliminates the bitcast.

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

17 years agoFor better or worse, load from i1 is assumed to be zero extended. Do not
Chris Lattner [Mon, 27 Nov 2006 04:40:53 +0000 (04:40 +0000)]
For better or worse, load from i1 is assumed to be zero extended.  Do not
form a load from i1 from larger loads that may not be zext'd.

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

17 years agoIf a brcond condition is promoted, make sure to zero extend it, even if not
Chris Lattner [Mon, 27 Nov 2006 04:39:56 +0000 (04:39 +0000)]
If a brcond condition is promoted, make sure to zero extend it, even if not
expanded into BR_CC.

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

17 years agoFor PR950:
Reid Spencer [Mon, 27 Nov 2006 01:05:10 +0000 (01:05 +0000)]
For PR950:
The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.

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

17 years agoDon't use bitcast yet!
Reid Spencer [Sun, 26 Nov 2006 21:22:01 +0000 (21:22 +0000)]
Don't use bitcast yet!

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

17 years agoMake this test case easier to read. No functional changes.
Reid Spencer [Sun, 26 Nov 2006 18:27:09 +0000 (18:27 +0000)]
Make this test case easier to read. No functional changes.

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

17 years agoRemoved #include <iostream> and replace with llvm_* streams.
Bill Wendling [Sun, 26 Nov 2006 10:52:51 +0000 (10:52 +0000)]
Removed #include <iostream> and replace with llvm_* streams.

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

17 years agoAdd method that will take a function pointer so that it can handle things
Bill Wendling [Sun, 26 Nov 2006 10:51:51 +0000 (10:51 +0000)]
Add method that will take a function pointer so that it can handle things
like "llvm_cerr << std::flush";

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

17 years agoRemove #include <iostream> and use llvm_* streams instead.
Bill Wendling [Sun, 26 Nov 2006 10:17:54 +0000 (10:17 +0000)]
Remove #include <iostream> and use llvm_* streams instead.

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

17 years agoReplace #include <iostream> with llvm_* streams.
Bill Wendling [Sun, 26 Nov 2006 10:02:32 +0000 (10:02 +0000)]
Replace #include <iostream> with llvm_* streams.

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

17 years agoRemoved #include <iostream> and replaced with llvm_* streams.
Bill Wendling [Sun, 26 Nov 2006 09:46:52 +0000 (09:46 +0000)]
Removed #include <iostream> and replaced with llvm_* streams.

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

17 years agoRemoved #include <iostream> and used the llvm_cerr/DOUT streams instead.
Bill Wendling [Sun, 26 Nov 2006 09:17:06 +0000 (09:17 +0000)]
Removed #include <iostream> and used the llvm_cerr/DOUT streams instead.

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

17 years agofix storing bools to mem and unordered FP ops
Duraid Madina [Sun, 26 Nov 2006 04:34:26 +0000 (04:34 +0000)]
fix storing bools to mem and unordered FP ops

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

17 years agoMake the absolute/relative tolerance information easier to read/understand.
Reid Spencer [Sat, 25 Nov 2006 08:38:44 +0000 (08:38 +0000)]
Make the absolute/relative tolerance information easier to read/understand.

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

17 years agoAdd newline at end of file.
Reid Spencer [Sat, 25 Nov 2006 05:41:02 +0000 (05:41 +0000)]
Add newline at end of file.

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

17 years agoOnly show the first few lines of difference.
Reid Spencer [Sat, 25 Nov 2006 04:07:06 +0000 (04:07 +0000)]
Only show the first few lines of difference.

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

17 years agoAdd an option to enable lli (interpreter mode) testing.
Reid Spencer [Fri, 24 Nov 2006 20:34:16 +0000 (20:34 +0000)]
Add an option to enable lli (interpreter mode) testing.

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

17 years agoFix some typos.
Reid Spencer [Thu, 23 Nov 2006 16:45:52 +0000 (16:45 +0000)]
Fix some typos.

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

17 years agoPromote GEP ubyte indices to uint. Backwards compatibility for 1.2 and
Reid Spencer [Thu, 23 Nov 2006 15:14:52 +0000 (15:14 +0000)]
Promote GEP ubyte indices to uint. Backwards compatibility for 1.2 and
older features will be dropped soon and these test cases must not rely
on the upgrade capability.

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

17 years agoUpdate to new predicate simplifier VRP design. Fixes PR966 and PR967.
Nick Lewycky [Wed, 22 Nov 2006 23:49:16 +0000 (23:49 +0000)]
Update to new predicate simplifier VRP design. Fixes PR966 and PR967.
Remove predicate simplifier from default gcc3 pipeline. New design is too
slow to enable by default.
Add new testcases for problems encountered in development.

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

17 years agoStop early if there is no mis-optimization.
Reid Spencer [Wed, 22 Nov 2006 03:46:45 +0000 (03:46 +0000)]
Stop early if there is no mis-optimization.

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

17 years agoDocumented the --disable-compression option in gccld and gccas.
John Criswell [Tue, 21 Nov 2006 22:53:12 +0000 (22:53 +0000)]
Documented the --disable-compression option in gccld and gccas.

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

17 years agoAdded the --disable-compression option which controls whether the
John Criswell [Tue, 21 Nov 2006 22:50:24 +0000 (22:50 +0000)]
Added the --disable-compression option which controls whether the
generated bytecode uses compression.

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

17 years agoThis xform is handled by FoldOpIntoPhi in visitCastInst in a more elegant way.
Chris Lattner [Tue, 21 Nov 2006 17:05:13 +0000 (17:05 +0000)]
This xform is handled by FoldOpIntoPhi in visitCastInst in a more elegant way.

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

17 years agoRefactored *GVRequiresExtraLoad() to Subtarget method.
Anton Korobeynikov [Tue, 21 Nov 2006 00:01:06 +0000 (00:01 +0000)]
Refactored *GVRequiresExtraLoad() to Subtarget method.

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

17 years agoTest for PR1013.
Jim Laskey [Mon, 20 Nov 2006 21:58:02 +0000 (21:58 +0000)]
Test for PR1013.

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

17 years agonew testcase
Chris Lattner [Mon, 20 Nov 2006 21:20:57 +0000 (21:20 +0000)]
new testcase

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

17 years agoin ppc64-mode, don't allocate the 32-bit version of r13 either.
Chris Lattner [Mon, 20 Nov 2006 20:48:05 +0000 (20:48 +0000)]
in ppc64-mode, don't allocate the 32-bit version of r13 either.

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

17 years agoGlobal label not handled correctly.
Jim Laskey [Mon, 20 Nov 2006 20:29:06 +0000 (20:29 +0000)]
Global label not handled correctly.

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

17 years agor13 is the thread pointer on darwin/ppc64, don't allocate it.
Chris Lattner [Mon, 20 Nov 2006 19:33:51 +0000 (19:33 +0000)]
r13 is the thread pointer on darwin/ppc64, don't allocate it.

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

17 years agoFix PR1005
Chris Lattner [Mon, 20 Nov 2006 18:57:02 +0000 (18:57 +0000)]
Fix PR1005

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

17 years agoFix PR1001, patch by Nikhil Patil!
Chris Lattner [Mon, 20 Nov 2006 18:54:33 +0000 (18:54 +0000)]
Fix PR1001, patch by Nikhil Patil!

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

17 years agoFix codegen for x86-64 on systems (like ppc or i386) that don't have 64-bit
Chris Lattner [Mon, 20 Nov 2006 18:16:05 +0000 (18:16 +0000)]
Fix codegen for x86-64 on systems (like ppc or i386) that don't have 64-bit
features autodetected.  This fixes PR1010 and Regression/CodeGen/X86/xmm-r64.ll
on non-x86-64 hosts.

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

17 years agoFix PR1011 and CodeGen/Generic/2006-11-20-DAGCombineCrash.ll
Chris Lattner [Mon, 20 Nov 2006 18:05:46 +0000 (18:05 +0000)]
Fix PR1011 and CodeGen/Generic/2006-11-20-DAGCombineCrash.ll

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

17 years agoTestcase for PR1011
Chris Lattner [Mon, 20 Nov 2006 18:05:26 +0000 (18:05 +0000)]
Testcase for PR1011

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

17 years agosetOperand should not zap the operand list or add implicit operands to an
Chris Lattner [Mon, 20 Nov 2006 17:57:22 +0000 (17:57 +0000)]
setOperand should not zap the operand list or add implicit operands to an
instruction.  Doing so breaks the FP stackifier, the alpha branch selector
the sparc fpmover.

This fixes PR1012 and CodeGen/X86/fp-stack-compare.ll

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

17 years agoTestcase for pr1012
Chris Lattner [Mon, 20 Nov 2006 17:55:30 +0000 (17:55 +0000)]
Testcase for pr1012

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

17 years agoWe should perform extra load for dllimported calls
Anton Korobeynikov [Mon, 20 Nov 2006 10:46:14 +0000 (10:46 +0000)]
We should perform extra load for dllimported calls

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

17 years agoFixed typo
Tanya Lattner [Mon, 20 Nov 2006 06:07:10 +0000 (06:07 +0000)]
Fixed typo

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

17 years agoAdding 1.9 release and removing references to cfrontend
Tanya Lattner [Mon, 20 Nov 2006 06:04:46 +0000 (06:04 +0000)]
Adding 1.9 release and removing references to cfrontend

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

17 years agoChanging cfrontend dir to llvm-gcc3.4 as the example.
Tanya Lattner [Mon, 20 Nov 2006 05:52:06 +0000 (05:52 +0000)]
Changing cfrontend dir to llvm-gcc3.4 as the example.

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

17 years agoFor PR950:
Reid Spencer [Mon, 20 Nov 2006 01:22:35 +0000 (01:22 +0000)]
For PR950:
First in a series of patches to convert SetCondInst into ICmpInst and
FCmpInst using only two opcodes and having the instructions contain their
predicate value. Nothing uses these classes yet. More patches to follow.

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

17 years agoFor PR950:
Reid Spencer [Sun, 19 Nov 2006 23:07:00 +0000 (23:07 +0000)]
For PR950:
Retain the signedness of the old integer types in a new TypeInfo structure
so that it can be used in the grammar to implement auto-upgrade of things
that depended on signedness of types. This doesn't implement any new
functionality in the AsmParser, its just plumbing for future changes.

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

17 years agoCorrections from review.
Reid Spencer [Sun, 19 Nov 2006 03:00:14 +0000 (03:00 +0000)]
Corrections from review.

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

17 years agoDon't transform in another bad case: if the block is empty, it should be
Chris Lattner [Sat, 18 Nov 2006 22:25:39 +0000 (22:25 +0000)]
Don't transform in another bad case: if the block is empty, it should be
simplified before we do this xform so that our cost model is accurate.

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

17 years agoFix another case we *don't* want to do this xform.
Chris Lattner [Sat, 18 Nov 2006 21:56:39 +0000 (21:56 +0000)]
Fix another case we *don't* want to do this xform.

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

17 years agoUpdate a reference to the old setcc instruction.
Reid Spencer [Sat, 18 Nov 2006 21:55:45 +0000 (21:55 +0000)]
Update a reference to the old setcc instruction.

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

17 years agoFor PR950:
Reid Spencer [Sat, 18 Nov 2006 21:50:54 +0000 (21:50 +0000)]
For PR950:
Documentation preview of the upcoming icmp and fcmp instructions that
will replace the various setcc instructions.

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

17 years agoMachineInstr includes this
Chris Lattner [Sat, 18 Nov 2006 21:48:05 +0000 (21:48 +0000)]
MachineInstr includes this

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

17 years agoImplement operator<< for machine basic blocks to make it easier to dump them.
Chris Lattner [Sat, 18 Nov 2006 21:47:36 +0000 (21:47 +0000)]
Implement operator<< for machine basic blocks to make it easier to dump them.

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

17 years agomake the previous change more aggressive, moving any block with no fallthrough.
Chris Lattner [Sat, 18 Nov 2006 21:30:35 +0000 (21:30 +0000)]
make the previous change more aggressive, moving any block with no fallthrough.
This speeds up yacr2 by 7% on a core2.

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

17 years agoMinor code layout tweak: if we have something like this:
Chris Lattner [Sat, 18 Nov 2006 20:47:54 +0000 (20:47 +0000)]
Minor code layout tweak: if we have something like this:

  if (cond) goto BB2
BB1:
    ...
    return;
BB2:
   ...

Move BB1 to the end of the function so that the code falls through in the
non-return case.  This has the effect of moving assert (and other no-return
call) bodies and return blocks out of loops.

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

17 years agoDo not convert massive blocks on phi nodes into select statements. Instead
Chris Lattner [Sat, 18 Nov 2006 19:19:36 +0000 (19:19 +0000)]
Do not convert massive blocks on phi nodes into select statements.  Instead
only do these transformations if there are a small number of phi's.
This speeds up Ptrdist/ks from 2.35s to 2.19s on my mac pro.

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

17 years agoconverting massive blocks of phis into selects like this is silly.
Chris Lattner [Sat, 18 Nov 2006 19:17:52 +0000 (19:17 +0000)]
converting massive blocks of phis into selects like this is silly.

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

17 years agoMake the awk filter print out which files its eliminating.
Reid Spencer [Sat, 18 Nov 2006 18:30:18 +0000 (18:30 +0000)]
Make the awk filter print out which files its eliminating.

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

17 years agoThis is a utility for preparing patches against LLVM. It runs cvs diff with
Reid Spencer [Sat, 18 Nov 2006 18:02:30 +0000 (18:02 +0000)]
This is a utility for preparing patches against LLVM. It runs cvs diff with
the correct options, places the patch content in order that makes sense for
review, and filters cruft out of the patch (like diffs in *.cvs files). It
produces both a NAME.patch.raw (unfiltered) and NAME.patch (filtered) file.

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

17 years agoProvide a list of gccld optimization switches.
Reid Spencer [Sat, 18 Nov 2006 17:14:09 +0000 (17:14 +0000)]
Provide a list of gccld optimization switches.

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

17 years agoFix bugs in this. What was I thinking??? :)
Reid Spencer [Sat, 18 Nov 2006 08:06:17 +0000 (08:06 +0000)]
Fix bugs in this. What was I thinking??? :)

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