Evan Cheng [Wed, 10 Sep 2008 18:25:29 +0000 (18:25 +0000)]
Fix a fastcc + sret bug. If fastcc and sret, callee doesn't need to pop the hidden struct ptr; Re-enable fastcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56061
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 10 Sep 2008 17:31:40 +0000 (17:31 +0000)]
Handle new intrinsics with vector arguments.
Patch by Paul Redmond.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56059
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 10 Sep 2008 15:52:34 +0000 (15:52 +0000)]
Add a break statement that I accidentally deleted when
I shuffled the fast-isel command-line options around. This fixes
a bunch of fast-isel failures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56057
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 10 Sep 2008 14:49:55 +0000 (14:49 +0000)]
fix white spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56056
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Wed, 10 Sep 2008 13:22:10 +0000 (13:22 +0000)]
Fix name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56055
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Wed, 10 Sep 2008 13:11:09 +0000 (13:11 +0000)]
Add trampoline support for the new FastCC calling
convention (not related to recent Ada testsuite
failures).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56054
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Wed, 10 Sep 2008 13:09:24 +0000 (13:09 +0000)]
Turn off the new FastCC for the moment. It causes
a slew of Ada testsuite failures on x86-32 linux.
Seems to be related to the use of float.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56053
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 10 Sep 2008 06:26:10 +0000 (06:26 +0000)]
Remove unnecessary bit-wise AND from the limited precision work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56049
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 10 Sep 2008 04:16:29 +0000 (04:16 +0000)]
Fix 80 col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56048
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 10 Sep 2008 01:09:32 +0000 (01:09 +0000)]
Fix a warning about comparing signed and unsigned values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56040
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 10 Sep 2008 00:30:50 +0000 (00:30 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56037
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 10 Sep 2008 00:24:59 +0000 (00:24 +0000)]
Check that both operands are f32 before attempting to lower.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56036
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 10 Sep 2008 00:20:20 +0000 (00:20 +0000)]
Implement "visitPow". This is mainly used to see if we have a pow() call of this
form:
powf(10.0f, x);
If this is the case, and also we want limited precision floating-point
calculations, then lower to do the limited-precision stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56035
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 9 Sep 2008 23:35:53 +0000 (23:35 +0000)]
A few more places where FPOW is being ignored.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56032
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 23:05:00 +0000 (23:05 +0000)]
Change -fast-isel-no-abort to -fast-isel-abort, which now defaults
to being off by default. Also, add assertion checks to check that
the various fast-isel-related command-line options are only used
when -fast-isel itself is enabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56029
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 9 Sep 2008 23:02:14 +0000 (23:02 +0000)]
Legalizer was missing code that expand fpow to a libcall.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56028
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 9 Sep 2008 22:39:21 +0000 (22:39 +0000)]
Adding 6-, 12-, and 18-bit limited-precision floating-point support for exp2
function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56025
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Tue, 9 Sep 2008 22:29:13 +0000 (22:29 +0000)]
Move the uglier parts of deciding not to emit a
UsedDirective for some symbols in llvm.used into
Darwin-specific code. I've decided LessPrivateGlobal
is potentially a useful abstraction and left it in
the target-independent area, with improved comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56024
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 9 Sep 2008 22:13:54 +0000 (22:13 +0000)]
Add support for 6-, 12-, and 18-bit limited precision calculations of exp for
floating-point numbers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56023
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 22:13:09 +0000 (22:13 +0000)]
Fix a minor wording ambiguity in the Developer Policy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56022
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 22:06:46 +0000 (22:06 +0000)]
Add a new option, -fast-isel-verbose, that can be used with
-fast-isel-no-abort to get a dump of all unhandled instructions,
without an abort.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56021
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 9 Sep 2008 21:44:23 +0000 (21:44 +0000)]
Clear preference when it no longer makes sense.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56019
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 9 Sep 2008 21:41:34 +0000 (21:41 +0000)]
Remove.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56018
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 9 Sep 2008 21:41:07 +0000 (21:41 +0000)]
if loop induction variable is always sign or zero extended then
extend the type of induction variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56017
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 9 Sep 2008 21:38:40 +0000 (21:38 +0000)]
Add assertion check.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56016
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 9 Sep 2008 20:54:34 +0000 (20:54 +0000)]
fix overflow check.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56011
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 9 Sep 2008 20:47:17 +0000 (20:47 +0000)]
Clean this up, based on Evan's suggestions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56009
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 9 Sep 2008 20:39:27 +0000 (20:39 +0000)]
- Add support for 6-, 12-, and 18-bit limited precision floating-point "log"
values.
- Refactored some of the code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56008
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 9 Sep 2008 20:22:01 +0000 (20:22 +0000)]
Fix PR2757. Ignore liveinterval register allocation preference if the preference register is not in the right register class. This can happen due to sub-register coalescing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56006
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 9 Sep 2008 20:05:04 +0000 (20:05 +0000)]
Make safer variant of alias resolution routine to be default
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56005
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Tue, 9 Sep 2008 19:56:34 +0000 (19:56 +0000)]
Simplify this some more. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56003
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 9 Sep 2008 19:04:59 +0000 (19:04 +0000)]
Resolve aliases, when possible
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56001
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 9 Sep 2008 18:42:23 +0000 (18:42 +0000)]
Add limited precision floating-point conversions of log10 for 6- and 18-bit
precisions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56000
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 18:25:28 +0000 (18:25 +0000)]
Mark IMPLICIT_DEF as being rematerializable and cheap-as-a-move.
It's already special-cased and treated as rematerializable within
LiveIntervals; this allows it to be handled by other passes
such as TwoAddressInstrctionPass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55999
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 9 Sep 2008 18:24:07 +0000 (18:24 +0000)]
Fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55998
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 9 Sep 2008 18:23:48 +0000 (18:23 +0000)]
Fix incorrect linker behaviour: we shouldn't resolve weak aliases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55997
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 9 Sep 2008 18:22:57 +0000 (18:22 +0000)]
Replace explicit pointer-size constants to TargetData query.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55996
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 18:11:14 +0000 (18:11 +0000)]
Make SimplifyDemandedVectorElts simplify vectors with multiple
users, and teach it about shufflevector instructions.
Also, fix a subtle bug in SimplifyDemandedVectorElts'
insertelement code.
This is a patch that was originally written by Eli Friedman,
with some fixes and cleanup by me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55995
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 9 Sep 2008 17:56:50 +0000 (17:56 +0000)]
Simplify.
Fix outdated comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55993
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Tue, 9 Sep 2008 17:52:13 +0000 (17:52 +0000)]
fit in 80 cols, minor tweaks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55992
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Tue, 9 Sep 2008 13:44:24 +0000 (13:44 +0000)]
Optimization suggested by Matthijs Kooijman.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55988
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Tue, 9 Sep 2008 12:40:47 +0000 (12:40 +0000)]
Correct callgraph construction. It has two problems:
(1) code left over from the days of ConstantPointerRef:
if a use of a function is a GlobalValue then that is
not considered a reason to add an edge from the external
node, even though the use may be as an initializer for
an externally visible global! There might be some point
to this behaviour when the use is by an alias (though the
code predated aliases by some centuries), but I think
PR2782 is a better way of handling that. (2) If function
F calls function G, and also G is a parameter to the
call, then an F->G edge is not added to the callgraph.
While this doesn't seem to matter much, adding such an
edge makes the callgraph more regular.
In addition, the new code should be faster as well as
simpler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55987
91177308-0d34-0410-b5e6-
96231b3b80d8
Argyrios Kyrtzidis [Tue, 9 Sep 2008 11:38:37 +0000 (11:38 +0000)]
Update VC++ project files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55985
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 9 Sep 2008 06:32:02 +0000 (06:32 +0000)]
Check for type legality before materializing integer constants in fast isel. With this change,
all of MultiSource/Applications passes on Darwin/X86 under FastISel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55982
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 9 Sep 2008 06:11:26 +0000 (06:11 +0000)]
Allow use of ssh to perform remote execution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55979
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 02:40:04 +0000 (02:40 +0000)]
Remove the code that protected FastISel from aborting in
the case of loads, stores, and conditional branches. It can
handle those now, so any that aren't handled should trigger
the abort.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55977
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 02:08:49 +0000 (02:08 +0000)]
Temporarily disable vector select in the bitcode reader. The
way it handles the type of the condition is breaking plain
scalar select in the case that the value is a
forward-reference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55976
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 9 Sep 2008 01:26:59 +0000 (01:26 +0000)]
Fix a constant lowering bug. Now we can do load and store instructions with funky getelementptr embedded in the address operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55975
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Tue, 9 Sep 2008 01:21:22 +0000 (01:21 +0000)]
Fix logic for not emitting no-dead-strip for some
objects in llvm.used (thanks Anton). Makes visible
the magic 'l' prefix for symbols on Darwin which are
to be passed through the assembler, then removed at
linktime (previously all references to this had been
hidden in the ObjC FE code, oh well).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55973
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 01:13:24 +0000 (01:13 +0000)]
Update generated files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55972
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 9 Sep 2008 01:06:56 +0000 (01:06 +0000)]
Fix simplifycfg crash in handing block merge.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55971
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 9 Sep 2008 01:02:47 +0000 (01:02 +0000)]
Extend the vcmp/fcmp LLVM IR instructions to take vectors as arguments
and, if so, to return a vector of boolean as a result;
Extend the select LLVM IR instruction to allow you to specify a result
type which is a vector of boolean, in which case the result will be an
element-wise selection instead of choosing one vector or the other; and
Update LangRef.html to describe these changes.
This patch was contributed by Preston Gurd!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55969
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 9 Sep 2008 00:28:24 +0000 (00:28 +0000)]
Add support for floating-point calculations of log2 with limited precisions of 6
and 18.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55968
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 8 Sep 2008 22:14:17 +0000 (22:14 +0000)]
s/RemoveUnreachableBlocks/RemoveUnreachableBlocksFromFn/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55965
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 8 Sep 2008 21:21:49 +0000 (21:21 +0000)]
Don't suppress no-dead-strip for used static functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55962
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 21:14:36 +0000 (21:14 +0000)]
Reapply 55902: Add test for checking proper lowering of eh_return & unwind init intrinsics on 32bit x86 targets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55960
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 21:14:19 +0000 (21:14 +0000)]
Reapply 55903: Testcase for 64-bit lowering of eh_return & unwind_init
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55959
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 21:13:56 +0000 (21:13 +0000)]
Reapply 55904: Unbreak and fix indentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55958
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 21:13:33 +0000 (21:13 +0000)]
Reapply 55901: Drop unused variable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55957
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 21:13:08 +0000 (21:13 +0000)]
Reapply 55900: We do support EH on x86-64!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55956
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 21:12:47 +0000 (21:12 +0000)]
Reapply 55899: First draft of EH support on x86/64-linux
Now with fix, which prevents subtle codegen bug to trigger on darwin.
No fix for bug though, it's still there.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55955
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 21:12:11 +0000 (21:12 +0000)]
Reapply blindly reverted 55898: Implement FRAME_TO_ARGS_OFFSET for x86-64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55954
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 20:37:59 +0000 (20:37 +0000)]
Fix a few I's that were meant to be renamed to BI's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55942
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 20:16:18 +0000 (20:16 +0000)]
Add a target triple; apparently LLVM doesn't use 64-bit
data directives on darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55941
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 8 Sep 2008 19:42:32 +0000 (19:42 +0000)]
Reverting r55898 as well. This wasn't reverted in the original revert...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55938
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 8 Sep 2008 18:12:00 +0000 (18:12 +0000)]
Accidental commit of partial 'stack canaries' code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55937
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 8 Sep 2008 18:00:39 +0000 (18:00 +0000)]
Remove these testcases associated with changes between r 55898 and r 55909.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55931
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 8 Sep 2008 18:00:26 +0000 (18:00 +0000)]
Redo the 3 existing low-precision expansions to
use float constants. An oversight by the numerics
people who supplied this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55930
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 8 Sep 2008 17:59:12 +0000 (17:59 +0000)]
Reverting r55898 to r55909. One of these patches was causing an ICE during the full bootstrap on Darwin:
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/xgcc
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/bin/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/lib/
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/include
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/sys-include
-O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-isystem ./include -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../llvm-gcc.src/gcc
-I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include
-I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include
-I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include
-DSHARED -m64 -DL_negdi2 -c ../../llvm-gcc.src/gcc/libgcc2.c -o
libgcc/x86_64/_negdi2_s.o
Assertion failed: (TargetRegisterInfo::isVirtualRegister(regA) &&
TargetRegisterInfo::isVirtualRegister(regB) && "cannot update physical
register live information"), function runOnMachineFunction, file
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/lib/CodeGen/TwoAddressInstructionPass.cpp,
line 311.
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/xgcc
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/bin/
-B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/lib/
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/include
-isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.4.0/sys-include
-O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-isystem ./include -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../llvm-gcc.src/gcc
-I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include
-I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include
-I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include
-I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include
-DSHARED -m64 -DL_lshrdi3 -c ../../llvm-gcc.src/gcc/libgcc2.c -o
libgcc/x86_64/_lshrdi3_s.o
../../llvm-gcc.src/gcc/unwind-dw2.c:1527: internal compiler error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
{standard input}:unknown:Undefined local symbol LBB21_11
{standard input}:unknown:Undefined local symbol LBB21_12
{standard input}:unknown:Undefined local symbol LBB21_13
{standard input}:unknown:Undefined local symbol LBB21_8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55928
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 8 Sep 2008 17:15:42 +0000 (17:15 +0000)]
Handle calls which produce i1 results: promote to i8 but and it with 1 to get the low bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55925
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 8 Sep 2008 17:14:54 +0000 (17:14 +0000)]
Remove unused counter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55924
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:59:01 +0000 (16:59 +0000)]
In visitUREM, arrange for the temporary UDIV node to be
revisited, consistent with the code in visitSREM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55923
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 8 Sep 2008 16:56:08 +0000 (16:56 +0000)]
Add VISIBILITY_HIDDEN on SDISelAsmOperandInfo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55922
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:45:59 +0000 (16:45 +0000)]
Bitcasting two or from aggregate types is not permitted. Update
LangRef.html, and teach the verifier to check bitcast instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55921
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:42:56 +0000 (16:42 +0000)]
i128 and f80 are implemented for x86-64 now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55920
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:40:13 +0000 (16:40 +0000)]
Add AsmPrinter support for i128 and larger static initializer data.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55919
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:31:35 +0000 (16:31 +0000)]
Fix copy+pastos in comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55918
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:30:29 +0000 (16:30 +0000)]
Fix the string for ISD::UDIVREM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55917
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:29:36 +0000 (16:29 +0000)]
Fix typos in (generated) comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55916
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 8 Sep 2008 16:28:17 +0000 (16:28 +0000)]
Delete an unused variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55915
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 8 Sep 2008 16:24:30 +0000 (16:24 +0000)]
xfail
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55914
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 8 Sep 2008 16:13:27 +0000 (16:13 +0000)]
Remove OptimizeIVType()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55913
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 8 Sep 2008 16:04:03 +0000 (16:04 +0000)]
Didn't mean to commit this change to how the
callgraph is printed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55912
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 8 Sep 2008 16:01:27 +0000 (16:01 +0000)]
Avoid redefinition and nnbreak windows build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55911
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 14:23:34 +0000 (14:23 +0000)]
Unbreak and fix indentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55904
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 14:23:16 +0000 (14:23 +0000)]
Testcase for 64-bit lowering of eh_return & unwind_init
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55903
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 14:22:57 +0000 (14:22 +0000)]
Add test for checking proper lowering of eh_return & unwind init intrinsics on 32bit x86 targets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55902
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 14:22:38 +0000 (14:22 +0000)]
Drop unused variable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55901
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 14:22:16 +0000 (14:22 +0000)]
We do support EH on x86-64!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55900
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 14:21:53 +0000 (14:21 +0000)]
First draft of EH support on x86/64-linux
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55899
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Mon, 8 Sep 2008 14:21:10 +0000 (14:21 +0000)]
Implement FRAME_TO_ARGS_OFFSET for x86-64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55898
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 8 Sep 2008 11:17:54 +0000 (11:17 +0000)]
Add testcase from bug 2770.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55897
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 8 Sep 2008 11:08:09 +0000 (11:08 +0000)]
Update the callgraph correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55896
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 8 Sep 2008 11:07:35 +0000 (11:07 +0000)]
Update the callgraph correctly in ArgumentPromotion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55895
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 8 Sep 2008 11:05:51 +0000 (11:05 +0000)]
Reapply 55859. This doesn't change anything as
long as the callgraph is correct. It checks
for wrong callgraphs more strictly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55894
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 8 Sep 2008 08:39:33 +0000 (08:39 +0000)]
Correctly handle physical register inputs. They are not explicit input operands in the resulting machine instrs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55893
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 8 Sep 2008 08:38:20 +0000 (08:38 +0000)]
Add fast isel physical register definition support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55892
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 8 Sep 2008 06:35:17 +0000 (06:35 +0000)]
Add support to extend call operands when needed. Enable x86 fastisel call support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55891
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 8 Sep 2008 01:56:32 +0000 (01:56 +0000)]
Revert my previous change -- the subtraction of two constants was a no-op
before. This is taken care of in the selection DAG pass. In my opinion, this
should be in one place or the other. I.e., it should probably be removed from
the DAG combiner (along with the other arithmetic transformations on constants
that are essentially no-ops).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55889
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sun, 7 Sep 2008 11:34:47 +0000 (11:34 +0000)]
Convert
// fold (sub c1, c2) -> c1-c2
from a no-op into an actual transformation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55886
91177308-0d34-0410-b5e6-
96231b3b80d8