Skip to content

Commit 73877b7

Browse files
committed
Updating branches/google/testing to r297704
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/google/testing@298153 91177308-0d34-0410-b5e6-96231b3b80d8
2 parents 5a7848f + 53a96f2 commit 73877b7

File tree

5,877 files changed

+704721
-150257
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

5,877 files changed

+704721
-150257
lines changed

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@
2121
#OS X specific files.
2222
.DS_store
2323

24+
# Nested build directory
25+
/build
26+
2427
#==============================================================================#
2528
# Explicit files to ignore (only matches one).
2629
#==============================================================================#
@@ -58,6 +61,8 @@ tools/lld
5861
tools/llgo
5962
# Polly, which is tracked independently.
6063
tools/polly
64+
# avrlit, which is tracked independently.
65+
tools/avrlit
6166
# Sphinx build tree, if building in-source dir.
6267
docs/_build
6368
# VSCode config files.

CMakeLists.txt

Lines changed: 46 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ if(POLICY CMP0057)
2020
endif()
2121

2222
if(NOT DEFINED LLVM_VERSION_MAJOR)
23-
set(LLVM_VERSION_MAJOR 4)
23+
set(LLVM_VERSION_MAJOR 5)
2424
endif()
2525
if(NOT DEFINED LLVM_VERSION_MINOR)
2626
set(LLVM_VERSION_MINOR 0)
@@ -56,17 +56,20 @@ endif()
5656

5757
# This should only apply if you are both on an Apple host, and targeting Apple.
5858
if(CMAKE_HOST_APPLE AND APPLE)
59-
if(NOT CMAKE_XCRUN)
60-
find_program(CMAKE_XCRUN NAMES xcrun)
61-
endif()
62-
if(CMAKE_XCRUN)
63-
execute_process(COMMAND ${CMAKE_XCRUN} -find libtool
64-
OUTPUT_VARIABLE CMAKE_LIBTOOL
65-
OUTPUT_STRIP_TRAILING_WHITESPACE)
66-
endif()
59+
# if CMAKE_LIBTOOL is not set, try and find it with xcrun or find_program
60+
if(NOT CMAKE_LIBTOOL)
61+
if(NOT CMAKE_XCRUN)
62+
find_program(CMAKE_XCRUN NAMES xcrun)
63+
endif()
64+
if(CMAKE_XCRUN)
65+
execute_process(COMMAND ${CMAKE_XCRUN} -find libtool
66+
OUTPUT_VARIABLE CMAKE_LIBTOOL
67+
OUTPUT_STRIP_TRAILING_WHITESPACE)
68+
endif()
6769

68-
if(NOT CMAKE_LIBTOOL OR NOT EXISTS CMAKE_LIBTOOL)
69-
find_program(CMAKE_LIBTOOL NAMES libtool)
70+
if(NOT CMAKE_LIBTOOL OR NOT EXISTS CMAKE_LIBTOOL)
71+
find_program(CMAKE_LIBTOOL NAMES libtool)
72+
endif()
7073
endif()
7174

7275
get_property(languages GLOBAL PROPERTY ENABLED_LANGUAGES)
@@ -132,18 +135,6 @@ foreach(proj ${LLVM_ENABLE_PROJECTS})
132135
endif()
133136
endforeach()
134137

135-
# The following only works with the Ninja generator in CMake >= 3.0.
136-
set(LLVM_PARALLEL_COMPILE_JOBS "" CACHE STRING
137-
"Define the maximum number of concurrent compilation jobs.")
138-
if(LLVM_PARALLEL_COMPILE_JOBS)
139-
if(NOT CMAKE_MAKE_PROGRAM MATCHES "ninja")
140-
message(WARNING "Job pooling is only available with Ninja generators.")
141-
else()
142-
set_property(GLOBAL APPEND PROPERTY JOB_POOLS compile_job_pool=${LLVM_PARALLEL_COMPILE_JOBS})
143-
set(CMAKE_JOB_POOL_COMPILE compile_job_pool)
144-
endif()
145-
endif()
146-
147138
# Build llvm with ccache if the package is present
148139
set(LLVM_CCACHE_BUILD OFF CACHE BOOL "Set to ON for a ccache enabled build")
149140
if(LLVM_CCACHE_BUILD)
@@ -178,21 +169,12 @@ if(LLVM_DEPENDENCY_DEBUGGING)
178169
endif()
179170
endif()
180171

