oota-llvm.git
15 years agoAdd carry producing / using versions of add / sub
Anton Korobeynikov [Sat, 18 Jul 2009 14:16:06 +0000 (14:16 +0000)]
Add carry producing / using versions of add / sub

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

15 years agoExpand frem
Anton Korobeynikov [Sat, 18 Jul 2009 13:44:25 +0000 (13:44 +0000)]
Expand frem

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

15 years agoTurn abort() into unreachable
Anton Korobeynikov [Sat, 18 Jul 2009 13:34:59 +0000 (13:34 +0000)]
Turn abort() into unreachable

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

15 years agoTurn few asserts into errors / unreachable's
Anton Korobeynikov [Sat, 18 Jul 2009 13:33:17 +0000 (13:33 +0000)]
Turn few asserts into errors / unreachable's

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

15 years agoHandle vector returns
Anton Korobeynikov [Sat, 18 Jul 2009 12:51:06 +0000 (12:51 +0000)]
Handle vector returns

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

15 years agoProvide expansion for ct* intrinsics
Anton Korobeynikov [Sat, 18 Jul 2009 12:26:13 +0000 (12:26 +0000)]
Provide expansion for ct* intrinsics

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

15 years agoExpand sext_inreg for i1
Anton Korobeynikov [Sat, 18 Jul 2009 12:20:36 +0000 (12:20 +0000)]
Expand sext_inreg for i1

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

15 years agoAdd combine: X sdiv (1 << Y) -> X udiv (1 << Y) when X doesn't have the
Eli Friedman [Sat, 18 Jul 2009 09:53:21 +0000 (09:53 +0000)]
Add combine: X sdiv (1 << Y) -> X udiv (1 << Y) when X doesn't have the
sign bit set.

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

15 years agoRemove no-op check.
Eli Friedman [Sat, 18 Jul 2009 09:21:25 +0000 (09:21 +0000)]
Remove no-op check.

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

15 years agoRemove dead check.
Eli Friedman [Sat, 18 Jul 2009 09:12:15 +0000 (09:12 +0000)]
Remove dead check.

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

15 years agoCanonicalize insert/extractelement from single-element vectors into
Eli Friedman [Sat, 18 Jul 2009 09:07:47 +0000 (09:07 +0000)]
Canonicalize insert/extractelement from single-element vectors into
bitcasts.

It would also be possible to canonicalize the other way; does anyone
have a preference?

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

15 years agoFix simplifylibcalls memset recognition to work on 64-bit platforms
Eli Friedman [Sat, 18 Jul 2009 08:34:51 +0000 (08:34 +0000)]
Fix simplifylibcalls memset recognition to work on 64-bit platforms
where int is 32 bits.

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

15 years agoSwitch lli back to using allocate-gvs-with-code behavior.
Daniel Dunbar [Sat, 18 Jul 2009 08:07:13 +0000 (08:07 +0000)]
Switch lli back to using allocate-gvs-with-code behavior.
 - Otherwise we get two regressions in llvm-test for applications which run out
   of space.

 - Once the JIT memory manager is improved, this can be switched back.

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

15 years agoReplace intersectWith with maximalIntersectWith. The latter guarantees that
Nick Lewycky [Sat, 18 Jul 2009 06:34:42 +0000 (06:34 +0000)]
Replace intersectWith with maximalIntersectWith. The latter guarantees that
all values belonging to the intersection will belong to the resulting range.
The former was inconsistent about that point (either way is fine, just pick
one.) This is part of PR4545.

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

15 years agoUnbreak unittests build.
Daniel Dunbar [Sat, 18 Jul 2009 06:08:49 +0000 (06:08 +0000)]
Unbreak unittests build.
 - Reid, please check, I'm not sure if this is what was intended.

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

15 years agoFix the inline cost calculation to take into account instructions
Eli Friedman [Sat, 18 Jul 2009 05:26:06 +0000 (05:26 +0000)]
Fix the inline cost calculation to take into account instructions
which cannot be folded even if they have constant operands. Significantly
helps if_spppsubr.c attached to PR4573.

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

15 years agoAdd line breaks to make the debug output a bit more readable.
Eli Friedman [Sat, 18 Jul 2009 05:12:58 +0000 (05:12 +0000)]
Add line breaks to make the debug output a bit more readable.

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

