Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: m-labs/llvm-lm32
base: 3e6400e2d9bc
...
head fork: m-labs/llvm-lm32
compare: 7da12617be7e
This comparison is big! We're only showing the most recent 250 commits
Commits on Nov 14, 2012
JP Bonn Updated vectors to be i32 aligned - the default is higher. 81d8cd1
Eric Christopher Grab debug information for code ownership.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167933 91177308-0d34-0410-b5e6-96231b3b80d8
7c8e960
Matt Beaumont-Gay s/assert/llvm_unreachable/
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167936 91177308-0d34-0410-b5e6-96231b3b80d8
7af4b9b
Jim Grosbach X86: Better diagnostics for 32-bit vs. 64-bit mode mismatches.
When an instruction as written requires 32-bit mode and we're assembling
in 64-bit mode, or vice-versa, issue a more specific diagnostic about
what's wrong.

rdar://12700702

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167937 91177308-0d34-0410-b5e6-96231b3b80d8
3ca6382
@d0k d0k Sort the code owner list alphabetically. Add myself as lib/DebugInfo …
…owner.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167940 91177308-0d34-0410-b5e6-96231b3b80d8
6a7e85c
@hfinkel hfinkel Fix the largest offender of determinism in BBVectorize
Iterating over the children of each node in the potential vectorization
plan must happen in a deterministic order (because it affects which children
are erased when two children conflict). There was no need for this data
structure to be a map in the first place, so replacing it with a vector
is a small change.

I believe that this was the last remaining instance if iterating over the
elements of a Dense* container where the iteration order could matter.
There are some remaining iterations over std::*map containers where the order
might matter, but so long as the Value* for instructions in a block increase
with the order of the instructions in the block (or decrease) monotonically,
then this will appear to be deterministic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167942 91177308-0d34-0410-b5e6-96231b3b80d8
d7a3425
Chad Rosier Claim ownership.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167943 91177308-0d34-0410-b5e6-96231b3b80d8
2d80fb2
@asl asl Fix really stupid ARM EHABI info generation bug: we should not emit
eh table and handler data if there are no landing pads in the function.
Patch by Logan Chien with some cleanups from me.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167945 91177308-0d34-0410-b5e6-96231b3b80d8
062a6c8
@asl asl Fix comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167947 91177308-0d34-0410-b5e6-96231b3b80d8
2337dd7
@jholewinski jholewinski [NVPTX] Implement custom lowering of loads/stores for i1
Loads from i1 become loads from i8 followed by trunc
Stores to i1 become zext to i8 followed by store to i8

Fixes PR13291

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167948 91177308-0d34-0410-b5e6-96231b3b80d8
a20067b
@chisophugis chisophugis docs: nuke GCCFEBuildInstrs.html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167961 91177308-0d34-0410-b5e6-96231b3b80d8
17e7b5c
@jholewinski jholewinski Add myself as code owner for NVPTX target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167962 91177308-0d34-0410-b5e6-96231b3b80d8
714a587
@nadavrot nadavrot The code pattern "imm0_255_neg" is used for checking if an immediate …
…value is a small negative number.

This patch changes the definition of negative from -0..-255 to -1..-255. I am changing this because of
a bug that we had in some of the patterns that assumed that "subs" of zero does not set the carry flag.

rdar://12028498



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167963 91177308-0d34-0410-b5e6-96231b3b80d8
50b6638
@gribozavr gribozavr FileCheck.rst: change formatting of code-like constructs to use a mon…
…ospaced

font.  These were formatted in bold, but that's not correct.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167964 91177308-0d34-0410-b5e6-96231b3b80d8
0fab191
@nadavrot nadavrot Update my email address and update the code ownership
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167965 91177308-0d34-0410-b5e6-96231b3b80d8
c7d1802
@hfinkel hfinkel Replace std::vector -> SmallVector in BBVectorize
For now, this uses 8 on-stack elements. I'll need to do some profiling
to see if this is the best number.

Pointed out by Jakob in post-commit review.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167966 91177308-0d34-0410-b5e6-96231b3b80d8
97d19eb
@d0k d0k X86: Enable SSE memory intrinsics even when stack alignment is less t…
…han 16 bytes.

The stack realignment code was fixed to work when there is stack realignment and
a dynamic alloca is present so this shouldn't cause correctness issues anymore.

Note that this also enables generation of AVX instructions for memset
under the assumptions:
- Unaligned loads/stores are always fast on CPUs supporting AVX
- AVX is not slower than SSE
We may need some tweaked heuristics if one of those assumptions turns out not to
be true.

Effectively reverts r58317. Part of PR2962.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167967 91177308-0d34-0410-b5e6-96231b3b80d8
2dbe929
Jakub Staszak Remove DOS line endings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167968 91177308-0d34-0410-b5e6-96231b3b80d8
de7c853
Jakub Staszak Fix comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167969 91177308-0d34-0410-b5e6-96231b3b80d8
05ad7eb
Chad Rosier Remove dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167970 91177308-0d34-0410-b5e6-96231b3b80d8
984639b
@alexfh alexfh Added %(line), %(line+<number>), %(line-<number>) substitutions to lit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167971 91177308-0d34-0410-b5e6-96231b3b80d8
0863998
Jakub Staszak canJoinPhys method doesn't modify CoalescerPair. Make it const.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167972 91177308-0d34-0410-b5e6-96231b3b80d8
39c71da
@d0k d0k Force CPU in test so we don't accidentally get AVX code on an AVX-cap…
…able host.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167973 91177308-0d34-0410-b5e6-96231b3b80d8
7c6e8cd
Jyotsna Verma Added multiclass for post-increment load instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167974 91177308-0d34-0410-b5e6-96231b3b80d8
cb02fa9
@chapuni chapuni llvm/test/CodeGen/X86/memset.ll: FileCheck-ize, and add another case …
…on +avx.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167975 91177308-0d34-0410-b5e6-96231b3b80d8
9292136
Jakub Staszak Fix invalid asserts, use llvm_unreachable instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167976 91177308-0d34-0410-b5e6-96231b3b80d8
7454fc2
@alexfh alexfh Support for [[@LINE]], [[@LINE+<offset>]], [[@LINE-<offset>]] express…
…ions in