181-
option(LLVM_BUILD_GLOBAL_ISEL "Experimental: Build GlobalISel" OFF)
172+
option(LLVM_BUILD_GLOBAL_ISEL "Experimental: Build GlobalISel" ON)
182173
if(LLVM_BUILD_GLOBAL_ISEL)
183174
add_definitions(-DLLVM_BUILD_GLOBAL_ISEL)
184175
endif()
185176

186-
set(LLVM_PARALLEL_LINK_JOBS "" CACHE STRING
187-
"Define the maximum number of concurrent link jobs.")
188-
if(LLVM_PARALLEL_LINK_JOBS)
189-
if(NOT CMAKE_MAKE_PROGRAM MATCHES "ninja")
190-
message(WARNING "Job pooling is only available with Ninja generators.")
191-
else()
192-
set_property(GLOBAL APPEND PROPERTY JOB_POOLS link_job_pool=${LLVM_PARALLEL_LINK_JOBS})
193-
set(CMAKE_JOB_POOL_LINK link_job_pool)
194-
endif()
195-
endif()
177+
option(LLVM_ENABLE_DAGISEL_COV "Debug: Prints tablegen patterns that were used for selecting" OFF)
196178

197179
# Add path for custom modules
198180
set(CMAKE_MODULE_PATH
@@ -414,9 +396,6 @@ option(LLVM_ENABLE_EXPENSIVE_CHECKS "Enable expensive checks" OFF)
414396
set(LLVM_ABI_BREAKING_CHECKS "WITH_ASSERTS" CACHE STRING
415397
"Enable abi-breaking checks. Can be WITH_ASSERTS, FORCE_ON or FORCE_OFF.")
416398

417-
option(LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING
418-
"Disable abi-breaking checks mismatch detection at link-tim." OFF)
419-
420399
option(LLVM_FORCE_USE_OLD_HOST_TOOLCHAIN
421400
"Set to ON to force using an old, unsupported host toolchain." OFF)
422401

@@ -737,6 +716,30 @@ configure_file(
737716
${LLVM_MAIN_INCLUDE_DIR}/llvm/Support/DataTypes.h.cmake
738717
${LLVM_INCLUDE_DIR}/llvm/Support/DataTypes.h)
739718

719+
# Add target for generating source rpm package.
720+
set(LLVM_SRPM_USER_BINARY_SPECFILE ${CMAKE_CURRENT_SOURCE_DIR}/llvm.spec.in
721+
CACHE FILEPATH ".spec file to use for srpm generation")
722+
set(LLVM_SRPM_BINARY_SPECFILE ${CMAKE_CURRENT_BINARY_DIR}/llvm.spec)
723+
set(LLVM_SRPM_DIR "${CMAKE_CURRENT_BINARY_DIR}/srpm")
724+
725+
# SVN_REVISION and GIT_COMMIT get set by the call to add_version_info_from_vcs.
726+
# DUMMY_VAR contains a version string which we don't care about.
727+
add_version_info_from_vcs(DUMMY_VAR)
728+
if ( SVN_REVISION )
729+
set(LLVM_RPM_SPEC_REVISION "r${SVN_REVISION}")
730+
elseif ( GIT_COMMIT )
731+
set (LLVM_RPM_SPEC_REVISION "g${GIT_COMMIT}")
732+
endif()
733+
734+
configure_file(
735+
${LLVM_SRPM_USER_BINARY_SPECFILE}
736+
${LLVM_SRPM_BINARY_SPECFILE} @ONLY)
737+
738+
add_custom_target(srpm
739+
COMMAND cpack -G TGZ --config CPackSourceConfig.cmake -B ${LLVM_SRPM_DIR}/SOURCES
740+
COMMAND rpmbuild -bs --define '_topdir ${LLVM_SRPM_DIR}' ${LLVM_SRPM_BINARY_SPECFILE})
741+
742+
740743
# They are not referenced. See set_output_directory().
741744
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/bin )
742745
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} )
@@ -878,7 +881,7 @@ if( LLVM_INCLUDE_TESTS )
878881
endif()
879882
add_subdirectory(test)
880883
add_subdirectory(unittests)
881-
if (MSVC)
884+
if (WIN32)
882885
# This utility is used to prevent crashing tests from calling Dr. Watson on
883886
# Windows.
884887
add_subdirectory(utils/KillTheDoctor)
@@ -978,3 +981,8 @@ if(LLVM_DISTRIBUTION_COMPONENTS)
978981
endif()
979982
endforeach()
980983
endif()
984+
985+
# This allows us to deploy the Universal CRT DLLs by passing -DCMAKE_INSTALL_UCRT_LIBRARIES=ON to CMake
986+
if (MSVC)
987+
include(InstallRequiredSystemLibraries)
988+
endif()