15 years agoCatch more coalescing opportunities.
Evan Cheng [Sat, 18 Jul 2009 04:52:23 +0000 (04:52 +0000)]
Catch more coalescing opportunities.

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

15 years agoEnable cross register class coalescing.
Evan Cheng [Sat, 18 Jul 2009 02:10:10 +0000 (02:10 +0000)]
Enable cross register class coalescing.

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

15 years agoMake GetElementPtr ConstantExprs default to having no pointer overflow.
Dan Gohman [Sat, 18 Jul 2009 01:49:22 +0000 (01:49 +0000)]
Make GetElementPtr ConstantExprs default to having no pointer overflow.

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

15 years agoRevert 76177 for now. It's messing up ARM asm printing. Also this significant debate...
Evan Cheng [Sat, 18 Jul 2009 01:43:53 +0000 (01:43 +0000)]
Revert 76177 for now. It's messing up ARM asm printing. Also this significant debate about its efficiency.

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

15 years agoFix this accidentally inverted condition.
Dan Gohman [Sat, 18 Jul 2009 00:58:38 +0000 (00:58 +0000)]
Fix this accidentally inverted condition.

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

15 years agoAdd EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create().
Reid Kleckner [Sat, 18 Jul 2009 00:42:18 +0000 (00:42 +0000)]
Add EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create().

Also a test commit.

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

15 years agoConvert more code to use Operator instead of explicitly handling both
Dan Gohman [Fri, 17 Jul 2009 23:55:56 +0000 (23:55 +0000)]
Convert more code to use Operator instead of explicitly handling both
ConstantExpr and Instruction. This involves duplicating some code
between GetElementPtrInst and GEPOperator, but it's not a lot.

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

15 years agoUpdate CMake file.
Ted Kremenek [Fri, 17 Jul 2009 23:50:26 +0000 (23:50 +0000)]
Update CMake file.

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

15 years agollvm-mc: Default -triple to LLVM_HOSTTRIPLE.
Daniel Dunbar [Fri, 17 Jul 2009 22:51:20 +0000 (22:51 +0000)]
llvm-mc: Default -triple to LLVM_HOSTTRIPLE.

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

15 years agoFix pr4552. Stack slot coloring with register must take care not to generate illegal...
Evan Cheng [Fri, 17 Jul 2009 22:42:51 +0000 (22:42 +0000)]
Fix pr4552. Stack slot coloring with register must take care not to generate illegal ams.

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

15 years agollvm-mc: Add -triple, and start fetching the target asm printer.
Daniel Dunbar [Fri, 17 Jul 2009 22:38:58 +0000 (22:38 +0000)]
llvm-mc: Add -triple, and start fetching the target asm printer.

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

15 years agoAdd llvm::InitializeAllTargetInfos and llvm::InitializeAllAsmParsers.
Daniel Dunbar [Fri, 17 Jul 2009 22:35:35 +0000 (22:35 +0000)]
Add llvm::InitializeAllTargetInfos and llvm::InitializeAllAsmParsers.

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

15 years agoMake BasicAliasAnalysis and Value::getUnderlyingObject use
Dan Gohman [Fri, 17 Jul 2009 22:25:10 +0000 (22:25 +0000)]
Make BasicAliasAnalysis and Value::getUnderlyingObject use
GEPOperator's hasNoPointer0verflow(), and make a few places in instcombine
that create GEPs that may overflow clear the NoOverflow value. Among
other things, this partially addresses PR2831.

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

15 years agoFix some typos in a comment.
Dan Gohman [Fri, 17 Jul 2009 22:16:21 +0000 (22:16 +0000)]
Fix some typos in a comment.

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

15 years agoFix x86 inline ams 'q' constraint support. In 32-bit mode, it's just like 'Q', i...
Evan Cheng [Fri, 17 Jul 2009 22:13:25 +0000 (22:13 +0000)]
Fix x86 inline ams 'q' constraint support. In 32-bit mode, it's just like 'Q', i.e. EAX, EDX, ECX, EBX. In 64-bit mode, it just means all the i64r registers. Yeah, that makes sense.

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

15 years agoTweak svn:ignore
Daniel Dunbar [Fri, 17 Jul 2009 22:08:54 +0000 (22:08 +0000)]
Tweak svn:ignore

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

