oota-llvm.git
13 years agoSimplified LLVMConfig.
Oscar Fuentes [Tue, 28 Sep 2010 22:38:39 +0000 (22:38 +0000)]
Simplified LLVMConfig.

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

13 years agoFix a FIXME. _foo.eh symbols are currently always exported so that the linker
Bill Wendling [Tue, 28 Sep 2010 22:36:56 +0000 (22:36 +0000)]
Fix a FIXME. _foo.eh symbols are currently always exported so that the linker
knows about them. This is not necessary on 10.6 and later.

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

13 years agoWhen an MDNode changes to become identical to another MDNode,
Dan Gohman [Tue, 28 Sep 2010 22:07:19 +0000 (22:07 +0000)]
When an MDNode changes to become identical to another MDNode,
delete the MDNode that changed, rather than the other MDNode.
This is less work, because it doesn't require the changed node
to be re-inserted into the uniquing map and it doesn't require
the is-function-local flag to be recomputed. Also, it avoids
trouble when the existing node is part of a complicated
data structure.

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

13 years agoAdd a subtarget hook for reporting the misprediction penalty. Use this to provide...
Owen Anderson [Tue, 28 Sep 2010 21:57:50 +0000 (21:57 +0000)]
Add a subtarget hook for reporting the misprediction penalty. Use this to provide more precise
cost modeling for if-conversion.  Now if only we had a way to estimate the misprediction probability.

Adjsut CodeGen/ARM/ifcvt10.ll.  The pipeline on Cortex-A8 is long enough that it is still profitable
to predicate an ldm, but the shorter pipeline on Cortex-A9 makes it unprofitable.

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

13 years agoInteger materialization needed the same thinko change.
Eric Christopher [Tue, 28 Sep 2010 21:55:34 +0000 (21:55 +0000)]
Integer materialization needed the same thinko change.

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

13 years agoResolve this GCC warning:
Nick Lewycky [Tue, 28 Sep 2010 21:40:26 +0000 (21:40 +0000)]
Resolve this GCC warning:
  ARMTargetMachine.cpp:53: error: control reaches end of non-void function

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

13 years agoUser proper libcall names & condcodes while compiling for ARM EABI.
Anton Korobeynikov [Tue, 28 Sep 2010 21:39:26 +0000 (21:39 +0000)]
User proper libcall names & condcodes while compiling for ARM EABI.
Patch by Evzen Muller!

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

13 years agoScope a varible inside an if statement, to make it clear that
Dan Gohman [Tue, 28 Sep 2010 21:02:55 +0000 (21:02 +0000)]
Scope a varible inside an if statement, to make it clear that
it's not used afterwards.

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

13 years agoGive the if-converter access to MachineLoopInfo, and use it to generate plausible...
Owen Anderson [Tue, 28 Sep 2010 20:42:15 +0000 (20:42 +0000)]
Give the if-converter access to MachineLoopInfo, and use it to generate plausible branch prediction
estimates.

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

13 years agoFix spelling.
Bill Wendling [Tue, 28 Sep 2010 18:54:43 +0000 (18:54 +0000)]
Fix spelling.

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

13 years agoPart one of switching to using a more sane heuristic for determining if-conversion...
Owen Anderson [Tue, 28 Sep 2010 18:32:13 +0000 (18:32 +0000)]
Part one of switching to using a more sane heuristic for determining if-conversion profitability.
Rather than having arbitrary cutoffs, actually try to cost model the conversion.

For now, the constants are tuned to more or less match our existing behavior, but these will be
changed to reflect realistic values as this work proceeds.

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

13 years agoMake ConstantRange::makeICmpRegion handle all the edge cases properly. This
Nick Lewycky [Tue, 28 Sep 2010 18:18:36 +0000 (18:18 +0000)]
Make ConstantRange::makeICmpRegion handle all the edge cases properly. This
also fixes PR8250.

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

13 years agoProvide an interface to let FEs anchor debug info for types.
Devang Patel [Tue, 28 Sep 2010 18:08:20 +0000 (18:08 +0000)]
Provide an interface to let FEs anchor debug info for types.

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