CODE_OWNERS.TXT

Lines changed: 17 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,9 @@ what goes in or not.
55

66
The list is sorted by surname and formatted to allow easy grepping and
77
beautification by scripts. The fields are: name (N), email (E), web-address
8-
(W), PGP key ID and fingerprint (P), description (D), and snail-mail address
9-
(S). Each entry should contain at least the (N), (E) and (D) fields.
10-
11-
N: Joe Abbey
12-
E: jabbey@arxan.com
13-
D: LLVM Bitcode (lib/Bitcode/* include/llvm/Bitcode/*)
8+
(W), PGP key ID and fingerprint (P), description (D), snail-mail address
9+
(S) and (I) IRC handle. Each entry should contain at least the (N), (E) and
10+
(D) fields.
1411

1512
N: Justin Bogner
1613
E: mail@justinbogner.com
@@ -21,6 +18,11 @@ N: Alex Bradbury
2118
E: asb@lowrisc.org
2219
D: RISC-V backend (lib/Target/RISCV/*)
2320

21+
N: Matthias Braun
22+
E: matze@braunis.de
23+
I: MatzeB
24+
D: Instruction Scheduling
25+
2426
N: Chandler Carruth
2527
E: chandlerc@gmail.com
2628
E: chandlerc@google.com
@@ -34,6 +36,10 @@ N: Eric Christopher
3436
E: echristo@gmail.com
3537
D: Debug Information, inline assembly
3638

39+
N: Andrey Churbanov
40+
E: andrey.churbanov@intel.com
41+
D: OpenMP runtime library
42+
3743
N: Greg Clayton
3844
E: gclayton@apple.com
3945
D: LLDB
@@ -48,7 +54,7 @@ D: libc++
4854

4955
N: Peter Collingbourne
5056
E: peter@pcc.me.uk
51-
D: llgo, libLTO (lib/LTO/* tools/lto/*)
57+
D: llgo, libLTO (lib/LTO/* tools/lto/*), LLVM Bitcode (lib/Bitcode/* include/llvm/Bitcode/*)
5258

5359
N: Quentin Colombet
5460
E: qcolombet@apple.com
@@ -96,7 +102,7 @@ D: MCJIT, RuntimeDyld and JIT event listeners, Orcish Warchief
96102

97103
N: Teresa Johnson
98104
E: tejohnson@google.com
99-
D: Gold plugin (tools/gold/*)
105+
D: Gold plugin (tools/gold/*) and IR Linker
100106

101107
N: Galina Kistanova
102108
E: gkistanova@gmail.com
@@ -132,7 +138,7 @@ E: david.majnemer@gmail.com
132138
D: IR Constant Folder, InstCombine
133139

134140
N: Dylan McKay
135-
E: dylanmckay34@gmail.com
141+
E: me@dylanmckay.io
136142
D: AVR Backend
137143

138144
N: Tim Northover
@@ -180,9 +186,8 @@ E: alexei.starovoitov@gmail.com
180186
D: BPF backend
181187

182188
N: Tom Stellard
183-
E: thomas.stellard@amd.com
184-
E: mesa-dev@lists.freedesktop.org
185-
D: Release manager for the 3.5 and 3.6 branches, R600 Backend, libclc
189+
E: tstellar@redhat.com
190+
D: Stable release management (x.y.[1-9] releases), AMDGPU Backend, libclc
186191

187192
N: Evgeniy Stepanov
188193
E: eugenis@google.com
@@ -192,26 +197,14 @@ N: Craig Topper
192197
E: craig.topper@gmail.com
193198
D: X86 Backend
194199

195-
N: Andrew Trick
196-
E: atrick@apple.com
197-
D: Instruction Scheduling
198-
199200
N: Ulrich Weigand
200201
E: uweigand@de.ibm.com
201202
D: SystemZ Backend
202203

203-
N: Teresa Johnson
204-
E: tejohnson@google.com
205-
D: IR Linker
206-
207204
N: Hans Wennborg
208205
E: hans@chromium.org
209206
D: Release management (x.y.0 releases)
210207

211208
N: whitequark
212209
E: whitequark@whitequark.org
213210
D: OCaml bindings
214-
215-
N: Andrey Churbanov
216-
E: andrey.churbanov@intel.com
217-
D: OpenMP runtime library

CREDITS.TXT

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -457,6 +457,10 @@ N: Adam Treat
457457
E: manyoso@yahoo.com
458458
D: C++ bugs filed, and C++ front-end bug fixes.
459459

460+
N: Andrew Trick
461+
E: atrick@apple.com
462+
D: Instruction Scheduling, ...
463+
460464
N: Lauro Ramos Venancio
461465
E: lauro.venancio@indt.org.br
462466
D: ARM backend improvements

LICENSE.TXT

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ LLVM Release License
44
University of Illinois/NCSA
55
Open Source License
66

7-
Copyright (c) 2003-2016 University of Illinois at Urbana-Champaign.
7+
Copyright (c) 2003-2017 University of Illinois at Urbana-Champaign.
88
All rights reserved.
99

1010
Developed by:

README.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,4 @@ documentation setup.
1515

1616
If you are writing a package for LLVM, see docs/Packaging.rst for our
1717
suggestions.
18+

RELEASE_TESTERS.TXT

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ E: diana.picus@linaro.org
5151
T: AArch64
5252
O: Linux
5353

54-
N: Vasileios Kalintiris
55-
E: Vasileios.Kalintiris@imgtec.com
54+
N: Simon Dardis
55+
E: simon.dardis@imgtec.com
5656
T: MIPS
5757
O: Linux

bindings/go/llvm/DIBuilderBindings.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ LLVMMetadataRef LLVMDIBuilderCreateCompileUnit(LLVMDIBuilderRef Dref,
4040
int Optimized, const char *Flags,
4141
unsigned RuntimeVersion) {
4242
DIBuilder *D = unwrap(Dref);
43-
return wrap(D->createCompileUnit(Lang, File, Dir, Producer, Optimized, Flags,
44-
RuntimeVersion));
43+
return wrap(D->createCompileUnit(Lang, D->createFile(File, Dir), Producer,
44+
Optimized, Flags, RuntimeVersion));
4545
}
4646

4747
LLVMMetadataRef LLVMDIBuilderCreateFile(LLVMDIBuilderRef Dref, const char *File,
@@ -119,7 +119,8 @@ LLVMMetadataRef LLVMDIBuilderCreatePointerType(LLVMDIBuilderRef Dref,
119119
const char *Name) {
120120
DIBuilder *D = unwrap(Dref);
121121
return wrap(D->createPointerType(unwrap<DIType>(PointeeType), SizeInBits,
122-
AlignInBits, Name));
122+
AlignInBits, /* DWARFAddressSpace */ None,
123+
Name));
123124
}
124125