15 years agoremove AsmPrinter::findGlobalValue, just use Value::stripPointerCasts instead.
Chris Lattner [Fri, 17 Jul 2009 22:00:23 +0000 (22:00 +0000)]
remove AsmPrinter::findGlobalValue, just use Value::stripPointerCasts instead.

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

15 years agoAdd a GEPOperator class, and move the hasNoPointerOverflow
Dan Gohman [Fri, 17 Jul 2009 21:33:58 +0000 (21:33 +0000)]
Add a GEPOperator class, and move the hasNoPointerOverflow
accessors into it.

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

15 years agoRegenerate configure for ddunbar.
Jeffrey Yasskin [Fri, 17 Jul 2009 21:33:35 +0000 (21:33 +0000)]
Regenerate configure for ddunbar.

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

15 years agoReenable asmparser dependency generation, now with improved Perl foo.
Daniel Dunbar [Fri, 17 Jul 2009 21:26:27 +0000 (21:26 +0000)]
Reenable asmparser dependency generation, now with improved Perl foo.

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

15 years agoDisable llvm-config magic for AsmParser, it is isn't right & is breaking the build.
Daniel Dunbar [Fri, 17 Jul 2009 21:22:20 +0000 (21:22 +0000)]
Disable llvm-config magic for AsmParser, it is isn't right & is breaking the build.

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

15 years agoend sentence in period, draw attention to the fact that you should
Chris Lattner [Fri, 17 Jul 2009 21:14:28 +0000 (21:14 +0000)]
end sentence in period, draw attention to the fact that you should
only do this if you are a crazy russian hacker. ;-)

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

15 years agowe beat exceptions out of lib/system a long time ago.
Chris Lattner [Fri, 17 Jul 2009 21:11:24 +0000 (21:11 +0000)]
we beat exceptions out of lib/system a long time ago.

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

15 years agoSimplify some more.
Evan Cheng [Fri, 17 Jul 2009 21:06:58 +0000 (21:06 +0000)]
Simplify some more.

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

15 years agoCommit this change, to accompany r76232.
Dan Gohman [Fri, 17 Jul 2009 21:03:54 +0000 (21:03 +0000)]
Commit this change, to accompany r76232.

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

15 years agoUse more terse and precise linkage checks.
Chris Lattner [Fri, 17 Jul 2009 21:00:50 +0000 (21:00 +0000)]
Use more terse and precise linkage checks.

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

15 years agoEliminate yet another copy of getOpcode.
Dan Gohman [Fri, 17 Jul 2009 20:58:59 +0000 (20:58 +0000)]
Eliminate yet another copy of getOpcode.

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

15 years agoFix typo
Daniel Dunbar [Fri, 17 Jul 2009 20:56:18 +0000 (20:56 +0000)]
Fix typo

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

15 years agothese two pieces of code are the same because we always
Chris Lattner [Fri, 17 Jul 2009 20:53:51 +0000 (20:53 +0000)]
these two pieces of code are the same because we always
emit the EHFrame label next to the section_eh_frame and
eh_frame_common labels.

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

15 years agoFix a typo that Duncan spotted.
Dan Gohman [Fri, 17 Jul 2009 20:51:47 +0000 (20:51 +0000)]
Fix a typo that Duncan spotted.

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

15 years agoAdd a new Operator class, for handling Instructions and ConstantExprs
Dan Gohman [Fri, 17 Jul 2009 20:47:02 +0000 (20:47 +0000)]
Add a new Operator class, for handling Instructions and ConstantExprs
in a convenient manner, factoring out some common code from
InstructionCombining and ValueTracking. Move the contents of
BinaryOperators.h into Operator.h and use Operator to generalize them
to support ConstantExprs as well as Instructions.

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

15 years agoUntangle a snarl that I discovered when updating the mangler,
Chris Lattner [Fri, 17 Jul 2009 20:46:40 +0000 (20:46 +0000)]
Untangle a snarl that I discovered when updating the mangler,
starting in getCurrentFunctionEHName.  Among other problems,
we would try to privative a "foo.eh" label, but end up emitting
the label as _Lfoo.eh instead of L_foo.eh on darwin.  This is really
bad, and the linker has always tolerated these labels existing.
For now, just emit them as _foo.eh.

