Skip to content

Rebases llvm to near-head, fixes .ll parse errors with fixedstacksegment attribute #8

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
wants to merge 1,055 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1055 commits
Select commit Hold shift + click to select a range
a6cd815
Add missing relocation names
gix Apr 12, 2013
1c8dfa5
Add -expand-relocs to llvm-readobj
gix Apr 12, 2013
8ed205f
Add extensive relocation tests for llvm-readobj
gix Apr 12, 2013
f89da72
Replace coff-/elf-dump with llvm-readobj
gix Apr 12, 2013
7e87373
Remove obsolete object file dumpers
gix Apr 12, 2013
cf3b55a
Teach llvm-readobj to print ELF program headers
gix Apr 12, 2013
5eacadd
Don't explicitly provide -pie in MSan bootstrap of LLVM, as it's now …
Apr 12, 2013
71c1b22
Fix a disconcerting bug in Value::isUsedInBasicBlock, which gave wron…
d0k Apr 12, 2013
200241e
Replace uses of the deprecated std::auto_ptr with OwningPtr.
andyg1001 Apr 12, 2013
3389e10
Revert broken pieces of r179373.
d0k Apr 12, 2013
15e8837
AArch64: remove over-zealous use of CHECK-NEXT
Apr 12, 2013
b6ad2bd
AArch64: use full triple for ELF tests
Apr 12, 2013
08a0e8f
LoopVectorizer: integer division is not a reduction operation
aschwaighofer Apr 12, 2013
dda4b6b
[ms-inline asm] Add the implementation for the AOK_Delete kind, which…
Apr 12, 2013
fb1cd69
Simplify (A & ~B) in icmp if A is a power of 2
majnemer Apr 12, 2013
c1406d7
Hexagon: Set isPredicatedFlase flag for all the instructions with neg…
JyotsnaVerma Apr 12, 2013
1877dc0
Hexagon: Set isPredicatedNew flag on predicate new instructions.
JyotsnaVerma Apr 12, 2013
81b2fd5
Add a comment about the PPC Interpretation64Bit bit
Apr 12, 2013
5985746
PPC: Remove (broken) nested implicit definition lists
Apr 12, 2013
9458f3e
[ms-inline asm] Add support for operands that include both a symbol a…
Apr 12, 2013
d64ee44
ARM: Correct printing of pre-indexed operands.
Apr 12, 2013
b71ce6a
[ms-inline asm] Have the [ Symbol ] case fall into the more general l…
Apr 12, 2013
f2c2b20
lit: Add a test for discovery w/ test_exec_root (out-of-tree test root).
ddunbar Apr 12, 2013
406ef44
lit: Fix infinite recursion when an out-of-tree test root is located …
ddunbar Apr 12, 2013
d0dd5e4
[ms-inline asm] Address the FIXME for ImmDisp before brackets. This
Apr 12, 2013
3f42936
[ms-inline asm] Move this logic into a static function as it's only a…
Apr 12, 2013
affe889
Add support for additional vector instructions in the interpreter.
nadavrot Apr 12, 2013
196ee11
Add debug prints.
nadavrot Apr 12, 2013
9eb366a
CostModel: increase the default cost of supported floating point oper…
nadavrot Apr 12, 2013
a74f91e
SLPVectorizer: add support for vectorization of diamond shaped trees.…
nadavrot Apr 12, 2013
6ac9278
InstCombine: Check the operand types before merging fcmp ord & fcmp ord.
d0k Apr 12, 2013
0fda0f3
Revert r179409 because it caused some warnings and some of the build …
nadavrot Apr 12, 2013
9367b8d
[mips] v4i8 and v2i16 add, sub and mul instruction selection patterns.
ahatanak Apr 12, 2013
6d22445
[mips] Instruction selection patterns for carry-setting and using add
ahatanak Apr 12, 2013
d35d5bd
Revert r179420 and r179421.
ahatanak Apr 12, 2013
41a10b6
[ms-inline asm] Simplify the logic by using parsePrimaryExpr. No fun…
Apr 12, 2013
bf308ce
[mips] Override TargetLoweringBase::isShuffleMaskLegal.
ahatanak Apr 13, 2013
3d60241
[mips] Reapply r179420 and r179421.
ahatanak Apr 13, 2013
da2a237
Finish templating MachObjectFile over endianness.
espindola Apr 13, 2013
69893a2
Some versions of gcc don't like typenames in these places.
espindola Apr 13, 2013
4e0980a
[mips] Move MipsTargetLowering::lowerINTRINSIC_W_CHAIN and
ahatanak Apr 13, 2013
107cd0c
Add typenames to see if bot goes green.
espindola Apr 13, 2013
c706dc7
Catch another case where SD fails to propagate node order.
atrick Apr 13, 2013
4392f0f
MI-Sched: schedule physreg copies.
atrick Apr 13, 2013
f521997
X86 machine model: reduce SandyBridge and Haswell ILPWindow.
atrick Apr 13, 2013
6a22dba
MI-Sched cleanup. If an instruction has no valid sched class, do not …
atrick Apr 13, 2013
baedcd7
MI-Sched: DEBUG formatting.
atrick Apr 13, 2013
65634fa
Add a missing REQUIRES: asserts
atrick Apr 13, 2013
4b1a1f3
Fix a dislexic regex.
atrick Apr 13, 2013
16de01e
Further generalize this scheduler test.
atrick Apr 13, 2013
b99c995
Spill and restore PPC CR registers using the FP when we have one
Apr 13, 2013
8848680
Fix a scalability issue with complex ConstantExprs.
d0k Apr 13, 2013
9cbee63
GlobalDCE: Fix an oversight in my last commit that could lead to cras…
d0k Apr 13, 2013
41b585c
Use the correct types when matching ADDRri patterns from frame indexes.
stoklund Apr 13, 2013
41d59c6
Define SPARC code models.
stoklund Apr 13, 2013
63496f6
Mark all PPC CR registers to be spilled as live-in and tag MFCR appro…
Apr 13, 2013
0ec587e
Add target flags to SPARC address operands.
stoklund Apr 14, 2013
ef596e1
Fix patterns for 64-bit pointers.
stoklund Apr 14, 2013
f7eaf29
SLPVectorizer: add initial support for reduction variable vectorization.
nadavrot Apr 14, 2013
2693210
Also put target flags on SPARC constant pool references.
stoklund Apr 14, 2013
cab0abd
Use target flags for printing SPARC asm operands.
stoklund Apr 14, 2013
87ce017
Add support for the SPARC v9 abs44 code model.
stoklund Apr 14, 2013
618eda7
Add support for the abs64 SPARC v9 code model.
stoklund Apr 14, 2013
ab105ae
SLPVectorizer: Add support for trees that don't start at binary opera…
nadavrot Apr 14, 2013
1f098af
Remove unused function attributes.
nadavrot Apr 14, 2013
d9f88da
Use i32 for all SPARC shift amounts, even in 64-bit mode.
stoklund Apr 14, 2013
4208200
Document the decision to assume that the cost of floats is twice as m…
nadavrot Apr 14, 2013
0774629
SLP: Document the scalarization cost method.
nadavrot Apr 14, 2013
a15dedb
Document the SLP infrastructure.
nadavrot Apr 14, 2013
e197486
Miscellaneous cleanups for VecUtils.h
d0k Apr 14, 2013
687a9df
Make the command line triple match the module triple.
nadavrot Apr 14, 2013
024d943
Reorders two transforms that collide with each other
majnemer Apr 14, 2013
ef1762b
Use object file specific section type for initial text section
gix Apr 14, 2013
10f8d2b
If we've specified a triple on the command line then go ahead
echristo Apr 14, 2013
199ff9c
Remove some unused triple and data layout.
echristo Apr 14, 2013
f1216ab
Revert "Remove some unused triple and data layout."
echristo Apr 14, 2013
fb6fe0a
Fix PPC64 CR spill location for callee-saved registers
Apr 15, 2013
00e86ad
Mark all PPC comparison instructions as not having side effects
Apr 15, 2013
fd975b0
fix include path in doc Extending LLVM
J-Liu Apr 15, 2013
0961656
SLPVectorizer: Add support for vectorizing trees that start at compar…
nadavrot Apr 15, 2013
8849838
Rename the slp-vectorizer clang/llvm flags. No functionality change.
nadavrot Apr 15, 2013
1129a83
Add an option -vectorize-slp-aggressive for running the BB vectorizer…
nadavrot Apr 15, 2013
fc175d9
Docs: merge the description of the BB and SLP vectorizers and documen…
nadavrot Apr 15, 2013
2f7ce45
Document our desire to enable the loop vectorizer on -Os in future re…
nadavrot Apr 15, 2013
fdf9624
Recommit r179497 after fixing uninitialized variable.
echristo Apr 15, 2013
60d20a8
Revert "Recommit r179497 after fixing uninitialized variable." until
echristo Apr 15, 2013
eaa752f
Enable all targets by default on Visual Studio.
Apr 15, 2013
604b357
Replace uses of the deprecated std::auto_ptr with OwningPtr.
andyg1001 Apr 15, 2013
21a01d1
Make the host endianness check an integer constant expression.
espindola Apr 15, 2013
0034c1f
Remove unused function.
espindola Apr 15, 2013
d354644
Avoid outputting temporary test file into source tree.
Apr 15, 2013
c7f424d
Remove getters now that we can specialize structs on the host endiann…
espindola Apr 15, 2013
f971916
Fix bit size of v64i8 and v32i16 vector types.
aschwaighofer Apr 15, 2013
0851ce0
Try to fix the mingw builds.
espindola Apr 15, 2013
24dcc20
Grammar and punctuation fixes.
Apr 15, 2013
0437ef6
Simplify the MCInst operator iterator declaration.
Apr 15, 2013
467116a
Fix a typo in comment.
Apr 15, 2013
3a63bf2
R600: Emit ELF formatted code rather than raw ISA.
tstellarAMD Apr 15, 2013
bf1efe6
R600/SI: Emit configuration value in the .AMDGPU.config ELF section
tstellarAMD Apr 15, 2013
9a25630
R600/SI: Emit config values in register value pairs.
tstellarAMD Apr 15, 2013
92b0d0e
Fix endianness on some MSVC versions.
espindola Apr 15, 2013
c9363ef
Fix silly typo that broke big endian hosts.
espindola Apr 15, 2013
e9a4411
SLPVectorizer: Make it a function pass and add code for hoisting the …
nadavrot Apr 15, 2013
74cd12b
Update the release notes about the vectorizers.
nadavrot Apr 15, 2013
96e0b96
Fix the internal link.
nadavrot Apr 15, 2013
3fe91a4
Fix a grammar mistake, and add a line about the two phases that the B…
nadavrot Apr 15, 2013
b8145e3
Mips assembler: Explicit floating point condition register recognition.
Apr 15, 2013
23e00ae
We are not able to bitcast a pointer to an integral value.
isanbard Apr 15, 2013
d0132ba
ARM: Add VACLT and VACLE assembly aliases.
Apr 15, 2013
ad36608
Add 64-bit multiply and divide instructions for SPARC v9.
stoklund Apr 16, 2013
a121e24
simplifycfg: Fix integer overflow converting switch into icmp.
zmodem Apr 16, 2013
6334e13
Add four new functions and one new enum to the C API:
zmodem Apr 16, 2013
0eaa6f6
llvm-objdump: Don't print contents of BSS sections: it makes no sense…
Apr 16, 2013
532854d
Implement ARM unwind opcode assembler.
loganchien Apr 16, 2013
a363b11
Fix build failure introduced in 179591 when assertions are disabled.
loganchien Apr 16, 2013
6b51f75
Cleanup naming: DataLayout s/TD/DL/
eliben Apr 16, 2013
7e5d54c
[ms-inline asm] Remove some dead code.
Apr 16, 2013
8ccacf7
[ms-inline asm] Refactor. No functional change intended.
Apr 16, 2013
b7690be
Remove unused variable from previous refactor.
Apr 16, 2013
b509b65
[XCore] Convert a couple of tests to FileCheck.
Apr 16, 2013
db51e31
[XCore] Give test more generic name.
Apr 16, 2013
13a1628
[XCore] Extend test to check positve offsets are folded into addresses.
Apr 16, 2013
6340549
Print out the target-independent attributes in a comment before the f…
isanbard Apr 16, 2013
68ee152
C API: Add LLVMAddTargetDependentFunctionAttr()
tstellarAMD Apr 16, 2013
4074343
C API: Add LLVMGetBufferStart()
tstellarAMD Apr 16, 2013
edc93b3
C API: Add LLVMGetBufferSize()
tstellarAMD Apr 16, 2013
ad74f33
C API: Add LLVMTargetMachineEmitToMemoryBuffer()
tstellarAMD Apr 16, 2013
4afa9b7
[ms-inline asm] Add support for parsing complex immediate expressions…
Apr 17, 2013
8afc8b7
Mips assembler: Enable handling of nested expressions
Apr 17, 2013
c7ab4f9
Do not optimise fprintf() calls if its return value is used.
pcc Apr 17, 2013
98055c6
Fix random typo.
echristo Apr 17, 2013
2ca02c6
PR15149/r174304 improvement - print hex for unknown dwarf language co…
dwblaikie Apr 17, 2013
60a7f69
test
Apr 17, 2013
0f3e48e
This appears to be no longer necessary for the testsuite.
echristo Apr 17, 2013
ce47d5b
Fix -Werror build.
eugenis Apr 17, 2013
cd61455
Create a stub for DWARF parser unittests
Apr 17, 2013
784baa6
Use StringSwitch instead of long chain of if-else. No functionality c…
Apr 17, 2013
141ca7f
R600: Emit used GPRs count
Apr 17, 2013
58df169
R600: Export is emitted as a CF_NATIVE inst
Apr 17, 2013
26ebd7a
R600: Make Export Instruction not duplicable
Apr 17, 2013
8952d90
Make formatting more consistent and tidy-up.
eliben Apr 17, 2013
1fb54cf
uweigand Apr 17, 2013
a73dd3e
Don't store AttributeSet::FunctionIndex as an int.
d0k Apr 17, 2013
4035693
Appease a gcc warning about an overflow in a constant conversion.
isanbard Apr 17, 2013
7c4cf03
Fix treatment of ARM unallocated hint instructions.
Apr 17, 2013
d58b50b
A limit of 500 was still a bit too high for some tests.
isanbard Apr 17, 2013
9c63f0d
X86 cost model: Exit before calling getSimpleVT on non-simple VTs
aschwaighofer Apr 17, 2013
5012548
This patch teaches x86 fast-isel to generate the native div/idiv inst…
eliben Apr 17, 2013
8c49338
More consistent formatting and tidying-up
eliben Apr 17, 2013
ba5d950
[objc-arc] Added an option to arc-annotations for turning off CheckFo…
gottesmm Apr 17, 2013
b271b12
[objc-arc] Added descriptions for EnableARCAnnotations, EnableCheckFo…
gottesmm Apr 17, 2013
d58f773
[ms-inline asm] Add support for the minus unary operator. Previously…
Apr 17, 2013
9739b65
Fixed typo.
gottesmm Apr 17, 2013
53c9def
[ms-inline asm] These should be int64_t, not uint64_t.
Apr 17, 2013
df39be6
Add support for subsections to the ELF assembler. Fixes PR8717.
pcc Apr 17, 2013
4323907
Two small cleanups for ELF's templates.
espindola Apr 17, 2013
f92bf40
[objc-arc] Added annotation option to only emit annotations for a spe…
gottesmm Apr 17, 2013
b1ac6e6
Add an option `-enable-old-style-attr-syntax' to print out function a…
isanbard Apr 17, 2013
86924b4
Mips assembler: formatting and comment changes.
Apr 18, 2013
26aef5b
[mips] DSP-ASE move from HI/LO register instructions.
ahatanak Apr 18, 2013
2fbe90c
[mips] Rename function.
ahatanak Apr 18, 2013
fd4ce16
Streamline arc-annotation test (removing some cases which do not add …
gottesmm Apr 18, 2013
8a70920
Removed trailing whitespace.
gottesmm Apr 18, 2013
0556900
[objc-arc] Do not mismatch up retains inside a for loop with releases…
gottesmm Apr 18, 2013
a40a3a5
Combine bit test + conditional or into simple math
majnemer Apr 18, 2013
7754276
Revert "Combine bit test + conditional or into simple math"
majnemer Apr 18, 2013
d050e96
Fix for PR14824, An ARM Load/Store Optimization bug
Apr 18, 2013
403fc14
LoopVectorize: Use a set to avoid longer cycles in the reduction chai…
d0k Apr 18, 2013
05862c9
Fix comment spacing.
Apr 18, 2013
f841609
Fixes to LangRef.rst: incorrect attributes syntax and misplaced 'nobu…
eliben Apr 18, 2013
6c8afad
Make this private method.
Apr 18, 2013
c3a9574
[ms-inline asm] Simplify some logic and add a FIXME for unhandled una…
Apr 18, 2013
bff1776
Fix grammar in LLVMBuild.rst
eliben Apr 18, 2013
a3fb330
LoopVectorizer: Recognize min/max reductions
aschwaighofer Apr 18, 2013
2061dcf
Allow misaligned stores in x86 fast-isel.
dschuff Apr 18, 2013
77327fd
Fix a comment, PR15777.
lattner Apr 18, 2013
fd7aa38
At Jim Grosbach's request detemplate Object/MachO.h.
espindola Apr 18, 2013
c0b4b67
Fix comment. Patch by Stephen Lin.
isanbard Apr 18, 2013
77e95d0
Added a function scalarizePHI() that sclarizes a vector phi instructi…
Apr 18, 2013
4bfeee1
C API: Fix coding style
tstellarAMD Apr 18, 2013
86dc3f3
In the function InstCombiner::visitExtractElementInst() removed the l…
Apr 18, 2013
4b15d6a
Fix a -Wdocumentation warning
gribozavr Apr 18, 2013
bb1b63c
This patch addresses two cleanup issues:
isanbard Apr 18, 2013
8a6a7bb
Cleanup patch:
isanbard Apr 18, 2013
8bb3b09
Fix typo
eliben Apr 18, 2013
fcba22d
X86: Add an SSE2 lowering for 64 bit compares when pcmpgtq (SSE4.2) i…
d0k Apr 18, 2013
a88a016
Make the TargetIndependent flag have the right boolean value.
isanbard Apr 18, 2013
860c08c
Implement optimizeCompareInstr for PPC
Apr 18, 2013
88eb89b
[asm parser] Add support for predicating MnemonicAlias based on the a…
Apr 18, 2013
4029c3f
Disable PPC comparison optimization by default
Apr 18, 2013
2828608
Set the compact unwind encoding to 'requires EH DWARF' if we cannot g…
isanbard Apr 18, 2013
18014d4
Assert if we're trying to generate a null compact unwind entry.
isanbard Apr 18, 2013
3f1f9c3
[ms-inline asm] Apply the condition code mnemonic aliases to both the…
Apr 18, 2013
fa2b25c
Relax this assert. It may not hold in all cases.
isanbard Apr 18, 2013
74d8924
Implement a better fix for PR15185.
isanbard Apr 18, 2013
89ec1c5
Use an enum instead of magic constants to improve readability.
isanbard Apr 19, 2013
5bd0767
Add some more stats for fast isel vs. SelectionDAG, w.r.t lowering fu…
eliben Apr 19, 2013
943baed
Don't run expensive -O2 and -O3 in tests.
Apr 19, 2013
9affd16
Keep coding stanard. Don't use "else if" after "return".
Apr 19, 2013
3abd23b
R600: Reorganize lit tests and document how they should be organized
tstellarAMD Apr 19, 2013
ae2a892
R600/SI: Use InstFlag for VOP3 modifier operands
tstellarAMD Apr 19, 2013
48b809e
R600: Add pattern for the BFI_INT instruction
tstellarAMD Apr 19, 2013
0ee1700
Use 'array_lengthof' as possible to avoid magic numbers
hliao2 Apr 19, 2013
6436227
Add support for index resources (for a SlotIndex) to be relinquished.
lhames Apr 19, 2013
bcb8136
PR14606: debug info imported_module support
dwblaikie Apr 19, 2013
41201ed
Revert "PR14606: debug info imported_module support"
echristo Apr 19, 2013
a7e3701
Revert 179826. Tests were worthless.
Apr 19, 2013
4521019
ARM: permit "sp" in ARM variants of MOVW/MOVT instructions
Apr 19, 2013
db5f927
Don't read one command past the end.
espindola Apr 19, 2013
e94e4ca
Attributes: Don't print trailing whitespace on the function attribute…
d0k Apr 19, 2013
baecbb8
Only run the tests in test/Object/ARM if we have ARM support.
espindola Apr 19, 2013
143d223
refactor the struct byte swapping to a helper function.
espindola Apr 19, 2013
d3af696
ARM: Permit "sp" in ARM variant of STREXD instructions
Apr 19, 2013
89ab4e4
[ms-inline asm] Cleanup the dot operator implementation.
Apr 19, 2013
eb733d2
ConstantFolding: ComputeMaskedBits wants the scalar size for vectors.
d0k Apr 19, 2013
fea1f8e
[ms-inline asm] Make this a hard error.
Apr 19, 2013
3031ac0
[ms-inline asm] Move this variable into the scope in which it is used.
Apr 19, 2013
d386843
[ms-inline asm] Remove these asserts. C++ variables that use namespace
Apr 19, 2013
f341dac
Add test to make sure that a int-to-ptr can be merged correctly.
isanbard Apr 19, 2013
e43624e
[ms-inline asm] Refactor the parsing of identifiers. No functional c…
Apr 19, 2013
8d99ec5
[mips] Fix InstAlias of XOR and OR macros. Set EmitAlias flag and change
ahatanak Apr 19, 2013
f530aff
[mips] First patch which adds support for micromips.
ahatanak Apr 19, 2013
76bb21b
Attempt to pacify this test for the buildbots.
Apr 19, 2013
4acef77
[ms-inline asm] Make code layout more canonical with iniline asm hand…
Apr 19, 2013
2f445be
Rename ClassType to the more accurate UnderlyingType and document its…
adrian-prantl Apr 19, 2013
32dc092
Reformat and nuke trailing whitespace.
echristo Apr 19, 2013
09b7981
80-col fixup.
echristo Apr 19, 2013
d717e20
LoopVectorizer: Use matcher from PatternMatch.h for the min/max patterns
aschwaighofer Apr 19, 2013
bb41803
Add a testcase to make sure we generate the proper compact unwind sec…
isanbard Apr 19, 2013
a317eb8
Make test slightly more readable.
isanbard Apr 19, 2013
8caffc1
Do not mangle in MS-way the globals with magic \001 in the name.
asl Apr 19, 2013
9c32678
Try explicitly setting the target triple to see if this gets it to pa…
isanbard Apr 19, 2013
7a7e83a
Remove COFFYAML::Relocation.
espindola Apr 19, 2013
03494e0
Use dbgs() consistently for -debug printouts
eliben Apr 19, 2013
a58d67a
Add an MRI::verifyUseLists() function.
stoklund Apr 19, 2013
87c1e42
Fix PPC optimizeCompareInstr swapped-sub argument handling
Apr 19, 2013
2a8bea7
ArrayRefize getMachineNode(). No functionality change.
hliao2 Apr 19, 2013
75299e3
Move TryToFoldFastISelLoad to FastISel, where it belongs. In general,…
eliben Apr 19, 2013
df0d185
Make variable match any name.
isanbard Apr 19, 2013
24a5f30
MergeFunc: Make pointer and integer types generate the same hash.
d0k Apr 19, 2013
97a62bf
[mips] Instruction selection patterns for DSP-ASE vector shifts.
ahatanak Apr 19, 2013
462123f
Simplify the code in FastISel::tryToFoldLoad, add an assertion and fi…
eliben Apr 19, 2013
69394f2
Test commit
stephenwlin Apr 20, 2013
f59a2a8
Remove COFFYAML::Header.
espindola Apr 20, 2013
da177ce
Small obj2yaml cleanups.
espindola Apr 20, 2013
22f3be9
Splitstack implementation for android
ILyoan Mar 13, 2013
c365956
Fix regiser states
ILyoan Mar 19, 2013
2acfa71
Implement the fixed stack segment attribute
pcwalton Apr 1, 2013
34c1ccc
Fix parsing LL files with fixedstacksegment attributes
erickt Apr 20, 2013
7892f43
Add fixedstacksegment to the vim syntax file
erickt Apr 20, 2013
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 8 additions & 8 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -91,13 +91,8 @@ set(LLVM_ALL_TARGETS
# List of targets with JIT support:
set(LLVM_TARGETS_WITH_JIT X86 PowerPC ARM Mips)

if( MSVC )
set(LLVM_TARGETS_TO_BUILD X86
CACHE STRING "Semicolon-separated list of targets to build, or \"all\".")
else( MSVC )
set(LLVM_TARGETS_TO_BUILD "all"
set(LLVM_TARGETS_TO_BUILD "all"
CACHE STRING "Semicolon-separated list of targets to build, or \"all\".")
endif( MSVC )

set(LLVM_EXPERIMENTAL_TARGETS_TO_BUILD ""
CACHE STRING "Semicolon-separated list of experimental targets to build.")
Expand Down Expand Up @@ -193,6 +188,9 @@ if( LLVM_USE_OPROFILE )
endif( NOT CMAKE_SYSTEM_NAME MATCHES "Linux" )
endif( LLVM_USE_OPROFILE )

set(LLVM_USE_SANITIZER "" CACHE STRING
"Define the sanitizer used to build binaries and tests.")

# Define an option controlling whether we should build for 32-bit on 64-bit
# platforms, where supported.
if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT WIN32 )
Expand Down Expand Up @@ -387,6 +385,10 @@ if( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -include llvm/Support/Solaris.h")
endif( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )

# Make sure we don't get -rdynamic in every binary. For those that need it,
# use set_target_properties(target PROPERTIES ENABLE_EXPORTS 1)
set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "")

include(AddLLVM)
include(TableGen)

Expand All @@ -412,8 +414,6 @@ add_subdirectory(utils/count)
add_subdirectory(utils/not)
add_subdirectory(utils/llvm-lit)
add_subdirectory(utils/yaml-bench)
add_subdirectory(utils/obj2yaml)
add_subdirectory(utils/yaml2obj)

add_subdirectory(projects)

Expand Down
6 changes: 5 additions & 1 deletion CODE_OWNERS.TXT
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ D: Gold plugin (tools/gold/*)
N: Chandler Carruth
E: chandlerc@gmail.com
E: chandlerc@google.com
D: Config, ADT, Support, inlining & related passse, SROA/mem2reg & related passes, CMake, library layering
D: Config, ADT, Support, inlining & related passes, SROA/mem2reg & related passes, CMake, library layering

N: Evan Cheng
E: evan.cheng@apple.com
Expand Down Expand Up @@ -125,3 +125,7 @@ D: R600 Backend
N: Andrew Trick
E: atrick@apple.com
D: IndVar Simplify, Loop Strength Reduction, Instruction Scheduling

N: Bill Wendling
E: wendling@apple.com
D: libLTO, IR Linker
9 changes: 8 additions & 1 deletion CREDITS.TXT
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,12 @@ D: The initial llvm-ar tool, converted regression testsuite to dejagnu
D: Modulo scheduling in the SparcV9 backend
D: Release manager (1.7+)

N: Sylvestre Ledru
E: sylvestre@debian.org
W: http://sylvesre.ledru.info/
D: Debian and Ubuntu packaging
D: Continous integration with jenkins

N: Andrew Lenharth
E: alenhar2@cs.uiuc.edu
W: http://www.lenharth.org/~andrewl/
Expand Down Expand Up @@ -423,7 +429,8 @@ D: Thread Local Storage implementation

N: Bill Wendling
E: wendling@apple.com
D: Bug fixes
D: Release manager
D: Bunches of stuff

N: Bob Wilson
E: bob.wilson@acm.org
Expand Down
2 changes: 1 addition & 1 deletion Makefile.rules
Original file line number Diff line number Diff line change
Expand Up @@ -1967,7 +1967,7 @@ endif
# CHECK: Running the test suite
###############################################################################

check::
check:: all
$(Verb) if test -d "$(PROJ_OBJ_ROOT)/test" ; then \
if test -f "$(PROJ_OBJ_ROOT)/test/Makefile" ; then \
$(EchoCmd) Running test suite ; \
Expand Down
1 change: 1 addition & 0 deletions README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,4 @@ documentation setup.

If you're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.

1 change: 1 addition & 0 deletions autoconf/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -1493,6 +1493,7 @@ AC_CHECK_HEADERS([sys/mman.h sys/param.h sys/resource.h sys/time.h sys/uio.h])
AC_CHECK_HEADERS([sys/types.h sys/ioctl.h malloc/malloc.h mach/mach.h])
AC_CHECK_HEADERS([valgrind/valgrind.h])
AC_CHECK_HEADERS([fenv.h])
AC_CHECK_DECLS([FE_ALL_EXCEPT, FE_INEXACT], [], [], [[#include <fenv.h>]])
if test "$LLVM_ENABLE_THREADS" -eq 1 && test "$ENABLE_PTHREADS" -eq 1 ; then
AC_CHECK_HEADERS(pthread.h,
AC_SUBST(HAVE_PTHREAD, 1),
Expand Down
3 changes: 3 additions & 0 deletions cmake/config-ix.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,9 @@ check_include_file(utime.h HAVE_UTIME_H)
check_include_file(valgrind/valgrind.h HAVE_VALGRIND_VALGRIND_H)
check_include_file(windows.h HAVE_WINDOWS_H)
check_include_file(fenv.h HAVE_FENV_H)
check_symbol_exists(FE_ALL_EXCEPT "fenv.h" HAVE_DECL_FE_ALL_EXCEPT)
check_symbol_exists(FE_INEXACT "fenv.h" HAVE_DECL_FE_INEXACT)

check_include_file(mach/mach.h HAVE_MACH_MACH_H)
check_include_file(mach-o/dyld.h HAVE_MACH_O_DYLD_H)

Expand Down
25 changes: 25 additions & 0 deletions cmake/modules/GetSVN.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# CMake project that writes Subversion revision information to a header.
#
# Input variables:
# FIRST_SOURCE_DIR - First source directory
# FIRST_REPOSITORY - The macro to define to the first revision number.
# SECOND_SOURCE_DIR - Second source directory
# SECOND_REPOSITORY - The macro to define to the second revision number.
# HEADER_FILE - The header file to write
include(FindSubversion)
if (Subversion_FOUND AND EXISTS "${FIRST_SOURCE_DIR}/.svn")
# Repository information for the first repository.
Subversion_WC_INFO(${FIRST_SOURCE_DIR} MY)
file(WRITE ${HEADER_FILE}.txt "#define ${FIRST_REPOSITORY} \"${MY_WC_REVISION}\"\n")

# Repository information for the second repository.
if (EXISTS "${SECOND_SOURCE_DIR}/.svn")
Subversion_WC_INFO(${SECOND_SOURCE_DIR} MY)
file(APPEND ${HEADER_FILE}.txt
"#define ${SECOND_REPOSITORY} \"${MY_WC_REVISION}\"\n")
endif ()

# Copy the file only if it has changed.
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different
${HEADER_FILE}.txt ${HEADER_FILE})
endif()
80 changes: 64 additions & 16 deletions cmake/modules/HandleLLVMOptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@ if( LLVM_ENABLE_ASSERTIONS )
# explicitly undefine it:
if( uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" )
add_definitions( -UNDEBUG )
# Also remove /D NDEBUG to avoid MSVC warnings about conflicting defines.
string (REGEX REPLACE "(^| )[/-]D *NDEBUG($| )" " "
CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
endif()
else()
if( NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" )
Expand Down Expand Up @@ -60,9 +63,9 @@ else(WIN32)
endif(WIN32)

function(add_flag_or_print_warning flag)
check_c_compiler_flag(${flag} C_SUPPORTS_${flag})
check_cxx_compiler_flag(${flag} CXX_SUPPORTS_${flag})
if (C_SUPPORTS_${flag} AND CXX_SUPPORTS_${flag})
check_c_compiler_flag(${flag} C_SUPPORTS_FLAG)
check_cxx_compiler_flag(${flag} CXX_SUPPORTS_FLAG)
if (C_SUPPORTS_FLAG AND CXX_SUPPORTS_FLAG)
message(STATUS "Building with ${flag}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}" PARENT_SCOPE)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${flag}" PARENT_SCOPE)
Expand All @@ -71,12 +74,27 @@ function(add_flag_or_print_warning flag)
endif()
endfunction()

function(append_if variable value condition)
if (${condition})
function(append value)
foreach(variable ${ARGN})
set(${variable} "${${variable}} ${value}" PARENT_SCOPE)
endforeach(variable)
endfunction()

function(append_if condition value)
if (${condition})
foreach(variable ${ARGN})
set(${variable} "${${variable}} ${value}" PARENT_SCOPE)
endforeach(variable)
endif()
endfunction()

macro(add_flag_if_supported flag)
check_c_compiler_flag(${flag} C_SUPPORTS_FLAG)
append_if(C_SUPPORTS_FLAG "${flag}" CMAKE_C_FLAGS)
check_cxx_compiler_flag(${flag} CXX_SUPPORTS_FLAG)
append_if(CXX_SUPPORTS_FLAG "${flag}" CMAKE_CXX_FLAGS)
endmacro()

if( LLVM_ENABLE_PIC )
if( XCODE )
# Xcode has -mdynamic-no-pic on by default, which overrides -fPIC. I don't
Expand All @@ -91,7 +109,7 @@ if( LLVM_ENABLE_PIC )
# MinGW warns if -fvisibility-inlines-hidden is used.
else()
check_cxx_compiler_flag("-fvisibility-inlines-hidden" SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG)
append_if(CMAKE_CXX_FLAGS "-fvisibility-inlines-hidden" SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG)
append_if(SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG "-fvisibility-inlines-hidden" CMAKE_CXX_FLAGS)
endif()
endif()
endif()
Expand Down Expand Up @@ -186,35 +204,65 @@ if( MSVC )
endif (LLVM_ENABLE_WERROR)
elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE )
if (LLVM_ENABLE_WARNINGS)
add_llvm_definitions( -Wall -W -Wno-unused-parameter -Wwrite-strings )
append("-Wall -W -Wno-unused-parameter -Wwrite-strings" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)

# Turn off missing field initializer warnings for gcc to avoid noise from
# false positives with empty {}. Turn them on otherwise (they're off by
# default for clang).
check_cxx_compiler_flag("-Wmissing-field-initializers" CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG)
if (CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG)
if (CMAKE_COMPILER_IS_GNUCXX)
add_llvm_definitions( -Wno-missing-field-initializers )
append("-Wno-missing-field-initializers" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
else()
add_llvm_definitions( -Wmissing-field-initializers )
append("-Wmissing-field-initializers" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
endif()
endif()

if (LLVM_ENABLE_PEDANTIC)
add_llvm_definitions( -pedantic -Wno-long-long )
endif (LLVM_ENABLE_PEDANTIC)
append_if(LLVM_ENABLE_PEDANTIC "-pedantic -Wno-long-long" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
check_cxx_compiler_flag("-Werror -Wcovered-switch-default" CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG)
append_if(CMAKE_CXX_FLAGS "-Wcovered-switch-default" CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG)
append_if(CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG "-Wcovered-switch-default" CMAKE_CXX_FLAGS)
check_c_compiler_flag("-Werror -Wcovered-switch-default" C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG)
append_if(CMAKE_C_FLAGS "-Wcovered-switch-default" C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG)
append_if(CMAKE_CXX_FLAGS "-Wno-uninitialized" USE_NO_UNINITIALIZED)
append_if(CMAKE_CXX_FLAGS "-Wno-maybe-uninitialized" USE_NO_MAYBE_UNINITIALIZED)
append_if(C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG "-Wcovered-switch-default" CMAKE_C_FLAGS)
append_if(USE_NO_UNINITIALIZED "-Wno-uninitialized" CMAKE_CXX_FLAGS)
append_if(USE_NO_MAYBE_UNINITIALIZED "-Wno-maybe-uninitialized" CMAKE_CXX_FLAGS)
check_cxx_compiler_flag("-Werror -Wnon-virtual-dtor" CXX_SUPPORTS_NON_VIRTUAL_DTOR_FLAG)
append_if(CXX_SUPPORTS_NON_VIRTUAL_DTOR_FLAG "-Wnon-virtual-dtor" CMAKE_CXX_FLAGS)
endif (LLVM_ENABLE_WARNINGS)
if (LLVM_ENABLE_WERROR)
add_llvm_definitions( -Werror )
endif (LLVM_ENABLE_WERROR)
endif( MSVC )

macro(append_common_sanitizer_flags)
# Append -fno-omit-frame-pointer and turn on debug info to get better
# stack traces.
add_flag_if_supported("-fno-omit-frame-pointer")
if (NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "DEBUG" AND
NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "RELWITHDEBINFO")
add_flag_if_supported("-gline-tables-only")
endif()
endmacro()

# Turn on sanitizers if necessary.
if(LLVM_USE_SANITIZER)
if (LLVM_ON_UNIX)
if (LLVM_USE_SANITIZER STREQUAL "Address")
append_common_sanitizer_flags()
add_flag_or_print_warning("-fsanitize=address")
elseif (LLVM_USE_SANITIZER MATCHES "Memory(WithOrigins)?")
append_common_sanitizer_flags()
add_flag_or_print_warning("-fsanitize=memory")
if(LLVM_USE_SANITIZER STREQUAL "MemoryWithOrigins")
add_flag_or_print_warning("-fsanitize-memory-track-origins")
endif()
else()
message(WARNING "Unsupported value of LLVM_USE_SANITIZER: ${LLVM_USE_SANITIZER}")
endif()
else()
message(WARNING "LLVM_USE_SANITIZER is not supported on this platform.")
endif()
endif()

add_llvm_definitions( -D__STDC_CONSTANT_MACROS )
add_llvm_definitions( -D__STDC_FORMAT_MACROS )
add_llvm_definitions( -D__STDC_LIMIT_MACROS )
Loading