FileCheck.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167978 91177308-0d34-0410-b5e6-96231b3b80d8
70a870a
@chisophugis chisophugis docs: Sphinxify TestingGuide
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167979 91177308-0d34-0410-b5e6-96231b3b80d8
ac99eed
Eric Christopher Remove the CellSPU port.
Approved by Chris Lattner.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167984 91177308-0d34-0410-b5e6-96231b3b80d8
06b4234
Eric Christopher Fix CMake build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167986 91177308-0d34-0410-b5e6-96231b3b80d8
66ce3da
Eric Christopher Few more small CellSPU removals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167987 91177308-0d34-0410-b5e6-96231b3b80d8
1a35292
@chapuni chapuni test/CodeGen/Hexagon/postinc-load.ll: Suppress it for now. It trigger…
…ed the failure on i686 hosts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167988 91177308-0d34-0410-b5e6-96231b3b80d8
d0a4a4b
Jakub Staszak Make sure to not get AVX code on an AVX-capable host. Revealed in r16…
…7967.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167989 91177308-0d34-0410-b5e6-96231b3b80d8
0e52f46
Jakub Staszak Use reserve() to avoid vector reallocation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167991 91177308-0d34-0410-b5e6-96231b3b80d8
8762a6b
@chisophugis chisophugis docs: Sphinxify TestSuiteMakefileGuide
Some small related fixups to TestingGuide too.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167996 91177308-0d34-0410-b5e6-96231b3b80d8
d5f4b4c
@chisophugis chisophugis docs: Improve typographical correctness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167998 91177308-0d34-0410-b5e6-96231b3b80d8
791ebec
@wschmidt-ibm wschmidt-ibm This patch is in preparation for adding medium code model support to the
PPC64 target.  The five tests modified herein test code generation that is
sensitive to the code model selected.  So I've added -code-model=small to
the RUN commands for each.

Since small code model is the default, this has no effect for now; but this
prepares us for eventually changing the default to medium code model for PPC64.

Test changes verified with small and medium code model as default on
powerpc64-unknown-linux-gnu.  All tests continue to pass.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167999 91177308-0d34-0410-b5e6-96231b3b80d8
527388d
@chapuni chapuni NVPTXISelLowering.cpp: Fix warnings. [-Wunused-variable]
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168001 91177308-0d34-0410-b5e6-96231b3b80d8
e8b0ae1
Jakub Staszak Remove unneeded #includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168006 91177308-0d34-0410-b5e6-96231b3b80d8
3427f0a
Commits on Nov 15, 2012
@resistor resistor Add doInitialization and doFinalization methods to ModulePass's, to a…
…llow them to be re-initialized and reused on multiple Module's.

Patch by Pedro Artigas.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168008 91177308-0d34-0410-b5e6-96231b3b80d8
40b6fdb
Jakub Staszak Use LLVM_DELETED_FUNCTION.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168009 91177308-0d34-0410-b5e6-96231b3b80d8
b61a11f
@chapuni chapuni InstCombineAndOrXor.cpp: Escape bracket in doxygen description. [-Wdo…
…cumentation]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168013 91177308-0d34-0410-b5e6-96231b3b80d8
45fc0b6
Eric Christopher Add some release notes that say we removed the CellSPU port.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168014 91177308-0d34-0410-b5e6-96231b3b80d8
6b88e2a
Andrew Trick Fix an obvious merge bug in -join-globalcopies (disabled).
Jakub Staszak spotted this in review. I don't notice these things
until I manually rerun benchmarks. But reducing unit tests is a very
high priority.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168021 91177308-0d34-0410-b5e6-96231b3b80d8
c6d6aeb
Craig Topper Add llvm.ceil, llvm.trunc, llvm.rint, llvm.nearbyint intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168025 91177308-0d34-0410-b5e6-96231b3b80d8
4901047
Craig Topper Add missing documentation for llvm.exp2, llvm.log10, and llvm.log2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168026 91177308-0d34-0410-b5e6-96231b3b80d8
f48ef55
Craig Topper Make a bunch of floating point operations on vectors Expand so that i…
…nstruction selection won't fail.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168028 91177308-0d34-0410-b5e6-96231b3b80d8
44e394c
Craig Topper Make FNEG and FABS of v4f32 Expand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168029 91177308-0d34-0410-b5e6-96231b3b80d8
b916904
Craig Topper Revert changing FNEG of v4f32 to Expand. It's legal.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168030 91177308-0d34-0410-b5e6-96231b3b80d8
116bd16
@CunningBaldrick CunningBaldrick Fix a crash observed by Shuxin Yang. The issue here is that Linearize…
…ExprTree,

the utility for extracting a chain of operations from the IR, thought that it
might as well combine any constants it came across (rather than just returning
them along with everything else).  On the other hand, the factorization code
would like to see the individual constants (this is quite reasonable: it is
much easier to pull a factor of 3 out of 2*3 than it is to pull it out of 6;
you may think 6/3 isn't so hard, but due to overflow it's not as easy to undo
multiplications of constants as it may at first appear).  This patch therefore
makes LinearizeExprTree stupider: it now leaves optimizing to the optimization
part of reassociate, and sticks to just analysing the IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168035 91177308-0d34-0410-b5e6-96231b3b80d8
7ecfcc1
@gbenyei gbenyei Add support for SPIR64 target - the 64bit counterpart of SPIR.
The new OpenCL SPIR extension spec will define separate SPIR for 32 and 64 bit architectures.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168036 91177308-0d34-0410-b5e6-96231b3b80d8
ac39a03
@zmodem zmodem Make GlobalOpt be conservative with TLS variables (PR14309)
For global variables that get the same value stored into them
everywhere, GlobalOpt will replace them with a constant. The problem is
that a thread-local GlobalVariable looks like one value (the address of
the TLS var), but is different between threads.

This patch introduces Constant::isThreadDependent() which returns true
for thread-local variables and constants which depend on them (e.g. a GEP
into a thread-local array), and teaches GlobalOpt not to track such
values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168037 91177308-0d34-0410-b5e6-96231b3b80d8
1839858
@CunningBaldrick CunningBaldrick Do not handle void types in DataLayout. Patch by Patrick Hägglund.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168042 91177308-0d34-0410-b5e6-96231b3b80d8
b983f5d
@gribozavr gribozavr FileCheck: remove useless 'continue' at the end of a 'while(){}' loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168048 91177308-0d34-0410-b5e6-96231b3b80d8
65f3f32
@gribozavr gribozavr Use empty parens for empty function parameter list instead of '(void)'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168049 91177308-0d34-0410-b5e6-96231b3b80d8
79c07d2
Sergei Larin Fix indeterminism in MI scheduler DAG construction.
Similarly to several recent fixes throughout the code replace std::map use with the MapVector.
Add find() method to the MapVector.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168051 91177308-0d34-0410-b5e6-96231b3b80d8
009cf9e
Chad Rosier [reg scavenger] Fix the isUsed/isAliasUsed functions so as to not rep…
…ort a false

positive.