This patch also fixes problems with ".eh" labels on unnamed
functions and eliminates two strangely defined TargetAsmInfo
hooks.

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

15 years agoSketch support for target specific assembly parser.
Daniel Dunbar [Fri, 17 Jul 2009 20:42:00 +0000 (20:42 +0000)]
Sketch support for target specific assembly parser.
 - Not fully enabled yet, need a configure regeneration.

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

15 years agoTrailing whitespace.
Mikhail Glushenkov [Fri, 17 Jul 2009 20:38:17 +0000 (20:38 +0000)]
Trailing whitespace.

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

15 years agofix include guard.
Chris Lattner [Fri, 17 Jul 2009 20:32:07 +0000 (20:32 +0000)]
fix include guard.

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

15 years agoSimplify the coalescer (finally!) by making LiveIntervals::processImplicitDefs a...
Evan Cheng [Fri, 17 Jul 2009 19:43:40 +0000 (19:43 +0000)]
Simplify the coalescer (finally!) by making LiveIntervals::processImplicitDefs a little more aggressive and teaching liveintervals to make use of isUndef marker on MachineOperands.

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

15 years agoGetElementPtr instructions default to having no overflow.
Dan Gohman [Fri, 17 Jul 2009 19:23:21 +0000 (19:23 +0000)]
GetElementPtr instructions default to having no overflow.

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

15 years agoImplement cmake LLVM_MULTITHREADED gcc atomic builtin checks.
Xerxes Ranby [Fri, 17 Jul 2009 19:22:41 +0000 (19:22 +0000)]
Implement cmake LLVM_MULTITHREADED gcc atomic builtin checks.

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

15 years agoFix a crash in SROA. The FunctionPass::doInitialization method was never
Bob Wilson [Fri, 17 Jul 2009 19:05:13 +0000 (19:05 +0000)]
Fix a crash in SROA.  The FunctionPass::doInitialization method was never
being called so that Context was never initialized.  I'm not sure if this
is the right fix but at least it keeps opt from crashing.

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

15 years agoDefine a no-pointer-overflow flag for GetElementPtr instructions.
Dan Gohman [Fri, 17 Jul 2009 19:01:15 +0000 (19:01 +0000)]
Define a no-pointer-overflow flag for GetElementPtr instructions.

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

15 years agoAdd new classes for working with optional optimization data
Dan Gohman [Fri, 17 Jul 2009 18:59:51 +0000 (18:59 +0000)]
Add new classes for working with optional optimization data
for binary operators Add, Sub, Mul, and UDiv.

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

15 years agoFix copy & paste errors
Anton Korobeynikov [Fri, 17 Jul 2009 18:57:16 +0000 (18:57 +0000)]
Fix copy & paste errors

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

15 years agoAdd a method to clear optional optimization information from a Value.
Dan Gohman [Fri, 17 Jul 2009 18:56:23 +0000 (18:56 +0000)]
Add a method to clear optional optimization information from a Value.

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

15 years agoAdd missed attributes to C bindings
Anton Korobeynikov [Fri, 17 Jul 2009 18:55:30 +0000 (18:55 +0000)]
Add missed attributes to C bindings

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

15 years agoStart generating AsmMatcher.inc for X86.
Daniel Dunbar [Fri, 17 Jul 2009 18:55:26 +0000 (18:55 +0000)]
Start generating AsmMatcher.inc for X86.

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

15 years agotblgen/AsmMatcher: Emit simple matcher for register names.
Daniel Dunbar [Fri, 17 Jul 2009 18:51:11 +0000 (18:51 +0000)]
tblgen/AsmMatcher: Emit simple matcher for register names.

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

15 years agor76102 added the MachineCodeEmitter::processDebugLoc call and called it from
Jeffrey Yasskin [Fri, 17 Jul 2009 18:49:39 +0000 (18:49 +0000)]
r76102 added the MachineCodeEmitter::processDebugLoc call and called it from
the X86 Emitter.  This patch extends that to the rest of the targets that can
write to a MachineCodeEmitter: ARM, Alpha, and PPC.

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

15 years agoFix compile warning.
Daniel Dunbar [Fri, 17 Jul 2009 18:33:52 +0000 (18:33 +0000)]
Fix compile warning.

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