13 years agoAdd target triple info to these tests to make the results comparable when
Jim Grosbach [Tue, 28 Sep 2010 17:10:36 +0000 (17:10 +0000)]
Add target triple info to these tests to make the results comparable when
hosted on different platforms.

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

13 years agoFactor out dbg_value comment printing and teach MC asm printing to use it.
Jim Grosbach [Tue, 28 Sep 2010 17:05:56 +0000 (17:05 +0000)]
Factor out dbg_value comment printing and teach MC asm printing to use it.
This should make the arm-linux self-host buildbot happy again.

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

13 years agoOn elf, undefined symbols can start with .L.
Rafael Espindola [Tue, 28 Sep 2010 16:19:11 +0000 (16:19 +0000)]
On elf, undefined symbols can start with .L.

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

13 years agoUse the canonical library name for library PIC16Passes.
Oscar Fuentes [Tue, 28 Sep 2010 14:24:47 +0000 (14:24 +0000)]
Use the canonical library name for library PIC16Passes.

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

13 years agoAdded library LLVMPIC16passes to CMake build.
Oscar Fuentes [Tue, 28 Sep 2010 14:02:45 +0000 (14:02 +0000)]
Added library LLVMPIC16passes to CMake build.

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

13 years agoAdded PTX target to the CMake build.
Oscar Fuentes [Tue, 28 Sep 2010 14:02:36 +0000 (14:02 +0000)]
Added PTX target to the CMake build.

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

13 years agoAdd ARM Disassembler to the CMake build.
Oscar Fuentes [Tue, 28 Sep 2010 11:48:19 +0000 (11:48 +0000)]
Add ARM Disassembler to the CMake build.

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

13 years agoRemove trailing spaces of MipsMachineFunction.h
Che-Liang Chiou [Tue, 28 Sep 2010 10:06:53 +0000 (10:06 +0000)]
Remove trailing spaces of MipsMachineFunction.h

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

13 years agoRemove trailing spaces of MipsTargetObjectFile.cpp
Che-Liang Chiou [Tue, 28 Sep 2010 09:55:24 +0000 (09:55 +0000)]
Remove trailing spaces of MipsTargetObjectFile.cpp

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

13 years ago80-col fixups.
Eric Christopher [Tue, 28 Sep 2010 04:18:29 +0000 (04:18 +0000)]
80-col fixups.

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

13 years agoAdd a command line option "-arm-strict-align" to disallow unaligned memory
Bob Wilson [Tue, 28 Sep 2010 04:09:35 +0000 (04:09 +0000)]
Add a command line option "-arm-strict-align" to disallow unaligned memory
accesses for ARM targets that would otherwise allow it.  Radar 8465431.

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

13 years agoRework builtin handling and call setup. The builtin handling
Eric Christopher [Tue, 28 Sep 2010 01:21:42 +0000 (01:21 +0000)]
Rework builtin handling and call setup. The builtin handling
now takes a libcall operand, sets up the arguments correctly and
handles stack adjustments.

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

13 years agoFix typo.
Eric Christopher [Tue, 28 Sep 2010 00:35:33 +0000 (00:35 +0000)]
Fix typo.

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

13 years agoFix fp constant loads to have a destination register.
Eric Christopher [Tue, 28 Sep 2010 00:35:09 +0000 (00:35 +0000)]
Fix fp constant loads to have a destination register.

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

13 years agoRemove dead argument.
Devang Patel [Mon, 27 Sep 2010 23:15:27 +0000 (23:15 +0000)]
Remove dead argument.

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

13 years agoWeight loop unrolling counts by nesting depth. Unrolling deeply nested loops tends...
Owen Anderson [Mon, 27 Sep 2010 22:58:54 +0000 (22:58 +0000)]
Weight loop unrolling counts by nesting depth. Unrolling deeply nested loops tends to cause high
register pressure and thus excess spills, which we don't currently recover from well.  This should
be re-evaluated in the future if our ability to generate good spills/splits improves.

Partial fix for <rdar://problem/7635585>.

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