In this particular case, R6 was being spilled by the register scavenger when it
was in fact dead.  The isUsed function reported R6 as used because the R6_R7
alias was reserved (due to the fact that we've reserved R7 as the FP).  The
solution is to only check if the original register (i.e., R6) isReserved and
not the aliases.  The aliases are only checked to make sure they're available.

The test case is derived from one of the nightly tester benchmarks and is rather
intractable and difficult to reproduce, so I haven't included it.
rdar://12592448


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168054 91177308-0d34-0410-b5e6-96231b3b80d8
4823be3
Andrew Trick whitespace
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168057 91177308-0d34-0410-b5e6-96231b3b80d8
df523d4
Andrew Trick misspell
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168058 91177308-0d34-0410-b5e6-96231b3b80d8
c2aa003
Jakub Staszak Simplify code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168064 91177308-0d34-0410-b5e6-96231b3b80d8
eaf7725
@asl asl Add ARM EABI to my list of responsibilities.
Update the email address (old works too, but less reliable) while there


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168065 91177308-0d34-0410-b5e6-96231b3b80d8
8112351
Sergei Larin Add myself as owner of VLIW Instruction Scheduling and Packetization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168072 91177308-0d34-0410-b5e6-96231b3b80d8
d822805
Evan Cheng Clarify my code ownership
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168073 91177308-0d34-0410-b5e6-96231b3b80d8
7c66949
@uweigand uweigand Use std::stable_sort instead of std::sort when sorting stack slots
to guarantee deterministic code generation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168074 91177308-0d34-0410-b5e6-96231b3b80d8
f38aa42
Jakub Staszak Return 0 instead of false.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168076 91177308-0d34-0410-b5e6-96231b3b80d8
1c1c493
Akira Hatanaka Add assertions in MipsLongBranch which check the size of basic blocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168078 91177308-0d34-0410-b5e6-96231b3b80d8
c984657
@ddunbar ddunbar PathV2: Fix a possible infinite loop.
 - The code could infinite loop trying to create unique files, if the directory
   containing the unique file exists, but open() calls on non-existent files in
   the path return ENOENT. This is true on the /dev/fd filesystem, for example.

 - Will add a clang side test case for this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168081 91177308-0d34-0410-b5e6-96231b3b80d8
71e5ea8
@zatrazz zatrazz PowerPC: Lowering floor intrinsic for Altivec
 
This patch lowers the llvm.floor, llvm.ceil, llvm.trunc, and
llvm.nearbyint to Altivec instruction when using 4 single-precision
float vectors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168086 91177308-0d34-0410-b5e6-96231b3b80d8
e95ed2b
Joel Jones Add description of how to build docs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168088 91177308-0d34-0410-b5e6-96231b3b80d8
b92ef12
Akira Hatanaka [mips] Add predicate HasFPIdx for floating-point indexed load instruc…
…tion

support and use it in place of HasMips32r2Or64.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168089 91177308-0d34-0410-b5e6-96231b3b80d8
0301bc5
Jyotsna Verma Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168091 91177308-0d34-0410-b5e6-96231b3b80d8
ca458e7
@nadavrot nadavrot Update the code ownership.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168102 91177308-0d34-0410-b5e6-96231b3b80d8
bac29d3
Michael Ilseman Remove trailing whitespace
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168103 91177308-0d34-0410-b5e6-96231b3b80d8
407a616
Eric Christopher More ownership, no one likes these things anyways.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168104 91177308-0d34-0410-b5e6-96231b3b80d8
a5a241c
@eefriedman eefriedman Mark FP_ROUND for converting NEON v2f64 to v2f32 as expand. Add a mis…
…sing

case to vector legalization so this actually works.

Patch by Pete Couperus.  Fixes PR12540.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168107 91177308-0d34-0410-b5e6-96231b3b80d8
846ce8e
@resistor resistor Claim ownership of everyone's favorite part of the backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168109 91177308-0d34-0410-b5e6-96231b3b80d8
b70e251
Eric Christopher Clarify.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168110 91177308-0d34-0410-b5e6-96231b3b80d8
ec3d695
@gkistanova gkistanova Added myself as owner of LLVM Buildbot.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168111 91177308-0d34-0410-b5e6-96231b3b80d8
2b009a3
@eliben eliben Add some tests for the FileCheck utility. 085f982
Andrew Kaylor Interface changes to allow RuntimeDyld memory managers to set memory …
…permissions after an object has been loaded.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168114 91177308-0d34-0410-b5e6-96231b3b80d8
53608a3
Commits on Nov 16, 2012
Michael Ilseman Remove trailing whitespace
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168121 91177308-0d34-0410-b5e6-96231b3b80d8
96952bd
Akira Hatanaka [mips] Fix delay slot filler so that instructions with register opera…
…nd $1 are

allowed in branch delay slot.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168131 91177308-0d34-0410-b5e6-96231b3b80d8
a032dbd
Craig Topper Fix typo in a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168138 91177308-0d34-0410-b5e6-96231b3b80d8
06be8b8
Craig Topper Use roundps/pd for llvm.ceil, llvm.trunc, llvm.rint, and llvm.nearbyi…
…nt of vector types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168141 91177308-0d34-0410-b5e6-96231b3b80d8
d577552
@nadavrot nadavrot LoopVectorize: Division reductions generate incorrect code. Remove th…
…e part of the code that deals with divs.

Thanks to Paul Redmond for catching this while reviewing the code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168142 91177308-0d34-0410-b5e6-96231b3b80d8
77d6ae1
Craig Topper Factor some common code to reduce compile size.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168143 91177308-0d34-0410-b5e6-96231b3b80d8
9bd4dd7
Alexey Samsonov [DebugInfo] Generate address ranges for compile units even if .debug_…
…aranges is present: it is often the case that .debug_aranges section contains ranges only for a small subset of compile units. Test cases will be added in separate commits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168144 91177308-0d34-0410-b5e6-96231b3b80d8
63a450a
@zmodem zmodem Constant::IsThreadDependent(): Use dyn_cast<Constant> instead of cast
It turns out that the operands of a Constant are not always themselves
Constant. For example, one of the operands of BlockAddress is
BasicBlock, which is not a Constant.

This should fix the dragonegg-x86_64-linux-gcc-4.6-test build which
broke in r168037.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168147 91177308-0d34-0410-b5e6-96231b3b80d8
fbeb956
Amara Emerson Add R_ARM_TARGET1 relocation to MCJIT and ensure that the runtime dyl…
…d reads

all symbols during object loading, not just global ones.

This fixes JIT execution of code using llvm.global_ctors with internal
linkage constructors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168148 91177308-0d34-0410-b5e6-96231b3b80d8
098d6d5
Amara Emerson Add MCJIT test case for running global constructors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168149 91177308-0d34-0410-b5e6-96231b3b80d8
4372f00
@chandlerc chandlerc Add myself as the code owner for a bunch of stuff.
Notably, I'm reviewing this stuff already, and this makes it clear I'm
on the hook for it.

I'm relying on Eric Christopher and Michael Spencer to help with Support
when there are platform specific issues, but Chris wants a single point
of contact, and I'm happy with that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168164 91177308-0d34-0410-b5e6-96231b3b80d8
d2b3441
@chandlerc chandlerc Update credits file regarding SROA work... Also include my other primary
email address for completeness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168165 91177308-0d34-0410-b5e6-96231b3b80d8
c5519d3
@CunningBaldrick CunningBaldrick Add the Erlang/HiPE calling convention, patch by Yiannis Tsiouris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168166 91177308-0d34-0410-b5e6-96231b3b80d8
dc7f174
@chapuni chapuni llvm/test/CodeGen/X86/hipe-cc*.ll: Add explicit -mcpu, or they don't …
…expect to pass on Atom.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168171 91177308-0d34-0410-b5e6-96231b3b80d8
e0827d8
@d0k d0k Work around a layering violation from Target to CodeGen.
Technically this is still a layering violation but it's header-only which makes
it less harmful. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168173 91177308-0d34-0410-b5e6-96231b3b80d8
1358841
@zmodem zmodem SimplifyCFG: Don't assume non-null ScalarTargetTransformInfo.
Patch by Pekka Jääskeläinen!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168176 91177308-0d34-0410-b5e6-96231b3b80d8
6eac2ba
Craig Topper Finally add myself to the credits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168178 91177308-0d34-0410-b5e6-96231b3b80d8
72be358
Andrew Kaylor Adding new tests to test lli's pseudo-remote feature (-remote-mcjit).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168180 91177308-0d34-0410-b5e6-96231b3b80d8
661dfdc
@CunningBaldrick CunningBaldrick Fix PR14361: wrong simplification of A+B==B+A. You may think that the…
… old logic

replaced by this patch is equivalent to the new logic, but you'd be wrong, and
that's exactly where the bug was.  There's a similar bug in instsimplify which
manifests itself as instsimplify failing to simplify this, rather than doing it
wrong, see next commit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168181 91177308-0d34-0410-b5e6-96231b3b80d8
afe4539
Chris Lattner move irrelevant attribution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168182 91177308-0d34-0410-b5e6-96231b3b80d8
79dcd43
Craig Topper Factor out the final FADD that's common to multiple code paths in the…
… visitLog* functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168183 91177308-0d34-0410-b5e6-96231b3b80d8
df0ea8d
Joe Abbey Using const cast to alleviate a warning.
A PR is being filed to address some code issues here.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168185 91177308-0d34-0410-b5e6-96231b3b80d8
48f63be
@CunningBaldrick CunningBaldrick InstructionSimplify should be able to simplify A+B==B+A to 'true'
but wasn't due to the same logic bug that caused PR14361.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168186 91177308-0d34-0410-b5e6-96231b3b80d8
aceb03e
@willschm willschm ReleaseNotes.html updates reflecting PPC64 Elf Linux efforts and prog…
…ress.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168189 91177308-0d34-0410-b5e6-96231b3b80d8
ed07df3
Craig Topper Remove conditions from 'else if' that were guaranteed by preceding 'if'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168191 91177308-0d34-0410-b5e6-96231b3b80d8
08ac469
Hemant Kulkarni Added program header emission
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168195 91177308-0d34-0410-b5e6-96231b3b80d8
2217577
@CunningBaldrick CunningBaldrick Make this easier to understand, as suggested by Chandler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168196 91177308-0d34-0410-b5e6-96231b3b80d8
4f0dfbb
@jholewinski jholewinski Preserve address space of forward-referenced global variables in the …
…LL parser

Before, the parser would assert on the following code:

@a2 = global i8 addrspace(1)* @a
@a = addrspace(1) global i8 0

because the type of @a was "i8*" instead of "i8 addrspace(1)*" when parsing
the initializer for @a2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168197 91177308-0d34-0410-b5e6-96231b3b80d8
eaff2d5
@jholewinski jholewinski [NVPTX] Order global variables in def-use order before emiting them i…
…n the final assembly

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168198 91177308-0d34-0410-b5e6-96231b3b80d8
2085d00
@rlsosborne rlsosborne Fix handling of aliases to functions.
An alias to a function should use pc relative addressing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168199 91177308-0d34-0410-b5e6-96231b3b80d8
ccc015d
@asl asl Make sure FABS on v2f32 and v4f32 is legal on ARM NEON
This fixes PR14359


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168200 91177308-0d34-0410-b5e6-96231b3b80d8
b1a392e
@rlsosborne rlsosborne Add myself as owner of XCore Backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168201 91177308-0d34-0410-b5e6-96231b3b80d8
6062b2b
Andrew Trick typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168202 91177308-0d34-0410-b5e6-96231b3b80d8
d522754
Andrew Trick Use array_pod_sort instead of std::sort.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168203 91177308-0d34-0410-b5e6-96231b3b80d8
cdf493d
@wmzhao wmzhao Remove hard coded registers in ARM ldrexd and strexd instructions
This patch replaces the hard coded GPR pair [R0, R1] of
Intrinsic:arm_ldrexd and [R2, R3] of Intrinsic:arm_strexd with
even/odd GPRPair reg class.
Similar to the lowering of atomic_64 operation.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168207 91177308-0d34-0410-b5e6-96231b3b80d8
e56764b
Jakub Staszak Remove trailing spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168208 91177308-0d34-0410-b5e6-96231b3b80d8
4d7f70c
Andrew Kaylor Marking remote mcjit tests as XFAIL for ARM (hopefully only temporari…
…ly).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168210 91177308-0d34-0410-b5e6-96231b3b80d8
3bae269
@d0k d0k Remove default public copy ctors.
They are just useless and prevent SmallVector from picking an optimized codepath
for memcpyable elements.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168211 91177308-0d34-0410-b5e6-96231b3b80d8
fc53651
Chad Rosier Claim the driver.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168215 91177308-0d34-0410-b5e6-96231b3b80d8
9de3be8
Eric Christopher Add constant definitions for fission dwarf attributes, forms, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168218 91177308-0d34-0410-b5e6-96231b3b80d8
5094c0c
Andrew Kaylor Marking remote mcjit tests as XFAIL for mingw32 (hopefully only tempo…
…rarily).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168221 91177308-0d34-0410-b5e6-96231b3b80d8
21414e9
Eric Christopher Add some basic support for the fission addr forms to DebugInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168223 91177308-0d34-0410-b5e6-96231b3b80d8
205e60b
Andrew Kaylor Claim ownership of MCJIT
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168225 91177308-0d34-0410-b5e6-96231b3b80d8
0180ad6
Commits on Nov 17, 2012
Andrew Kaylor Marking remote mcjit tests as XFAIL for cygwin (hopefully only tempor…
…arily).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168226 91177308-0d34-0410-b5e6-96231b3b80d8
784c5bb
Evan Cheng Teach SROA rewriteVectorizedStoreInst to handle cases when the loaded…
… value is narrower than the stored value. rdar://12713675

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168227 91177308-0d34-0410-b5e6-96231b3b80d8
fd22019
@wmzhao wmzhao Rename methods like PairSRegs() to createSRegpairNode() to meet our c…
…oding

style requirement.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168229 91177308-0d34-0410-b5e6-96231b3b80d8
8b149cb
Akira Hatanaka Initial implementation of MipsTargetLowering::isLegalAddressingMode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168230 91177308-0d34-0410-b5e6-96231b3b80d8
94e4728
@nadavrot nadavrot LoopVectorizer: Add initial support for pointer induction variables (…
…for example: *dst++ = *src++).

At the moment we still require to have an integer induction variable (for example: i++).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168231 91177308-0d34-0410-b5e6-96231b3b80d8
9a68235
Chad Rosier [fast-isel] Add the -verify-machineinstrs to these test cases. The re…
…maining

test cases require fixes to fast-isel before the verifier can be enabled.
Part of rdar://12594152

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168233 91177308-0d34-0410-b5e6-96231b3b80d8
0a63b6a
@eefriedman eefriedman Mark FP_EXTEND form v2f32 to v2f64 as "expand" for ARM NEON. Patch by…
… Pete Couperus.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168240 91177308-0d34-0410-b5e6-96231b3b80d8
43147af
@zygoloid zygoloid Per agreement with Doug, take ownership of Clang's libSema.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168244 91177308-0d34-0410-b5e6-96231b3b80d8
eed64a9
@hfinkel hfinkel Phi speculation improvement for BasicAA
This is a partial solution to PR14351. It removes some of the special
significance of the first incoming phi value in the phi aliasing checking logic
in BasicAA. In the context of a loop, the old logic assumes that the first
incoming value is the interesting one (meaning that it is the one that comes
from outside the loop), but this is often not the case.  With this change, we
now test first the incoming value that comes from a block other than the parent
of the phi being tested.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168245 91177308-0d34-0410-b5e6-96231b3b80d8
c37f502
Andrew Trick Broaden isSchedulingBoundary to check aliases of SP.
On PPC the stack pointer is X1, but ADJCALLSTACK writes R1.

Fixes PR14315: Register regmask dependency problem with misched.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168248 91177308-0d34-0410-b5e6-96231b3b80d8
e1f6639
Andrew Trick Silence the buildbots for this test while I figure out the triple
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168249 91177308-0d34-0410-b5e6-96231b3b80d8
953663a
Joe Abbey Suppressing the 'direct base ‘{anonymous}::S1’ inaccessible in ‘{anon…
…ymous}::D9’