15 years agoAdd missed return
Anton Korobeynikov [Fri, 17 Jul 2009 18:28:59 +0000 (18:28 +0000)]
Add missed return

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

15 years agoopt: Add -std-link-opts argument, matches llvm-ld's optimizations.
Daniel Dunbar [Fri, 17 Jul 2009 18:09:39 +0000 (18:09 +0000)]
opt: Add -std-link-opts argument, matches llvm-ld's optimizations.

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

15 years agoAdd support for naked functions
Anton Korobeynikov [Fri, 17 Jul 2009 18:07:26 +0000 (18:07 +0000)]
Add support for naked functions

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

15 years agorename test.
Chris Lattner [Fri, 17 Jul 2009 18:05:55 +0000 (18:05 +0000)]
rename test.

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

15 years agorevert one of the loops to use indicies over iterators because there are vector inser...
Bruno Cardoso Lopes [Fri, 17 Jul 2009 18:02:30 +0000 (18:02 +0000)]
revert one of the loops to use indicies over iterators because there are vector insertions inside the loop

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

15 years agoAdd a SubclassOptionalData field to Value. See the doxygen comment for
Dan Gohman [Fri, 17 Jul 2009 17:16:59 +0000 (17:16 +0000)]
Add a SubclassOptionalData field to Value. See the doxygen comment for
details.

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

15 years agoFix typo.
Daniel Dunbar [Fri, 17 Jul 2009 16:41:57 +0000 (16:41 +0000)]
Fix typo.

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

15 years agoInitialize another Context, in the hopes of unbreaking CBE.
Daniel Dunbar [Fri, 17 Jul 2009 16:20:23 +0000 (16:20 +0000)]
Initialize another Context, in the hopes of unbreaking CBE.

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

15 years agoFix an apparent typo.
Dan Gohman [Fri, 17 Jul 2009 16:12:36 +0000 (16:12 +0000)]
Fix an apparent typo.

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

15 years agoMake DOUT an lvalue in release mode so that developers may use DOUT in
David Greene [Fri, 17 Jul 2009 15:55:53 +0000 (15:55 +0000)]
Make DOUT an lvalue in release mode so that developers may use DOUT in
their code in release mode.  This helps to debug release-mode problems.

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

15 years agoProvide slightly more refined error message when trying to lookup a target, and
Daniel Dunbar [Fri, 17 Jul 2009 15:50:49 +0000 (15:50 +0000)]
Provide slightly more refined error message when trying to lookup a target, and
none are registered.

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

15 years agoAdd logic to align instruction operands to columns for pretty-printing.
David Greene [Fri, 17 Jul 2009 14:24:46 +0000 (14:24 +0000)]
Add logic to align instruction operands to columns for pretty-printing.
No target uses this currently.  This patch only adds the mechanism so
that local installations can choose to enable this.

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

15 years agoAvoid a compiler warning when assertions are turned off.
Duncan Sands [Fri, 17 Jul 2009 12:25:14 +0000 (12:25 +0000)]
Avoid a compiler warning when assertions are turned off.

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

15 years agoTestcase for PR4214.
Duncan Sands [Fri, 17 Jul 2009 11:44:20 +0000 (11:44 +0000)]
Testcase for PR4214.

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

15 years agoDocumentation clarifications for isSafeToSpeculativelyExecute.
Eli Friedman [Fri, 17 Jul 2009 08:38:29 +0000 (08:38 +0000)]
Documentation clarifications for isSafeToSpeculativelyExecute.

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

15 years agoOops, accidentally set a legal operation to expand.
Eli Friedman [Fri, 17 Jul 2009 07:34:23 +0000 (07:34 +0000)]
Oops, accidentally set a legal operation to expand.

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

15 years agoExpand misc operations from test/CodeGen/Generic.
Eli Friedman [Fri, 17 Jul 2009 07:28:06 +0000 (07:28 +0000)]
Expand misc operations from test/CodeGen/Generic.

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

15 years agoHandle void in XCoreTargetLowering::isLegalAddressingMode. Triggers in
Eli Friedman [Fri, 17 Jul 2009 07:16:38 +0000 (07:16 +0000)]
Handle void in XCoreTargetLowering::isLegalAddressingMode.  Triggers in
test/CodeGen/Generic.

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