13 years agoEnable the MC-ized ARM asm printer. Passing all local tests, so it's time to
Jim Grosbach [Mon, 27 Sep 2010 22:28:11 +0000 (22:28 +0000)]
Enable the MC-ized ARM asm printer. Passing all local tests, so it's time to
enable it for real. Leaving the CL option in place to it's easy to disable it
again if (when) testers find something I've missed.

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

13 years agoWrite relocations in the end of the file. This matches what gas does and
Rafael Espindola [Mon, 27 Sep 2010 22:04:54 +0000 (22:04 +0000)]
Write relocations in the end of the file. This matches what gas does and
makes files easier to diff.

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

13 years agoARM-mode eh.sjlj.longjmp MC lowering
Jim Grosbach [Mon, 27 Sep 2010 21:47:04 +0000 (21:47 +0000)]
ARM-mode eh.sjlj.longjmp MC lowering

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

13 years agoMake sure .text doesn't produce extra alignment.
Rafael Espindola [Mon, 27 Sep 2010 21:40:27 +0000 (21:40 +0000)]
Make sure .text doesn't produce extra alignment.

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

13 years agoDon't try to constant fold libm functions with non-finite arguments.
Jakob Stoklund Olesen [Mon, 27 Sep 2010 21:29:20 +0000 (21:29 +0000)]
Don't try to constant fold libm functions with non-finite arguments.

Usually we wouldn't do this anyway because llvm_fenv_testexcept would return an
exception, but we have seen some cases where neither errno nor fenv detect an
exception on arm-linux.

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

13 years agoEnable the MC-ized ARM asm printer. Passing all local tests, so it's time to
Jim Grosbach [Mon, 27 Sep 2010 21:28:44 +0000 (21:28 +0000)]
Enable the MC-ized ARM asm printer. Passing all local tests, so it's time to
enable it for real. Leaving the CL option in place to it's easy to disable it
again if (when) testers find something I've missed.

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

13 years agoFactor symbol value computation into a function.
Rafael Espindola [Mon, 27 Sep 2010 21:23:02 +0000 (21:23 +0000)]
Factor symbol value computation into a function.

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

13 years agoMC-COFF: Fix signed/unsigned comparison.
Michael J. Spencer [Mon, 27 Sep 2010 21:17:39 +0000 (21:17 +0000)]
MC-COFF: Fix signed/unsigned comparison.

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

13 years agoreapply developer policy changes after discussion.
Chris Lattner [Mon, 27 Sep 2010 21:17:15 +0000 (21:17 +0000)]
reapply developer policy changes after discussion.

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

13 years agoAdd a new scope type "LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN" for the
Bill Wendling [Mon, 27 Sep 2010 20:17:45 +0000 (20:17 +0000)]
Add a new scope type "LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN" for the
"linker_private_weak_auto_def" linkage type for LTO.

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

13 years agoHard to imagine there are still people using inferior compilers.
Daniel Dunbar [Mon, 27 Sep 2010 20:12:58 +0000 (20:12 +0000)]
Hard to imagine there are still people using inferior compilers.

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

13 years agoMC/AsmParser: Handle exponents in floating point literals.
Daniel Dunbar [Mon, 27 Sep 2010 20:12:52 +0000 (20:12 +0000)]
MC/AsmParser: Handle exponents in floating point literals.

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

13 years agoRevert "Disable codegen prepare critical edge splitting. Machine instruction passes...
Jakob Stoklund Olesen [Mon, 27 Sep 2010 18:43:48 +0000 (18:43 +0000)]
Revert "Disable codegen prepare critical edge splitting. Machine instruction passes now"

This reverts revision 114633. It was breaking llvm-gcc-i386-linux-selfhost.

It seems there is a downstream bug that is exposed by
-cgp-critical-edge-splitting=0. When that bug is fixed, this patch can go back
in.

Note that the changes to tailcallfp2.ll are not reverted. They were good are
required.

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

13 years agoExplicitly disable CGP critical edge splitting for this test so it won't break
Jakob Stoklund Olesen [Mon, 27 Sep 2010 18:43:43 +0000 (18:43 +0000)]
Explicitly disable CGP critical edge splitting for this test so it won't break
by reenabling it temporarily.

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