due to ambiguity' warning.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168251 91177308-0d34-0410-b5e6-96231b3b80d8
e68d743
Joe Abbey Removing utf-8 smart quote and trailing whitespace
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168253 91177308-0d34-0410-b5e6-96231b3b80d8
0f5720f
@32bitmicro 32bitmicro adding whose code is it anywa tools
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168254 91177308-0d34-0410-b5e6-96231b3b80d8
7e2db21
@32bitmicro 32bitmicro fix permissions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168255 91177308-0d34-0410-b5e6-96231b3b80d8
723c394
@32bitmicro 32bitmicro really fix permissions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168256 91177308-0d34-0410-b5e6-96231b3b80d8
3c13c3e
@d0k d0k Plug a memory leak in the GCOV profiling emitter, which never release…
…d the edge table memory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168259 91177308-0d34-0410-b5e6-96231b3b80d8
9e6ee16
James Molloy Add a new function to ConstantExpr - getAsInstruction. This returns i…
…ts Instruction* corollary, which may be useful if a user

wishes to transform a ConstantExpr so that one of its operands is no longer constant.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168262 91177308-0d34-0410-b5e6-96231b3b80d8
b9478c2
James Molloy Typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168263 91177308-0d34-0410-b5e6-96231b3b80d8
ab58391
@chisophugis chisophugis docs: Add link to HowToSetUpLLVMStyleRTTI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168271 91177308-0d34-0410-b5e6-96231b3b80d8
107aa1c
@d0k d0k Kick off 3.3 cycle for LLVM trunk.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168272 91177308-0d34-0410-b5e6-96231b3b80d8
537d9a7
@d0k d0k Bump sphinx config to 3.3.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168273 91177308-0d34-0410-b5e6-96231b3b80d8
ddc8b1f
@chisophugis chisophugis docs: CodingStandards should follow the coding standards.
Some variables in code examples were not LikeThis.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168275 91177308-0d34-0410-b5e6-96231b3b80d8
5d6d895
Commits on Nov 18, 2012
@nlewycky nlewycky Don't try to calculate the alignment of an unsigned type. Fixes PR14371!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168280 91177308-0d34-0410-b5e6-96231b3b80d8
294c965
@chapuni chapuni test/ExecutionEngine/MCJIT/stubs-remote.ll: Prune DOSish CRLF.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168281 91177308-0d34-0410-b5e6-96231b3b80d8
64b5015
@chapuni chapuni MCJIT: [cygming] Give noop to __main also in RecordingMemoryManger. I…
…t is emitted in @main().