15 years agoRemove some unnecessary expansion markings. Add a few expansion
Eli Friedman [Fri, 17 Jul 2009 07:03:00 +0000 (07:03 +0000)]
Remove some unnecessary expansion markings.  Add a few expansion
markings that show up in test/CodeGen/Generic.

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

15 years agoAdd operation expansion/promotion for a bunch of operations, many of
Eli Friedman [Fri, 17 Jul 2009 06:36:24 +0000 (06:36 +0000)]
Add operation expansion/promotion for a bunch of operations, many of
which show up in test/CodeGen/Generic.

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

15 years agoAdd broken gcc from PR4532.
Nick Lewycky [Fri, 17 Jul 2009 06:32:10 +0000 (06:32 +0000)]
Add broken gcc from PR4532.

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

15 years agoFix tSUBspi operand definition. It reads and writes sp, which is a high register.
Evan Cheng [Fri, 17 Jul 2009 05:43:12 +0000 (05:43 +0000)]
Fix tSUBspi operand definition. It reads and writes sp, which is a high register.

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

15 years agoSet an operation expansion, noticed while running
Eli Friedman [Fri, 17 Jul 2009 05:23:03 +0000 (05:23 +0000)]
Set an operation expansion, noticed while running
llc over test/CodeGen/Generic with -march=alpha.

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

15 years agoMake promotion in operation legalization for SETCC work correctly.
Eli Friedman [Fri, 17 Jul 2009 05:16:04 +0000 (05:16 +0000)]
Make promotion in operation legalization for SETCC work correctly.

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

15 years agoReplace isTrapping with a new, similar method called
Eli Friedman [Fri, 17 Jul 2009 04:28:42 +0000 (04:28 +0000)]
Replace isTrapping with a new, similar method called
isSafeToSpeculativelyExecute. The new method is a bit closer to what
the callers actually care about in that it rejects more things callers
don't want.  It also adds more precise handling for integer
division, and unifies code for analyzing the legality of a speculative
load.

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

15 years agoOne more operation expansion for MIPS, from test/CodeGen/Generic.
Eli Friedman [Fri, 17 Jul 2009 04:07:24 +0000 (04:07 +0000)]
One more operation expansion for MIPS, from test/CodeGen/Generic.

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

15 years agoMake sure CWriter's Context get's initialized.
Daniel Dunbar [Fri, 17 Jul 2009 03:43:21 +0000 (03:43 +0000)]
Make sure CWriter's Context get's initialized.

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

15 years agoExpand a bunch of illegal operations on MIPS (found by
Eli Friedman [Fri, 17 Jul 2009 02:28:12 +0000 (02:28 +0000)]
Expand a bunch of illegal operations on MIPS (found by
inspection and running over CodeGen/Generic).

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

15 years agoFix 'may be used uninitialized' warning.
Daniel Dunbar [Fri, 17 Jul 2009 02:19:26 +0000 (02:19 +0000)]
Fix 'may be used uninitialized' warning.
 - Anton, please review.

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

15 years agoAdd the private keyword to the polygen grammar.
Dan Gohman [Fri, 17 Jul 2009 01:07:45 +0000 (01:07 +0000)]
Add the private keyword to the polygen grammar.

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

15 years agoAdd the private keyword to the VIM syntax highlighting.
Dan Gohman [Fri, 17 Jul 2009 01:06:53 +0000 (01:06 +0000)]
Add the private keyword to the VIM syntax highlighting.

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

15 years agoFix my brain cramp by inverting the assertion condition.
Evan Cheng [Fri, 17 Jul 2009 00:32:06 +0000 (00:32 +0000)]
Fix my brain cramp by inverting the assertion condition.

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

15 years agoFix "no newline at end of file" warning from gcc.
Jeffrey Yasskin [Thu, 16 Jul 2009 23:58:14 +0000 (23:58 +0000)]
Fix "no newline at end of file" warning from gcc.

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

15 years agoPrivatize the MDNode uniquing table.
Owen Anderson [Thu, 16 Jul 2009 23:44:30 +0000 (23:44 +0000)]
Privatize the MDNode uniquing table.

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

15 years agoEmit cross regclass register moves for thumb2.
Anton Korobeynikov [Thu, 16 Jul 2009 23:26:06 +0000 (23:26 +0000)]
Emit cross regclass register moves for thumb2.
Minor code duplication cleanup.

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