13 years agoDon't depend on basic block numbering.
Jakob Stoklund Olesen [Mon, 27 Sep 2010 18:43:40 +0000 (18:43 +0000)]
Don't depend on basic block numbering.

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

13 years agoOdd additional stub framework for the ARM MC ELF emission.
Rafael Espindola [Mon, 27 Sep 2010 18:31:37 +0000 (18:31 +0000)]
Odd additional stub framework for the ARM MC ELF emission.
llc now recognizes the "intent" to support MC/obj emission for ARM, but
given that they are all stubs, it asserts on --filetype=obj --march=arm

Patch by Jason Kim.

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

13 years agoRemove unused argument.
Rafael Espindola [Mon, 27 Sep 2010 18:13:03 +0000 (18:13 +0000)]
Remove unused argument.

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

13 years agoThe "linker_private_weak*" linkages should set the LTO_SYMBOL_DEFINITION_WEAK
Bill Wendling [Mon, 27 Sep 2010 18:05:19 +0000 (18:05 +0000)]
The "linker_private_weak*" linkages should set the LTO_SYMBOL_DEFINITION_WEAK
during LTO.

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

13 years agoPush twines deeper into SourceMgr's error handling methods.
Benjamin Kramer [Mon, 27 Sep 2010 17:42:11 +0000 (17:42 +0000)]
Push twines deeper into SourceMgr's error handling methods.

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

13 years agoMMX parameters aren't handled here yet.
Dale Johannesen [Mon, 27 Sep 2010 17:29:47 +0000 (17:29 +0000)]
MMX parameters aren't handled here yet.

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

13 years agoDon't try to make a vector of x86mmx; this won't work,
Dale Johannesen [Mon, 27 Sep 2010 17:29:14 +0000 (17:29 +0000)]
Don't try to make a vector of x86mmx; this won't work,
and asserts.

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

13 years agowriteGraph doesn't need its ShortNames argument.
Dan Gohman [Mon, 27 Sep 2010 16:59:51 +0000 (16:59 +0000)]
writeGraph doesn't need its ShortNames argument.

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

13 years agoDelete an unused function.
Dan Gohman [Mon, 27 Sep 2010 16:58:21 +0000 (16:58 +0000)]
Delete an unused function.

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

13 years agoDelete an unused declaration.
Dan Gohman [Mon, 27 Sep 2010 16:54:49 +0000 (16:54 +0000)]
Delete an unused declaration.

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

13 years agoDon't construct a redundant GraphWriter object.
Dan Gohman [Mon, 27 Sep 2010 16:54:13 +0000 (16:54 +0000)]
Don't construct a redundant GraphWriter object.

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

13 years agoFactor out code from the standalone WriteGraph function into a helper
Dan Gohman [Mon, 27 Sep 2010 16:44:11 +0000 (16:44 +0000)]
Factor out code from the standalone WriteGraph function into a helper
function on GraphWriter.

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

13 years agoRemove reference to nonexistent test in CMake makefile for unit tests
Douglas Gregor [Mon, 27 Sep 2010 16:40:43 +0000 (16:40 +0000)]
Remove reference to nonexistent test in CMake makefile for unit tests

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

13 years agoConstify properlyDominates in the same manner as dominates.
Dan Gohman [Mon, 27 Sep 2010 16:33:31 +0000 (16:33 +0000)]
Constify properlyDominates in the same manner as dominates.
Add constified overloads for findNearestCommonDominator.

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

13 years agoAdd support for viewing graphviz graphs with xdot.py.
Dan Gohman [Mon, 27 Sep 2010 16:28:34 +0000 (16:28 +0000)]
Add support for viewing graphviz graphs with xdot.py.

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

13 years agoMove ValueMapTest from ADT to VMCore so that ADT doesn't need
Dan Gohman [Mon, 27 Sep 2010 15:50:08 +0000 (15:50 +0000)]
Move ValueMapTest from ADT to VMCore so that ADT doesn't need
to link in "core".

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