XFAIL(s) can be removed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168282 91177308-0d34-0410-b5e6-96231b3b80d8
fad9751
Andrew Trick Use a full triple for a PPC test case for asm syntax.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168283 91177308-0d34-0410-b5e6-96231b3b80d8
410fe6f
@gribozavr gribozavr Documentation: fix broken link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168285 91177308-0d34-0410-b5e6-96231b3b80d8
c796af6
@gribozavr gribozavr Documentation: use a :doc: link instead of an absolute http:// link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168286 91177308-0d34-0410-b5e6-96231b3b80d8
44da234
@gribozavr gribozavr Documentation: remove a copy of the FileCheck man page from TestingGuide
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168288 91177308-0d34-0410-b5e6-96231b3b80d8
92d499e
@gribozavr gribozavr Documentation: convert SystemLibrary documentation to reST
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168289 91177308-0d34-0410-b5e6-96231b3b80d8
fee64ee
@gribozavr gribozavr SystemLibrary.rst: remove reference to a bug that was closed long tim…
…e ago

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168290 91177308-0d34-0410-b5e6-96231b3b80d8
085f6a4
@CunningBaldrick CunningBaldrick Fix PR14060, an infinite loop in reassociate. The problem was that on…
…e of the

operands of the expression being written was wrongly thought to be reusable as
an inner node of the expression resulting in it turning up as both an inner node
*and* a leaf, creating a cycle in the def-use graph.  This would have caused the
verifier to blow up if things had gotten that far, however it managed to provoke
an infinite loop first.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168291 91177308-0d34-0410-b5e6-96231b3b80d8
b8e1111
@CunningBaldrick CunningBaldrick Remove the last bit of constant folding from LinearizeExprTree (most …
…of it was

removed in commit 168035, but I missed this bit).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168292 91177308-0d34-0410-b5e6-96231b3b80d8
820b525
Commits on Nov 19, 2012
Craig Topper Move else onto line with preceding closing brace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168294 91177308-0d34-0410-b5e6-96231b3b80d8
8f54a53
Bob Wilson Some comment fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168299 91177308-0d34-0410-b5e6-96231b3b80d8
593423f
Bob Wilson Clean up handling of always-inline functions in the inliner.
This patch moves the isInlineViable function from the InlineAlways pass into
the InlineCostAnalyzer and then changes the InlineCost computation to use that
simple check for always-inline functions. All the special-case checks for
AlwaysInline in the CallAnalyzer can then go away.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168300 91177308-0d34-0410-b5e6-96231b3b80d8
28f872f
@tobig tobig First version of Polly release notes for 3.2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168302 91177308-0d34-0410-b5e6-96231b3b80d8
4a8654e
@chapuni chapuni Promote the constant 1 to long long, 1LL or 1ULL in int64_t-sensitive…
… context.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168304 91177308-0d34-0410-b5e6-96231b3b80d8
1fcbb8f
JP Bonn Changed tests that overaligned data structures to only align to 4. de0f1f2
JP Bonn Added SELECT_CC. 79a7df1
Anshuman Dasgupta Add myself as owner of the Hexagon backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168312 91177308-0d34-0410-b5e6-96231b3b80d8
9fb61cd
@uweigand uweigand Enable MCJIT tests on PowerPC.
Disable old JIT tests on PowerPC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168316 91177308-0d34-0410-b5e6-96231b3b80d8
948d9f7
Joe Abbey 80 cols
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168318 91177308-0d34-0410-b5e6-96231b3b80d8
e46b14a
Eric Christopher Fix a pasto.
Noticed by Dimitri Andric!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168319 91177308-0d34-0410-b5e6-96231b3b80d8
f0b3b74
@stoklund stoklund Handle mixed normal and early-clobber defs on inline asm.
PR14376.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168320 91177308-0d34-0410-b5e6-96231b3b80d8
e42561a
Eric Christopher Move section label emission to module end. Nothing should be
depending on them being emitted before the text and/or data
sections and testing didn't uncover any.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168321 91177308-0d34-0410-b5e6-96231b3b80d8
97c3472
@asl asl Factor out type info emission into separate routine.
It turned out that ARM wants different layout of type infos.
This is yet another patch in attempt to fix PR7187 


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168325 91177308-0d34-0410-b5e6-96231b3b80d8
2386fc8
@asl asl Make AsmPrinter::EmitTTypeReference() more robust - put
the zero GV check inside, so we won't forget it at the caller side.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168328 91177308-0d34-0410-b5e6-96231b3b80d8
239938f
@chisophugis chisophugis docs: Fix reference to "bold" part of code example.
Fixes PR14380.