125126
LLVMMetadataRef

bindings/go/llvm/transforms_pmbuilder.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,26 @@ func (pmb PassManagerBuilder) PopulateFunc(pm PassManager) {
4343
C.LLVMPassManagerBuilderPopulateFunctionPassManager(pmb.C, pm.C)
4444
}
4545

46+
func (pmb PassManagerBuilder) PopulateLTOPassManager(pm PassManager, internalize bool, runInliner bool) {
47+
C.LLVMPassManagerBuilderPopulateLTOPassManager(pmb.C, pm.C, boolToLLVMBool(internalize), boolToLLVMBool(runInliner))
48+
}
49+
4650
func (pmb PassManagerBuilder) Dispose() {
4751
C.LLVMPassManagerBuilderDispose(pmb.C)
4852
}
53+
54+
func (pmb PassManagerBuilder) SetDisableUnitAtATime(val bool) {
55+
C.LLVMPassManagerBuilderSetDisableUnitAtATime(pmb.C, boolToLLVMBool(val))
56+
}
57+
58+
func (pmb PassManagerBuilder) SetDisableUnrollLoops(val bool) {
59+
C.LLVMPassManagerBuilderSetDisableUnrollLoops(pmb.C, boolToLLVMBool(val))
60+
}
61+
62+
func (pmb PassManagerBuilder) SetDisableSimplifyLibCalls(val bool) {
63+
C.LLVMPassManagerBuilderSetDisableSimplifyLibCalls(pmb.C, boolToLLVMBool(val))
64+
}
65+
66+
func (pmb PassManagerBuilder) UseInlinerWithThreshold(threshold uint) {
67+
C.LLVMPassManagerBuilderUseInlinerWithThreshold(pmb.C, C.uint(threshold))
68+
}

0 commit comments

Comments
 (0)