13 years agoAdd an all() method to BitVector, for testing whether all bits are set.
Dan Gohman [Mon, 27 Sep 2010 15:48:37 +0000 (15:48 +0000)]
Add an all() method to BitVector, for testing whether all bits are set.

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

13 years agoRemove WriteGraph's Name argument, which it didn't use, and
Dan Gohman [Mon, 27 Sep 2010 15:34:19 +0000 (15:34 +0000)]
Remove WriteGraph's Name argument, which it didn't use, and
rename writeHeader's Name argument to Title, to be consistent
with WriteGraph.

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

13 years agoMake this code 65-bit clean.
Dan Gohman [Mon, 27 Sep 2010 15:15:44 +0000 (15:15 +0000)]
Make this code 65-bit clean.

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

13 years agoFix indentation.
Dan Gohman [Mon, 27 Sep 2010 14:44:14 +0000 (14:44 +0000)]
Fix indentation.

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

13 years agoRemoved remnant target library dependencies from LLVMLibDeps.cmake
Oscar Fuentes [Mon, 27 Sep 2010 13:49:41 +0000 (13:49 +0000)]
Removed remnant target library dependencies from LLVMLibDeps.cmake

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

13 years agoUpdated LLVMLibDeps.cmake
Oscar Fuentes [Mon, 27 Sep 2010 13:33:17 +0000 (13:33 +0000)]
Updated LLVMLibDeps.cmake

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

13 years agoMC-COFF: Drop empty sections, and label symbols. Convert relocations
Michael J. Spencer [Mon, 27 Sep 2010 08:58:26 +0000 (08:58 +0000)]
MC-COFF: Drop empty sections, and label symbols. Convert relocations
targeted at symbols into relocations relative to the containing section.

Patch by Nathan Jeffords!

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

13 years agoyet more aliases.
Chris Lattner [Mon, 27 Sep 2010 07:24:57 +0000 (07:24 +0000)]
yet more aliases.

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

13 years agoadd a couple more aliases, rdar://8456378
Chris Lattner [Mon, 27 Sep 2010 07:21:41 +0000 (07:21 +0000)]
add a couple more aliases, rdar://8456378

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

13 years agofix rdar://8470918 - llvm-mc can't assemble smovl
Chris Lattner [Mon, 27 Sep 2010 07:11:53 +0000 (07:11 +0000)]
fix rdar://8470918 - llvm-mc can't assemble smovl

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

13 years agoFix rdar://8468087 - llvm-mc commutes fmul (and friend) operands.
Chris Lattner [Mon, 27 Sep 2010 07:08:21 +0000 (07:08 +0000)]
Fix rdar://8468087 - llvm-mc commutes fmul (and friend) operands.

My previous fix for rdar://8456371 should only apply to fmulp/faddp,
not to fmul/fadd.  Instruction set orthogonality is overrated or
something.

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

13 years agothe latest assembler that runs on powerpc 10.4 machines doesn't
Chris Lattner [Mon, 27 Sep 2010 06:44:54 +0000 (06:44 +0000)]
the latest assembler that runs on powerpc 10.4 machines doesn't
support aligned comm.  Detect when compiling for 10.4 and don't
emit an alignment for comm.  THis will hopefully fix PR8198.

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

13 years agoimprove indentation
Chris Lattner [Mon, 27 Sep 2010 06:34:01 +0000 (06:34 +0000)]
improve indentation

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

13 years agoInsert missing coherency in comment. Add a quick check for hardware
Eric Christopher [Mon, 27 Sep 2010 06:08:12 +0000 (06:08 +0000)]
Insert missing coherency in comment.  Add a quick check for hardware
divide support also.

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

13 years agoMass rename for Jim.
Eric Christopher [Mon, 27 Sep 2010 06:02:23 +0000 (06:02 +0000)]
Mass rename for Jim.

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

13 years agoThis code should never fire on non-darwin subtargets.
Eric Christopher [Mon, 27 Sep 2010 06:01:51 +0000 (06:01 +0000)]
This code should never fire on non-darwin subtargets.

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