The prose was referring to a "bold" part of the code example, where the
boldness was lost in the transition from HTML. Unlike HTML, where one
can easily have a <b> inside a <pre>, reStructuredText is generally
unable to represent such nested markup.

Hack around it with the :emphasise-lines: option to the  code-block
directive to single out the regions instead. Thankfully the regions are
close-enough to being full lines for this to work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168329 91177308-0d34-0410-b5e6-96231b3b80d8
2d4a477
Eric Christopher Whitespace and 80-col.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168337 91177308-0d34-0410-b5e6-96231b3b80d8
0f1c7f6
Eric Christopher Remove a function argument and propagate const around accordingly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168338 91177308-0d34-0410-b5e6-96231b3b80d8
c4639d6
@chisophugis chisophugis Allow using MemoryBuffers with yaml::Stream directly.
The rationale is to get YAML filenames in diagnostics from
yaml::Stream::printError -- currently the filename is hard-coded as
"YAML" because there's no buffer information available.

Patch by Kim Gräsman!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168341 91177308-0d34-0410-b5e6-96231b3b80d8
525398e
Commits on Nov 20, 2012
Eric Christopher 80-column and whitespace fixups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168344 91177308-0d34-0410-b5e6-96231b3b80d8
5f214ae
@eliben eliben ReST-ify some markup in the LIT document
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168345 91177308-0d34-0410-b5e6-96231b3b80d8
1f9f73a
@chandlerc chandlerc Rework the rewriting of loads and stores for vector and integer allocas
to properly handle the combinations of these with split integer loads
and stores. This essentially replaces Evan's r168227 by refactoring the
code in a different way, and trynig to mirror that refactoring in both
the load and store sides of the rewriting.

Generally speaking there was some really problematic duplicated code
here that led to poorly founded assumptions and then subtle bugs. Now
much of the code actually flows through and follows a more consistent
style and logical path. There is still a tiny bit of duplication on the
store side of things, but it is much less bad.

This also changes the logic to never re-use a load or store instruction
as that was simply too error prone in practice.

I've added a few tests (one a reduction of the one in Evan's original
patch, which happened to be the same as the report in PR14349). I'm
going to look at adding a few more tests for things I found and fixed in
passing (such as the volatile tests in the vectorizable predicate).