13 years agoimplement support for 'clr' alias. This is part of rdar://8416805,
Chris Lattner [Mon, 27 Sep 2010 04:23:03 +0000 (04:23 +0000)]
implement support for 'clr' alias.  This is part of rdar://8416805,
but balrog was wanting it on irc.

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

13 years agoFixed some tests to avoid LiveIntervals::getInstructionFromIndex(..) overhead where...
Lang Hames [Sun, 26 Sep 2010 03:37:09 +0000 (03:37 +0000)]
Fixed some tests to avoid LiveIntervals::getInstructionFromIndex(..) overhead where possible. Thanks to Jakob for the suggestions.

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

13 years agoNew cmake options LLVM_INCLUDE_X (X = {TOOLS, EXAMPLES, TESTS}) for
Oscar Fuentes [Sat, 25 Sep 2010 20:43:06 +0000 (20:43 +0000)]
New cmake options LLVM_INCLUDE_X (X = {TOOLS, EXAMPLES, TESTS}) for
not generating build targets for those parts of the build.

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

13 years agoAvoid warnings about implicit conversions to `bool' in MSVC. This time
Oscar Fuentes [Sat, 25 Sep 2010 20:27:36 +0000 (20:27 +0000)]
Avoid warnings about implicit conversions to `bool' in MSVC. This time
for real.

Patch by Nathan Jeffords!

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

13 years agoReverting "CMake: Don't include tools, unittets, or examples as
Oscar Fuentes [Sat, 25 Sep 2010 20:25:25 +0000 (20:25 +0000)]
Reverting "CMake: Don't include tools, unittets, or examples as
available targets unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies
LLVM_INCLUDE_X"

It breaks the configuration phase when cmake is invoked without
parameters, it is too complex for the purpose and introduces an
incovenience for the user (as both LLVM_BUILD_X and LLVM_INCLUDE_X
must set to OFF for not including X on the build)

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

13 years agoAvoid using VNInfo::getCopy as much as possible. I want to get rid of it.
Jakob Stoklund Olesen [Sat, 25 Sep 2010 18:10:38 +0000 (18:10 +0000)]
Avoid using VNInfo::getCopy as much as possible. I want to get rid of it.

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

13 years agotemporarily revert developer policy change as a courtesy to vikram.
Chris Lattner [Sat, 25 Sep 2010 15:53:35 +0000 (15:53 +0000)]
temporarily revert developer policy change as a courtesy to vikram.

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

13 years agoRemoved VNInfo::isDefAccurate(). Def "accuracy" can be checked by testing whether...
Lang Hames [Sat, 25 Sep 2010 12:04:16 +0000 (12:04 +0000)]
Removed VNInfo::isDefAccurate(). Def "accuracy" can be checked by testing whether LiveIntervals::getInstructionFromIndex(def) returns NULL.

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

13 years agoAdd test case for PTX ret instruction
Che-Liang Chiou [Sat, 25 Sep 2010 07:49:54 +0000 (07:49 +0000)]
Add test case for PTX ret instruction

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

13 years agoAdd ret instruction to PTX backend
Che-Liang Chiou [Sat, 25 Sep 2010 07:46:17 +0000 (07:46 +0000)]
Add ret instruction to PTX backend

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

13 years agoRemove trailing spaces of CallingConv.h
Che-Liang Chiou [Sat, 25 Sep 2010 07:02:30 +0000 (07:02 +0000)]
Remove trailing spaces of CallingConv.h

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

13 years agoMove ELF to HasReliableSymbolDifference=true. Also take the opportunity to put
Rafael Espindola [Sat, 25 Sep 2010 05:42:19 +0000 (05:42 +0000)]
Move ELF to HasReliableSymbolDifference=true. Also take the opportunity to put
symbols defined in merge sections in independent atoms.

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