This patch has survived bootstrap, and modulo one bugfix survived
Duncan's test suite, but let me know if anything else explodes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168346 91177308-0d34-0410-b5e6-96231b3b80d8
f5837aa
@chandlerc chandlerc Add a comment to associate a FIXME with a PR where it is matters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168347 91177308-0d34-0410-b5e6-96231b3b80d8
a1237b1
@chisophugis chisophugis docs: Sphinxify LLVMBuild documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168348 91177308-0d34-0410-b5e6-96231b3b80d8
01315e6
@hfinkel hfinkel Note Freescale's contributions in the PPC release notes.
This mainly reflects the work of Tobias von Koch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168352 91177308-0d34-0410-b5e6-96231b3b80d8
9eecb35
@isanbard isanbard Make the AttrListPtr object a part of the LLVMContext.
When code deletes the context, the AttributeImpls that the AttrListPtr points to
are now invalid. Therefore, instead of keeping a separate managed static for the
AttrListPtrs that's reference counted, move it into the LLVMContext and delete
it when deleting the AttributeImpls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168354 91177308-0d34-0410-b5e6-96231b3b80d8
0976e00
Simon Atanasyan Marking remote mcjit tests as XFAIL for MIPS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168357 91177308-0d34-0410-b5e6-96231b3b80d8
01425d6
Elena Demikhovsky Intel OCL built-ins calling conventions now support MacOS 32-bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168359 91177308-0d34-0410-b5e6-96231b3b80d8
4fe5405
Tim Northover Fix physical register liveness calculations:
+ Take account of clobbers
+ Give outputs priority over inputs since they happen later.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168360 91177308-0d34-0410-b5e6-96231b3b80d8
310f248
@chandlerc chandlerc Fix PR14132 and handle OOB loads speculated throuh PHI nodes.
The issue is that we may end up with newly OOB loads when speculating
a load into the predecessors of a PHI node, and this confuses the new
integer splitting logic in some cases, triggering an assertion failure.
In fact, the branch in question must be dead code as it loads from
a too-narrow alloca. Add code to handle this gracefully and leave the
requisite FIXMEs for both optimizing more aggressively and doing more to
aid sanitizing invalid code which triggers these patterns.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168361 91177308-0d34-0410-b5e6-96231b3b80d8
1767929
@chandlerc chandlerc Use LLVM_ENABLE_DUMP for the variables used in printing as well as the
printing functions themselves.

Part of PR14324 (which should have just been a patch to the list, but
hey...)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168362 91177308-0d34-0410-b5e6-96231b3b80d8
3a902d0
@chandlerc chandlerc Fix a place where the declaration didn't use LLVM_ENABLE_DUMP but the
definition did.

The last part of PR14324.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168363 91177308-0d34-0410-b5e6-96231b3b80d8
638d2d7
@chapuni chapuni llvm/test/ExecutionEngine/MCJIT/lit.local.cfg: ppc32-elf is not ready.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168364 91177308-0d34-0410-b5e6-96231b3b80d8
fecc368
@chisophugis chisophugis docs: Fix highlighting.
.git/config was marked as "bash" instead of "ini".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168365 91177308-0d34-0410-b5e6-96231b3b80d8
426fe8b
JP Bonn Merge branch 'master' of http://llvm.org/git/llvm
LM32 changes for update in next commit.
8092e90
JP Bonn LM32 changes for latest LLVM. 9979ec9
Kostya Serebryany [asan] make sure that linker-initialized globals (non-extern) are not…
… instrumented even in -asan-initialization-order mode. This time with a test

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168366 91177308-0d34-0410-b5e6-96231b3b80d8
ca23d43
Kostya Serebryany [asan] don't instrument linker-initialized globals even with external…
… linkage in -asan-initialization-order mode

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168367 91177308-0d34-0410-b5e6-96231b3b80d8
4077906
Kostya Serebryany [asan] use names of globals instead of an external set to distinguish…
… the globals generated by asan

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168368 91177308-0d34-0410-b5e6-96231b3b80d8
51c7c65
Joe Abbey Fixing a broken link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168372 91177308-0d34-0410-b5e6-96231b3b80d8
8162cf4
Joe Abbey Better 80cols... *sigh*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168373 91177308-0d34-0410-b5e6-96231b3b80d8
2db2749
Eric Christopher Remove some dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168374 91177308-0d34-0410-b5e6-96231b3b80d8
ecf7e97
@eliben eliben Some sphinx-ing and consistency fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168380 91177308-0d34-0410-b5e6-96231b3b80d8
099bfe6
Eric Christopher Whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168383 91177308-0d34-0410-b5e6-96231b3b80d8
dcc675a
Eric Christopher Formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168384 91177308-0d34-0410-b5e6-96231b3b80d8
aaa50b9
Eric Christopher Remove unused function argument, add a bit to the comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168387 91177308-0d34-0410-b5e6-96231b3b80d8
fbd1975
Jyotsna Verma Removing some unused instruction definitions from the Hexagon backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168388 91177308-0d34-0410-b5e6-96231b3b80d8
7d1b42a
@wanders wanders [python] fix get_library()
Before this fix, the LLVM Python bindings on SVN trunk always fail with:
	Exception: LLVM shared library not found!
since it's still looking for a library named "LLVM-3.1svn".

Besides updating the LLVM version in the library name,
this patch also changes llvm.get_library() to make it possible to run
the unit tests without installing the LLVM shared library into a
default linker search path.

e.g. after this patch, running the llvm/python unit tests with:
LD_LIBRARY_PATH=../build/Debug+Asserts/lib nosetests -v bindings/python/llvm/tests/
would work on Linux.

Patch from Scott Tsai (with some minor modifications)

Patch also acked by Gregory Szorc



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168390 91177308-0d34-0410-b5e6-96231b3b80d8
17cfe87
Sebastian Pop removes a few "const" qualifiers
so that I can (someday) call SE->getSCEV without complaint.
No semantic change intended.

Patch from Preston Briggs <preston.briggs@gmail.com>.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168391 91177308-0d34-0410-b5e6-96231b3b80d8
7372a7d
@eliben eliben Add the -no-show-raw-insn option to llvm-objdump, thus making it a bi…
…t more

conformant to binutils objdump.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168393 91177308-0d34-0410-b5e6-96231b3b80d8
8b9da53
Eric Christopher Remove constness from this, it modifies the output stream as does
everything else underneath.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168395 91177308-0d34-0410-b5e6-96231b3b80d8
7dc68db
Jakub Staszak Add obvious constantness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168396 91177308-0d34-0410-b5e6-96231b3b80d8
8c67c03
@eliben eliben Add a tests for the new -no-show-raw-insn option of llvm-objdump.
This also initiates a test/tools directory where tools-specific tests can be
placed.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168397 91177308-0d34-0410-b5e6-96231b3b80d8
a631ea9
Commits on Nov 21, 2012
Eric Christopher Whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168398 91177308-0d34-0410-b5e6-96231b3b80d8
c82fbf4
Eric Christopher Update and add some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168399 91177308-0d34-0410-b5e6-96231b3b80d8
e6ad6ac
Eric Christopher Update some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168400 91177308-0d34-0410-b5e6-96231b3b80d8
b8a101f
Eric Christopher Update for some of the coding standard before rearranging functions
around.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168401 91177308-0d34-0410-b5e6-96231b3b80d8
7ee5f5d
Eric Christopher Whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168402 91177308-0d34-0410-b5e6-96231b3b80d8
8b4310b
Jakub Staszak Make isScratchReg and isFPCopy methods static.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168407 91177308-0d34-0410-b5e6-96231b3b80d8
6f05f21
Jakub Staszak Make calcLiveInMask method static.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168409 91177308-0d34-0410-b5e6-96231b3b80d8
e845ced
Craig Topper Mark ISD::FMA as Legal instead of custom for x86 with FMA3/FMA4. Need…
…ed so that llvm.muladd can be converted to ISD::FMA for fp_contract.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168413 91177308-0d34-0410-b5e6-96231b3b80d8
3dcefc8
Craig Topper Fix execution domain for packed FMA4 instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168417 91177308-0d34-0410-b5e6-96231b3b80d8
9648782
@chandlerc chandlerc PR14055: Implement support for sub-vector operations in SROA.
Now if we can transform an alloca into a single vector value, but it has
subvector, non-element accesses, we form the appropriate shufflevectors
to allow SROA to proceed. This fixes PR14055 which pointed out a very
common pattern that SROA couldn't handle -- mixed vec3 and vec4
operations on a single alloca.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168418 91177308-0d34-0410-b5e6-96231b3b80d8
07df765
@espindola espindola Using "not grep" is brittle as the test passes if llvm-as fails.
Fix the testcase to be valid IL and uses FileCheck.
Thanks to NAKAMURA Takumi for noticing it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168427 91177308-0d34-0410-b5e6-96231b3b80d8
811a837
@chapuni chapuni llvm/test/Transforms/InstCombine/sdiv-1.ll: FileCheck-ize.
"not grep '-715827882'" performed as below...bad...

Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168430 91177308-0d34-0410-b5e6-96231b3b80d8
4bf4c73
Jyotsna Verma Renamed HexagonImmediates.td -> HexagonOperands.td.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168434 91177308-0d34-0410-b5e6-96231b3b80d8
24d5025
@espindola espindola Finish the renaming.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168437 91177308-0d34-0410-b5e6-96231b3b80d8
6ee1e08
@asl asl Add support for byval args. Patch by Job Noorman!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168439 91177308-0d34-0410-b5e6-96231b3b80d8
6cbeb4d
@asl asl Add support for varargs functions for msp430.
Patch by Job Noorman!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168440 91177308-0d34-0410-b5e6-96231b3b80d8
0ae6124
Andrew Kaylor Implementing basic function-level profiling support in IntelJITEventL…
…istener.

Tests to follow in another patch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168444 91177308-0d34-0410-b5e6-96231b3b80d8
34519fc
@prestonbriggs prestonbriggs test commit: added a few comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168445 91177308-0d34-0410-b5e6-96231b3b80d8
d6f0489
Akira Hatanaka Add relocations used for mips big GOT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168448 91177308-0d34-0410-b5e6-96231b3b80d8
e390434
Jyotsna Verma Use one common 'let' expression to set PrintMethod for all immediate …
…operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168449 91177308-0d34-0410-b5e6-96231b3b80d8
81081b1
Akira Hatanaka [mips] Add target operand flag enums for big GOT relocations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168450 91177308-0d34-0410-b5e6-96231b3b80d8
26e6ad7
Jyotsna Verma Add new predicates for the immediate operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168451 91177308-0d34-0410-b5e6-96231b3b80d8
b546d5a
Akira Hatanaka [mips] When a node which loads from a GOT is created, pass a MachineP…
…ointerInfo

referring to a GOT entry.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168453 91177308-0d34-0410-b5e6-96231b3b80d8
59be760
Akira Hatanaka [mips] Add command line option "-mxgot".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168455 91177308-0d34-0410-b5e6-96231b3b80d8
81784cb
Akira Hatanaka [mips] Add helper functions that create nodes for computing address.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168456 91177308-0d34-0410-b5e6-96231b3b80d8
6b28b80
Akira Hatanaka [mips] Simplify lowering functions in MipsISelLowering.cpp by using t…
…he helper

functions added in r168456.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168458 91177308-0d34-0410-b5e6-96231b3b80d8
d43e06d
Andrew Kaylor Adding tests for the Intel JIT event listener's MCJIT support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168459 91177308-0d34-0410-b5e6-96231b3b80d8
238f34a
Akira Hatanaka [mips] Generate big GOT code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168460 91177308-0d34-0410-b5e6-96231b3b80d8
f09a037
@eliben eliben Fix a typo in FileCheck.rst
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168466 91177308-0d34-0410-b5e6-96231b3b80d8
17ced45
Jack Carter Mips direct object xgot support
This patch provides support for the MIPS relocations:

    *)  R_MIPS_GOT_HI16
    *)  R_MIPS_GOT_LO16
    *)  R_MIPS_CALL_HI16
    *)  R_MIPS_CALL_LO16

These are used for large GOT instruction sequences.

Contributer: Jack Carter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168471 91177308-0d34-0410-b5e6-96231b3b80d8
198ad91
@prestonbriggs prestonbriggs Corrects a problem where we reply exclusively of GEPs to drive
analysis.  Better is to look for cases with useful GEPs and use them
when possible.  When a pair of useful GEPs is not available, use the
raw SCEVs directly. This approach supports better analysis of pointer
dereferencing.

In parallel, all the test cases are updated appropriately.
Cases where we have a store to *B++ can now be analyzed!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168474 91177308-0d34-0410-b5e6-96231b3b80d8
72a2c06
Commits on Nov 22, 2012
Eric Christopher Pull some code out into functions to make rearranging them a bit easier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168481 91177308-0d34-0410-b5e6-96231b3b80d8
4117bec
Kostya Serebryany [asan] rip off the creation of global redzones from the main AddressS…
…anitizer class into a separate class. The intent is to make it a separate ModulePass in the following commmits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168484 91177308-0d34-0410-b5e6-96231b3b80d8
b9a12ea
Lang Hames llvm.fmuladd.* lowering should be checking isOperationLegalOrCustom, …
…rather than

isOperationLegal. Thanks to Craig Topper for pointing this out.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168485 91177308-0d34-0410-b5e6-96231b3b80d8
b47ec40
@krememek krememek Generalize matching of add_executable to add_XXX_executable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168490 91177308-0d34-0410-b5e6-96231b3b80d8
7462c12
@chandlerc chandlerc Remove 'sretpromotion' pass from the documentation. This pass is long
dead.

Patch by Stephan Falke.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168492 91177308-0d34-0410-b5e6-96231b3b80d8
7a3b7e5
JP Bonn Merge branch 'master' of https://github.com/milkymist/llvm-lm32 ad85e35
@gribozavr gribozavr Documentation: convert SourceLevelDebugging.html to reST
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168493 91177308-0d34-0410-b5e6-96231b3b80d8
bbef5ea
JP Bonn Corrected build problems from merge (rename GPRRegClass, uint16_t reg…
…ister types, HandleByVal parameters), renamed "nospbias" option to "abistdsp".
3f225b6
JP Bonn Merge branch 'master' of http://llvm.org/git/llvm 7da1261