13 years agoLoadPRE was not properly checking that the load it was PRE'ing post-dominated the...
Owen Anderson [Sat, 25 Sep 2010 05:26:18 +0000 (05:26 +0000)]
LoadPRE was not properly checking that the load it was PRE'ing post-dominated the block it was being hoisted to.
Splitting critical edges at the merge point only addressed part of the issue; it is also possible for non-post-domination
to occur when the path from the load to the merge has branches in it.  Unfortunately, full anticipation analysis is
time-consuming, so for now approximate it.  This is strictly more conservative than real anticipation, so we will miss
some cases that real PRE would allow, but we also no longer insert loads into paths where they didn't exist before. :-)

This is a very slight net positive on SPEC for me (0.5% on average).  Most of the benchmarks are largely unaffected, but
when it pays off it pays off decently: 181.mcf improves by 4.5% on my machine.

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

13 years agoFix IIC_iEXTAr itinerary class of Cortex-A9.
Evan Cheng [Sat, 25 Sep 2010 01:09:28 +0000 (01:09 +0000)]
Fix IIC_iEXTAr itinerary class of Cortex-A9.

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

13 years agoRemove a unused instruction itinerary class.
Evan Cheng [Sat, 25 Sep 2010 01:06:02 +0000 (01:06 +0000)]
Remove a unused instruction itinerary class.

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

13 years agoIf we're changing the source of a memcpy we need to use the alignment
Eric Christopher [Sat, 25 Sep 2010 00:57:26 +0000 (00:57 +0000)]
If we're changing the source of a memcpy we need to use the alignment
of the source, not the original alignment since it may no longer
be valid.

Fixes rdar://8400094

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

13 years agoFix zero and sign extension instructions scheduling itineraries.
Evan Cheng [Sat, 25 Sep 2010 00:49:35 +0000 (00:49 +0000)]
Fix zero and sign extension instructions scheduling itineraries.

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

13 years agoRemove SlotIndex::PHI_BIT. It is no longer used by anything.
Jakob Stoklund Olesen [Sat, 25 Sep 2010 00:45:18 +0000 (00:45 +0000)]
Remove SlotIndex::PHI_BIT. It is no longer used by anything.

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

13 years agoRemove the only use of SlotIndex::isPHI. This bit is not being set consistently
Jakob Stoklund Olesen [Sat, 25 Sep 2010 00:45:15 +0000 (00:45 +0000)]
Remove the only use of SlotIndex::isPHI. This bit is not being set consistently
and it will be removed shortly.

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

13 years agoTerminator gaps were unused. Might as well delete them.
Jakob Stoklund Olesen [Fri, 24 Sep 2010 23:58:56 +0000 (23:58 +0000)]
Terminator gaps were unused. Might as well delete them.

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

13 years agoMore pseudo instruction scheduling itinerary fixes.
Evan Cheng [Fri, 24 Sep 2010 22:41:41 +0000 (22:41 +0000)]
More pseudo instruction scheduling itinerary fixes.

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

13 years agoFix for test/CodeGen/PowerPC/2008-10-17-AsmMatchingOperands.ll crash.
John Thompson [Fri, 24 Sep 2010 22:24:05 +0000 (22:24 +0000)]
Fix for test/CodeGen/PowerPC/2008-10-17-AsmMatchingOperands.ll crash.

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

13 years agoFix scheduling itinerary for pseudo mov immediate instructions which expand into...
Evan Cheng [Fri, 24 Sep 2010 22:03:46 +0000 (22:03 +0000)]
Fix scheduling itinerary for pseudo mov immediate instructions which expand into two real instructions.

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

13 years agoReapply 114678 and 114667. Reverting them did not fix the bot:
Rafael Espindola [Fri, 24 Sep 2010 21:19:03 +0000 (21:19 +0000)]
Reapply 114678 and 114667. Reverting them did not fix the bot:

http://google1.osuosl.org:8011/builders/llvm-gcc-i386-linux-selfhost/builds/69

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

13 years agoAdd ARM explicit MCInst lowering for the Thumb eh.sjlj.setjmp sequence.
Jim Grosbach [Fri, 24 Sep 2010 20:47:58 +0000 (20:47 +0000)]
Add ARM explicit MCInst lowering for the Thumb eh.sjlj.setjmp sequence.

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