Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

__unique_stable_name implementation. #16

Closed
wants to merge 2,856 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2856 commits
Select commit Hold shift + click to select a range
67e9c7e
[DeLICM] Use polly::singleton to allow empty result.
Meinersbur May 21, 2019
264a200
[cmake] Don't use VERSION_GREATER_EQUAL in cmake versions prior to 3.72.
donhinton May 21, 2019
c864c59
Fix for sphinx bot warning
PiJoules May 21, 2019
d907dd3
Fix register coalescer failure to prune value
rampitec May 21, 2019
97641d3
[OpenMP][libomptarget] Enable requires flags for target libraries.
doru1004 May 21, 2019
79d3226
Fix LLDB warnings when compiling with Clang 8.0
aganea May 21, 2019
81d6a60
[DebugInfo] Don't emit checksums when compiling a preprocessed CPP
aganea May 21, 2019
f21bdd9
Fix test to put its outputs into the temp directory.
zygoloid May 21, 2019
f32b10b
[OpenMP] Add support for registering requires directives with the run…
doru1004 May 21, 2019
2e38d71
[PowerPC][NFC] Add a tests for Reordering CSR reloads in epilogue to …
May 21, 2019
0e7d48c
[c++20] P0780R2: Support pack-expansion of init-captures.
zygoloid May 21, 2019
48bd2b0
Fix test failures after r361278 on non-Darwin platforms and when
zygoloid May 21, 2019
eb9a7f1
Remove unicode character from test
PiJoules May 21, 2019
81613fb
[NFC][X86][AArch64] Add tests for sinking of add/sub by constant thro…
LebedevRI May 21, 2019
399eedb
[asan] Replace assignments with internal_memcpy ErrorDescription
vitalybuka May 21, 2019
28c8026
[asan] clang-format parent patch
vitalybuka May 21, 2019
611b9c3
Move csr-save-restore-order.ll to the right place
May 21, 2019
cd91f27
build: enable CMake policy 0077
compnerd May 21, 2019
e237df2
[NFC][InstCombine] Add unary FNeg tests to X86/x86-avx512.ll
mcinally May 21, 2019
09ae4da
[OpenMP] Add implementation to two OMPT API routines
jpeyton52 May 21, 2019
7afe7d3
[Test] Fix conflicting test names.
JDevlieghere May 21, 2019
c120981
[NFC][InstCombine] Add unary fneg tests to operand-complexity.ll.
mcinally May 21, 2019
e228c14
Let -static-pie win if it is specified along with -pie or -static.
May 21, 2019
0727a72
[libFuzzer] Reduce flakiness of merge-sigusr.test.
morehouse May 21, 2019
d1cc4b0
[Driver] Verify GCCInstallation is valid
nickdesaulniers May 21, 2019
1e4b398
[X86] Add large integer comparison tests for PR41971; NFC
nikic May 21, 2019
92efe99
[CommandInterpreter] Fix SkipAppInitFiles setter
JDevlieghere May 21, 2019
e5fb775
[InstCombine] add more tests for shuffle folding; NFC
rotateright May 21, 2019
820af59
[NFC][Thumb2] Autogenerate thumb2-ldr_pre.ll test
LebedevRI May 21, 2019
d782bd5
[NFC][X86] Autogenerate ragreedy-hoist-spill.ll test
LebedevRI May 21, 2019
19c1818
[NFC][AMDGPU] Autogenerate llvm.amdgcn.s.barrier.ll test
LebedevRI May 21, 2019
324fb4a
[FileSystem] Fix regression in FileSystem::Resolve
JDevlieghere May 21, 2019
31cb83e
[ORC] Guarantee unique JITDylib names in lli, add usage notes to crea…
lhames May 21, 2019
dbd4f2e
Rename identifiers to spell out analyze; NFC.
AaronBallman May 21, 2019
75f17fe
[libFuzzer] Ignore exit status of wait in merge-sigusr.test.
morehouse May 21, 2019
f03cdfa
[WebAssembly] Add the signature for the new llround builtin function
May 21, 2019
71c863f
Refactor: split Uninitialized state on APValue into an "Absent" state
zygoloid May 21, 2019
83b02d3
[c++20] P1330R0: permit simple-assignments that change the active member
zygoloid May 21, 2019
a58b022
AMDGPU: Fix not marking new gfx10 SGPRs as CSRs
arsenm May 21, 2019
b74d066
AMDGPU: Assume call pseudos are convergent
arsenm May 21, 2019
f93dd10
AMDGPU: Add some tests for inlineasm behavior
arsenm May 21, 2019
fb405e7
AMDGPU: Assume calls read exec
arsenm May 21, 2019
8996170
Fix target property to make BUILD_SHARED_LIBS work
llvm-beanz May 21, 2019
eeeed31
[PragmaHandler] Expose `#pragma` location
jdenny-ornl May 21, 2019
beba938
[libFuzzer] Kill by session ID in merge-sigusr.test.
morehouse May 21, 2019
5f870f5
[Symbol] Remove dead code
bulbazord May 22, 2019
34a0b08
[InstCombine] fold shuffles of insert_subvectors
rotateright May 22, 2019
be70a0c
[libFuzzer] Sleep after process exits in merge-sigusr.test.
morehouse May 22, 2019
ee5efac
[Analysis] Link library dependencies to Analysis plugins
petrhosek May 22, 2019
0d0fe70
[Docs] fix formatting for bullet list; NFC
rotateright May 22, 2019
effbbba
[X86] [CET] Deal with return-twice function such as vfork, setjmp when
phoebewang May 22, 2019
ef1afe0
[Docs] Increase Doxygen cache size
donhinton May 22, 2019
986f46a
[clang-tidy] remove default header-filter for run-clang-tidy
donhinton May 22, 2019
890865c
[docs] Fix troff macro (.F1 -> .Fl) in ld.lld.1
MaskRay May 22, 2019
83206f3
[PowerPC] [ISEL] select x-form instruction for unaligned offset
chenzheng1030 May 22, 2019
b879a0b
[PowerPC] use meaningful name for displacement form aligned with x-fo…
chenzheng1030 May 22, 2019
304d5ba
Speculative fix for std stream destruction order on Windows.
EricWF May 22, 2019
b676c26
[NFC] Remove a blank line (test commit)
nuta May 22, 2019
49f80ff
Simplify the logic to instantiate Symbols. Should be NFC.
rui314 May 22, 2019
1ec133e
Properly categorize llvm-objdump options
May 22, 2019
0d0162e
[X86] Don't compare i128 through vector if construction not cheap (PR…
nikic May 22, 2019
5b817c4
Fixed a -Wunused-variable warning when assertions are disabled
gribozavr May 22, 2019
5a3bbed
[AArch64] Subtarget crypto extension defaults
May 22, 2019
b45c020
[PPC64] Parse -elfv1 -elfv2 when specified on target triple
MaskRay May 22, 2019
6ac150d
[MIR] Add simple PRE pass to MachineCSE
anton-afanasyev May 22, 2019
ffb0bf0
[Sanitizer] Add interceptor for wcsdup
labath May 22, 2019
395b99c
Delete unnecessary copy ctors
MaskRay May 22, 2019
027ddd1
[ELF] Improve error message for relocations to symbols defined in dis…
MaskRay May 22, 2019
0f8186a
DWARF: Introduce DWARFTypeUnit class
labath May 22, 2019
df8734b
DWARFDebugInfoEntry: remove unused variable
labath May 22, 2019
e3b9bb7
Add AST logging
May 22, 2019
77993c6
[PPC64] Fix PPC64TargetInfo after D61950
MaskRay May 22, 2019
58af636
Copy symbol length when we replace a symbol.
rui314 May 22, 2019
9bb1242
[PPC64] Fix PPC64TargetInfo ABI on clang side after D61950
MaskRay May 22, 2019
7a08105
Re-land r361257 "[MergeICmps][NFC] Make BCEAtom move-only.""
legrosbuffle May 22, 2019
b3d0510
[llvm-dlltool] Respect NONAME keyword
mstorsjo May 22, 2019
35a0e64
[Driver][Windows] Add dependent lib argument for -fprofile-generate a…
rgal May 22, 2019
a6144e4
[TargetMachine] error message unsupported code model
May 22, 2019
caaa189
[VirtualFileSystem] Fix uninitialized variable warning. NFCI.
RKSimon May 22, 2019
885db16
[ARM][AArch64] Fix incorrect handling of alignment in va_arg code gen…
john-brawn-arm May 22, 2019
9c06401
DWARF: Add debug_ranges/rnglists tests
labath May 22, 2019
9534d92
Mark tests from r361278 as unsupported on Windows.
rgal May 22, 2019
7b4adc0
[Hexagon] assert getRegisterBitWidth returns non-zero value. NFCI.
RKSimon May 22, 2019
aa3d779
[Frontend] Return an error on bad inputs to PrecompiledPreabmle
ilya-biryukov May 22, 2019
36b38bf
Revert r361148 "[Syntax] Introduce TokenBuffer, start clangToolingSyn…
rgal May 22, 2019
3c08b7a
Clang-formatting the header in advance of other planned changes; NFC.
AaronBallman May 22, 2019
712283b
[CGOpenMPRuntime] emitX86DeclareSimdFunction - assert simdlen/cdtsize…
RKSimon May 22, 2019
d5eb797
[NFC][SystemZ] Autogenerate alloca-03.ll test to make test changes mo…
LebedevRI May 22, 2019
0b8f36f
UpdateTestChecks: sparc march handling
LebedevRI May 22, 2019
7e04dca
[OpenCL] Support pipe keyword in C++ mode
svenvh May 22, 2019
03548dd
Added a dot at the end of comment
kwk May 22, 2019
d0de44b
[llvm-objcopy] Tidy up error messages
jh7370 May 22, 2019
ea7c3c2
[llvm-exegesis] Move native target initialization code to a separate …
legrosbuffle May 22, 2019
005517a
[AMDGPU][MC] Corrected parsing of op_sel* and neg_* modifiers
dpreobra May 22, 2019
327eab7
LoopVectorizationCostModel::selectInterleaveCount - assert we have a …
RKSimon May 22, 2019
6d13d6c
[clangd] improve help message for limit-results
kadircet May 22, 2019
996035a
gn build: Merge r361377
nico May 22, 2019
7b4c527
[NFC][X86][AArch64] Rewrite sink-addsub-of-const.ll tests to have ful…
LebedevRI May 22, 2019
61d4d2f
Reland r361148 with a fix to the buildbot failure.
ilya-biryukov May 22, 2019
99bc13e
[LibTooling] Update Transformer to use RangeSelector instead of NodeP…
ymand May 22, 2019
fc734fc
[mips] Replace multiple `-check-prefix` by single `-check-prefixes`. NFC
atanasyan May 22, 2019
6f01fc5
[mips] Use GNU-style output to make tests smaller. NFC
atanasyan May 22, 2019
f4cdd66
[llvm-objdump] Dump inline relocations if the relocated section is sp…
MaskRay May 22, 2019
e600d29
[NFC][X86] Autogenerate negative-offset.ll test
LebedevRI May 22, 2019
1ab18ae
[NFC][ARM] Autogenerate addsubcarry-promotion.ll test
LebedevRI May 22, 2019
d533d7b
[NFC][ARM] addsubcarry-promotion.ll: whoops - replace '.' with '-' in…
LebedevRI May 22, 2019
6c72ddb
Unbreak non-PIC builds after r361340/D62174
davezarzycki May 22, 2019
bf4eae5
Combine two if cases because the second one is never reached.
amykhuang May 22, 2019
e09145d
[IR] allow fast-math-flags on select of FP values
rotateright May 22, 2019
d7e9022
llvm-undname: Fix an assert-on-invalid, found by oss-fuzz
nico May 22, 2019
4fc3bc0
[TargetLowering] Add blank line (test commit)
kees May 22, 2019
99c5eb2
[TargetLowering] Extend bool args to inline-asm according to getBoole…
kees May 22, 2019
1acee7b
MC: Allow getMaxInstLength to depend on the subtarget
arsenm May 22, 2019
f393583
AMDGPU: Move disassembler support check to constructor
arsenm May 22, 2019
a88dd3e
[libFuzzer] Ignore synthetic exceptions on Fuchsia
petrhosek May 22, 2019
54264cc
Fixed third issue reported in https://bugs.llvm.org/show_bug.cgi?id=4…
AndreyChurbanov May 22, 2019
e11a570
[NFC][X86][AArch64] Add tests for missing (x - y) + -1 -> not(y) + …
LebedevRI May 22, 2019
df7af04
Disable EHFrameSupport in JITLink/RuntimeDyld on AIX
xingxue-ibm May 22, 2019
25fa2e6
Fixed a -Wunused-variable warning when assertions are disabled
gribozavr May 22, 2019
5f27f3c
[EditLine] Rewrite GetHistoryFilePath
JDevlieghere May 22, 2019
0454b95
[LibTooling] Update Stencil to use RangeSelector
ymand May 22, 2019
a2a4daa
[libcxx][test] Fix order checking in some more unordered_multimap tests
ldionne May 22, 2019
9da7303
[NFC][InstCombine] Add unary fneg tests to maxnum.ll/minnum.ll
mcinally May 22, 2019
1827e09
[PGO][CHR] Speed up following long use-def chains.
hjyamauchi May 22, 2019
2386333
[DebugInfo][AArch64] Recognise target specific instruction as mov instr
avl-llvm May 22, 2019
e1c225a
[clang-tidy] Add support for writing a check as a Transformer rewrite…
ymand May 22, 2019
964e550
gn build: Fix check-clangd target after r359825
nico May 22, 2019
831d569
Add DWARFTypeUnit to the Xcode project.
jimingham May 22, 2019
a9dbfdc
[OPENMP][NVPTX]Fix barriers and parallel level counters, NFC.
alexey-bataev May 22, 2019
dfbebd0
[X86] Add more icelake model numbers to getHostCPUName.
topperc May 22, 2019
a68ec21
[X86] Add more icelake model numbers to compiler-rt implementation of…
topperc May 22, 2019
7de97a8
Part of P1091R3: permit structured bindings to be declared 'static' and
zygoloid May 22, 2019
b0c79d0
[X86][InstCombine] Remove InstCombine code that turns X86 round intri…
topperc May 22, 2019
f09d813
Re-land r361206 "[COFF] Store alignment in log2 form, NFC"
rnk May 22, 2019
695d85a
[asan] Fix debug asan build link error
rnk May 22, 2019
ecf8b87
Modules: Code generation of enum constants for merged enum definitions
dwblaikie May 22, 2019
de1951d
Add back --sysroot support for darwin header search.
jyknight May 22, 2019
a653195
Reverted r361134 because of a failing test left unattended for a long…
gkistanova May 22, 2019
34e727f
[X86] Explcitly disable VEXTRACT instruction matching for an immediat…
topperc May 22, 2019
23b95ce
[runtimes] Move libunwind, libc++abi and libc++ to lib/$target/c++ an…
petrhosek May 22, 2019
52d0dbb
Add some notes on immutability and faithfulness to the internals manual.
zygoloid May 22, 2019
49790fc
TableGen: Handle nontrivial foreach range bounds
arsenm May 22, 2019
6339314
Add a HowToUseLLJIT example project.
lhames May 22, 2019
3ac4f40
[Runtimes] If LLVM_INCLUDE_TESTS=On depend on gtest
llvm-beanz May 22, 2019
a318200
[docs] Make a note of the HowToUseLLJIT example in the ORCv2 design doc.
lhames May 22, 2019
57b53af
Fix new enum-codegen.cpp test
rnk May 22, 2019
67886c1
Fix r361428 for Windows buildbots/mangling
dwblaikie May 22, 2019
24c2ec8
Actaully lock accesses to OptionValueFileSpecList objects
fredriss May 22, 2019
e5cdc9a
[ORC] Remove a stray decl that accidentally found its way in to r361322.
lhames May 22, 2019
0056847
[Target] Protect Processes' language runtimes map with a mutex
bulbazord May 22, 2019
9f87d9a
Expression: correct relocation model for Windows
compnerd May 22, 2019
4230f0b
[lldb] Fix use-of-uninitialized-value in Driver
slackito May 22, 2019
c01e476
FileCheck: Improve FileCheck variable terminology
May 23, 2019
94aa1e3
[FileCheck] Introduce substitution subclasses
May 23, 2019
fa2eca0
Ack, added DWARFTypeUnit to the wrong target...
jimingham May 23, 2019
df93b83
[libFuzzer] automatically collect the data flow trace (DFT) in the fo…
kcc May 23, 2019
6004228
gn build: Merge r361418.
pcc May 23, 2019
69c2739
[llvm-objcopy] Add file names to error messages
nuta May 23, 2019
7a124ba
[ARM64][AArch64] Update disassembler attributes to ARMv8.5 ISA with S…
omjavaid May 23, 2019
42db9a1
[libFuzzer] remove the data-flow-trace (DFT) python scripts; their fu…
kcc May 23, 2019
341175e
[X86] Support -fno-plt __tls_get_addr calls
MaskRay May 23, 2019
515fd69
[WebAssembly] Implement __builtin_return_address for emscripten
tlively May 23, 2019
d0d9779
Remove unused const version of CommandInterpreter::GetCommandHistory.
jimingham May 23, 2019
d047a90
[CMake][Fuchsia] Use cannonical triples for runtimes
petrhosek May 23, 2019
84682ba
Remove unnecessary const&s; NFC
gburgessiv May 23, 2019
815eded
[Utility] Modernize C-style cats
JDevlieghere May 23, 2019
9d78e90
[Reproducer] Pass FileSpec by const-ref. (NFC)
JDevlieghere May 23, 2019
9ad1f8e
[GlobalOpt] recognize dead struct fields and propagate values
May 23, 2019
511aeea
[CodeComplete] Complete a lambda when preferred type is a function
ilya-biryukov May 23, 2019
f15d712
[ARM][CGP] Clear SafeWrap before each search
sparker-arm May 23, 2019
307ada6
Simplify `GetName`+`AppendTypeName` by `DWARFDIE`
jankratochvil May 23, 2019
9a81195
[clangd-vscode] Bump versions dependencies. NFC
ilya-biryukov May 23, 2019
537f92a
Fix for build and LIT failures after sync with LLVM eee5d425c1
MrSidims May 22, 2019
8d4be77
Sync to SPIRV-LLVM-Translator ed1a4f738d43
MrSidims May 23, 2019
a91d722
[SYCL] Fix several errors in accessor
v-klochkov May 22, 2019
a287f9d
[SYCL] Fix conversions in multi_ptr class.
romanovvlad May 23, 2019
40ce2a7
[SYCL] Align get_profiling_info behavior with the specification
romanovvlad May 22, 2019
5334afc
[SYCL] Update scheduler API in event methods
romanovvlad May 22, 2019
ff4e08c
[SYCL][NFC] Capitalize SYCL specification references
bader May 26, 2019
5b4a89e
[SYCL][NFC] Remove dead code
bader May 27, 2019
97590a7
[SYCL] Add support of reqd_sub_group_size attribute to SYCL FE
AlexeySachkov May 20, 2019
cf47697
[SYCL] Rename OpenCLIntelReqdSubGroupSize attribute
AlexeySachkov May 21, 2019
19e6105
[SYCL] Use exclusive queues for blocked commands.
romanovvlad May 16, 2019
537f6df
[SYCL] Set timeout of SYCL LIT tests = 10 mins.
romanovvlad May 21, 2019
109cdc5
[SYCL] Disable event_profiling_info.cpp on host device.
romanovvlad May 27, 2019
cd9de48
[SYCL] Remove re-flower pass from clang
Fznamznon May 24, 2019
7db9ce8
[SYCL] Add aliases to OpenCL event and sampler types for SYCL
Fznamznon May 24, 2019
a5f2fda
[SYCL] Use SPIRV-friendly built-in naming scheme
Fznamznon May 24, 2019
39c82eb
[SYCL] Update SYCL clang tests
Fznamznon May 27, 2019
7af8c96
[SYCL] Add support for info::device::sub_group_sizes
vladimirlaz May 27, 2019
c13cb8d
[SYCL] Fix issues on Windows: aligned alloc, prefetch, __builtin_expe…
v-klochkov May 24, 2019
d6c48c3
Merge remote-tracking branch 'intel' into 'sycl'
MrSidims May 31, 2019
92b4a08
[SYCL] Added a test for the removal of the const item operator[] over…
pkeir May 30, 2019
adb9912
add pointer from README to extensions folder
May 31, 2019
0ae767f
[SYCL] Fix the definition of const_reference in accessor
v-klochkov May 30, 2019
25cd310
[Driver][Offloader] Add getOffloadingDeviceToolChain function
agozillon May 29, 2019
5361627
[SYCL][Driver][Offloader] Adding appropriate error out on incorrect S…
agozillon May 29, 2019
23fd38b
[SYCL][Driver][Offloader][NFC] Moving invalid SYCL target diagnostic
agozillon May 30, 2019
2dffc68
[SYCL][Driver]Offloader][Test] Add test case to sycl-offload.c
agozillon May 31, 2019
f477bb8
[SYCL] Fix the kernel name received via get_info method.
alexeyvoronov-intel May 24, 2019
ef0a0c1
[SYCL] Fix set_arg(s) methods to work with constant variables
alexeyvoronov-intel May 27, 2019
11b0baa
[SYCL] Several fixes for handler methods.
alexeyvoronov-intel May 27, 2019
47727b2
[SYCL] Add support for local accessors in set_arg(s) handler method.
alexeyvoronov-intel May 27, 2019
c6776ee
Merge pull request #182 from MrSidims/private/MrSidims/fake_merge
vladimirlaz Jun 3, 2019
b343f8f
[SYCL] Fix metadata for Intel FPGA loop attributes
MrSidims May 29, 2019
eacc876
[SYCL][OpenMP] Update compilation behaviors with fat archives
mdtoguchi May 7, 2019
d404d1c
[SYCL] Fix handler set_arg(s) method.
alexeyvoronov-intel Jun 3, 2019
505e195
[SYCL] Fix errors caused by unsupported __builtin_expect() on Windows
v-klochkov Jun 6, 2019
4d847c0
[SYCL] Remove redundant code
Fznamznon Jun 3, 2019
8d186a3
[SYCL] Remove _Float16 from integration header
Fznamznon May 31, 2019
5adefa3
[SYCL] Clean up in swizzle macros, prepare them for change of Indexer
v-klochkov Jun 6, 2019
637c69b
[SYCL][NFC] Add 2 private aux types to SwizzleOp class
v-klochkov Jun 6, 2019
5713c57
[SYCL][FPGA] Add 'SYCL' lang prefix for loop attributes
MrSidims Jun 6, 2019
33fabc4
[SYCL] Fix vec and SwizzleOp types on Windows
v-klochkov May 31, 2019
9079001
[SYCL] Include <algorithm> for std::max, define M_PI macro in builtins
v-klochkov Jun 7, 2019
1614b8f
[SYCL] Add SYCL clang frontend doc
Fznamznon Jun 9, 2019
5a3a030
[SYCL] Sync with SPIRV-LLVM-Translator 365675f2
AlexeySachkov Jun 4, 2019
a72d544
[SYCL] Refactor SYCL clang kernel wrapper tests
Fznamznon Jun 6, 2019
76bb259
[SYCL] Remove old scheduler
againull Jun 4, 2019
a718871
[SYCL] Add /bigobj switch to SemaSYCL.cpp on Windows to enable DEBUG …
v-klochkov Jun 11, 2019
2e48081
[SYCL] Enable sampler support in set_arg(s) method.
alexeyvoronov-intel Jun 3, 2019
da9bdd3
[SYCL][NFC] Remove code from comments.
bader May 26, 2019
208cd7c
[SYCL] Update documentation with OpenCL types re-use proposal
bader May 24, 2019
eb735ee
[SYCL] Enable OpenCL diagnostics for sampler in SYCL mode
bader May 21, 2019
4508874
[SYCL][clang-cc1] Add new cc1 option: -dependency-filter PREFIX
May 30, 2019
76cd23d
[SYCL] Fix build after old scheduler removal
againull Jun 12, 2019
f4a5a63
[SYCL] Release notes for June'19 release.
romanovvlad Jun 2, 2019
bc8c55c
[SYCL] Align global_mem_cache_type values with SYCL specification.
romanovvlad Jun 13, 2019
6540810
[SYCL] Stream class
againull May 17, 2019
9ceb9e2
[SYCL] Check return of Expected<T> when reading section size content
mdtoguchi May 30, 2019
9ff0401
[SYCL] Minor fixes after stream class implementation.
againull Jun 17, 2019
dba5f18
[SYCL] Enable set_final_data for shared_ptr
vladimirlaz Jun 15, 2019
6b8be71
[SYCL] Fix warning in half implementation
Fznamznon Jun 13, 2019
54e4ecb
fix typo
Jun 17, 2019
2c9ab05
[SYCL] Retain OpenCL kernel in SYCL kernel constructor
Fznamznon Jun 13, 2019
60978ef
[SYCL] add support for -fsycl-link
mdtoguchi May 9, 2019
b2248cc
[SYCL] Add ND-range reduction extension docs (#211)
Pennycook Jun 19, 2019
57ee6e1
[SYCL] Remove wrapper headers
againull Apr 16, 2019
e844b0c
[SYCL][NFC] Remove dead code (#230)
v-klochkov Jun 19, 2019
fa4ba4c
[SYCL] Refactor OpenCL kernel generation (#227)
Fznamznon Jun 20, 2019
c191009
[SYCL] Temporary disable stream LIT test.
romanovvlad Jun 20, 2019
8d719f7
[SYCL] Fix two build time errors reported by MSVC 2019
v-klochkov Jun 14, 2019
55e9753
[SYCL] Image Class Initial Implementation.
garimagu May 28, 2019
3f6c353
[Buildbot] migrate build script from shell to python
ikurtchen Jun 2, 2019
07358ac
[SYCL] Update documents with recent project changes
vladimirlaz Jun 15, 2019
4c58035
[SYCL] Avoid declaring unscoped enums in global namespace
AlexeySachkov Jun 7, 2019
dc51240
[SYCL][NFC] Refactor common code into a helper function
AlexeySachkov Jun 20, 2019
c05692e
[SYCL] Remove outdated CMake configuration.
bader Jun 20, 2019
4390733
[SYCL] Fix cl::sycl::group get_linear_id API name.
kbobrovs May 19, 2019
c6d0281
First attempt at __unique_stable_name
Jun 24, 2019
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
  •  
  •  
  •  
94 changes: 94 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
# Contributing

## License
Intel Project for LLVM* technology is licensed under the terms of the
Apache-2.0 with LLVM-exception license (
[LICENSE.txt](https://github.com/intel/llvm/blob/intel/llvm/LICENSE.TXT))
to ensure our ability to contribute this project to the LLVM project
under the same license.

By contributing to this project, you agree to the Apache-2.0 with
LLVM-exception license and copyright terms there in and release your
contribution under these terms.

## Sign your work
Please use the sign-off line at the end of your contribution. Your
signature certifies that you wrote the contribution or otherwise have
the right to pass it on as an open-source contribution, and that you
agree to provide your contribution under the terms of the licenses
noted above. The rules are pretty simple: if you can certify the
below (from [developercertificate.org](http://developercertificate.org)):

```
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
660 York Street, Suite 102,
San Francisco, CA 94110 USA

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
```

Then you just add a line to every git commit message:

Signed-off-by: Joe Smith <joe.smith@email.com>

Use your real name (sorry, no pseudonyms or anonymous contributions.)

If you set your `user.name` and `user.email` git configs, you can sign your commit automatically with `git commit -s`.

## Contribution process

### Development

- Create a personal fork of the project on GitHub.
- Use **sycl** branch as baseline for your changes.
- Prepare your patch (follow [LLVM coding standards](https://llvm.org/docs/CodingStandards.html)).
- Build the project and run all tests (see [GetStartedWithSYCLCompiler.md](https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedWithSYCLCompiler.md))

### Review and acceptance testing

- Create a pull request for your changes following [Creating a pull request instructions](https://help.github.com/articles/creating-a-pull-request/).
- When the pull request is created signed-off check is done.
- **check_pr** - verifies that the signed-off mark is added to each commit message.
- Once the pull request is approved by an Intel representative, build and functional testing are started.
- **sycl-ubu-x64-pr** - runs all LIT tests on machine with OpenCL runtimes for CPU and GPU.
- Approval is lost once the PR branch is updated. New approval and checks rerun are required.
- Once approval is received and all checks pass, the pull request is ready to be merged.

### Merge

Merge of pull request is done only by project maintainers. There are three options:
- [Rebase and merge] The preferable choice for PRs containing a single commit.
- [Squash and merge] Used when there are multiple commits in the PR.
Squashing is done to shorten history and make sure that the project is buildable on any commit.
- [Create a merge commit] Used for pull down PRs to avoid duplication of
LLVM commits.
26 changes: 22 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# The LLVM Compiler Infrastructure
# Intel Project for LLVM* technology

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.
## Introduction

Intel staging area for llvm.org contribution.
Home for Intel LLVM-based projects:
- SYCL* Compiler and Runtimes - compiler and runtime libraries for SYCL ([https://www.khronos.org/sycl/](https://www.khronos.org/sycl/)). See **sycl** branch.

## License
See [LICENSE.txt](https://github.com/intel/llvm/blob/intel/llvm/LICENSE.TXT) for details.


## Contributing
See [CONTRIBUTING.md](https://github.com/intel/llvm/blob/intel/CONTRIBUTING.md) for details.

## Sub-projects Documentation
- SYCL Compiler and Runtimes - See [GetStartedWithSYCLCompiler.md](https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedWithSYCLCompiler.md)

*Other names and brands may be claimed as the property of others.

## SYCL Extension Proposal Documents

See [sycl/doc/extensions](https://github.com/intel/llvm/tree/sycl/sycl/doc/extensions)
28 changes: 28 additions & 0 deletions buildbot/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Scripts for build steps on Buildbot

## Purpose

The purpose of the script is for developer to customize build command for the
builder on Buildbot.

## How it works

The scripts will be run by Buildbot at corresponding build step, for example,
the **compile** step will run `compile.py`. Developer can change the build
command, then the builder (e.g. pull request builder) will use the changed
command to do the build.

## Arguments for the scripts

Refer to argument parser in `main()` function.

## Assumptions

The Buildbot worker directory structure is:

/path/to/WORKER_ROOT/BUILDER/
llvm.src --> source code
llvm.obj --> build directory

Working directory of the scripts is /path/to/WORKER_ROOT/BUILDER

47 changes: 47 additions & 0 deletions buildbot/check.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
import argparse
import os
import subprocess
import sys

DEFAULT_CPU_COUNT = 4

def do_check(args):
ret = False

cpu_count = os.cpu_count()
if cpu_count is None:
cpu_count = DEFAULT_CPU_COUNT

make_cmd = ["make", args.test_suite, "VERBOSE=1", "-j", str(cpu_count), "LIT_ARGS=\"-v\""]
print(make_cmd)

subprocess.check_call(make_cmd, cwd=args.obj_dir)

ret = True
return ret

def main():
parser = argparse.ArgumentParser(prog="check.py",
description="script to do LIT testing",
formatter_class=argparse.RawTextHelpFormatter)
parser.add_argument("-n", "--build-number", metavar="BUILD_NUM", help="build number")
parser.add_argument("-b", "--branch", metavar="BRANCH", help="pull request branch")
parser.add_argument("-d", "--base-branch", metavar="BASE_BRANCH", help="pull request base branch")
parser.add_argument("-r", "--pr-number", metavar="PR_NUM", help="pull request number")
parser.add_argument("-w", "--builder-dir", metavar="BUILDER_DIR",
help="builder directory, which is the directory contains source and build directories")
parser.add_argument("-s", "--src-dir", metavar="SRC_DIR", help="source directory")
parser.add_argument("-o", "--obj-dir", metavar="OBJ_DIR", required=True, help="build directory")
parser.add_argument("-t", "--test-suite", metavar="TEST_SUITE", required=True, help="check-xxx target")

args = parser.parse_args()

print("args:{}".format(args))

return do_check(args)

if __name__ == "__main__":
ret = main()
exit_code = 0 if ret else 1
sys.exit(exit_code)

68 changes: 68 additions & 0 deletions buildbot/clang_tidy.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
import argparse
import os
import subprocess
import sys

FILE_EXTENSIONS = [".h", ".hpp", ".c", ".cc", ".cpp"]

def do_clang_tidy(args):
ret = False

merge_base_cmd = ["git", "merge-base", "origin/{}".format(args.base_branch), args.branch]
print(merge_base_cmd)
base_commit = subprocess.check_output(merge_base_cmd, cwd=args.src_dir)
base_commit = base_commit.rstrip()

changed_files = os.path.join(args.builder_dir, "clang_tidy_changed_files.txt")
if os.path.isfile(changed_files):
os.remove(changed_files)

diff_cmd = ["git", "--no-pager", "diff", base_commit, args.branch, "--name-only"]
print(diff_cmd)
with open(changed_files, 'w') as f:
subprocess.check_call(merge_base_cmd, cwd=args.src_dir, stdout=f, stderr=subprocess.STDOUT)

if os.path.isfile(changed_files):
clang_tidy_binary = os.path.join(args.obj_dir, "bin", "clang-tidy")
if os.path.isfile(clang_tidy_binary):
with open(changed_files, 'r') as f:
for line in f:
filename, file_extension = os.path.splitext(line)
if file_extension.lower() in FILE_EXTENSIONS:
clang_tidy_cmd = [clang_tidy_binary, line]
print(clang_tidy_cmd)
subprocess.run(clang_tidy_binary, cwd=args.src_dir)
ret = True
else:
print("no such file:{}".format(clang_tidy_binary))
# TODO report error when clang-tidy is ready
print("clang-tidy is not get built, always return success for now.")
ret = True

return ret

def main():
parser = argparse.ArgumentParser(prog="clang_tidy.py",
description="script to do clang_tidy",
formatter_class=argparse.RawTextHelpFormatter)
parser.add_argument("-n", "--build-number", metavar="BUILD_NUM", help="build number")
parser.add_argument("-b", "--branch", metavar="BRANCH", required=True, help="pull request branch")
parser.add_argument("-d", "--base-branch", metavar="BASE_BRANCH", required=True,
help="pull request base branch")
parser.add_argument("-r", "--pr-number", metavar="PR_NUM", help="pull request number")
parser.add_argument("-w", "--builder-dir", metavar="BUILDER_DIR", required=True,
help="builder directory, which is the directory contains source and build directories")
parser.add_argument("-s", "--src-dir", metavar="SRC_DIR", required=True, help="source directory")
parser.add_argument("-o", "--obj-dir", metavar="OBJ_DIR", required=True, help="build directory")

args = parser.parse_args()

print("args:{}".format(args))

return do_clang_tidy(args)

if __name__ == "__main__":
ret = main()
exit_code = 0 if ret else 1
sys.exit(exit_code)

46 changes: 46 additions & 0 deletions buildbot/compile.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
import argparse
import os
import subprocess
import sys

DEFAULT_CPU_COUNT = 4

def do_compile(args):
ret = False

cpu_count = os.cpu_count()
if cpu_count is None:
cpu_count = DEFAULT_CPU_COUNT

make_cmd = ["make", "-j", str(cpu_count), "sycl-toolchain"]
print(make_cmd)

subprocess.check_call(make_cmd, cwd=args.obj_dir)

ret = True
return ret

def main():
parser = argparse.ArgumentParser(prog="compile.py",
description="script to do compile",
formatter_class=argparse.RawTextHelpFormatter)
parser.add_argument("-n", "--build-number", metavar="BUILD_NUM", help="build number")
parser.add_argument("-b", "--branch", metavar="BRANCH", help="pull request branch")
parser.add_argument("-d", "--base-branch", metavar="BASE_BRANCH", help="pull request base branch")
parser.add_argument("-r", "--pr-number", metavar="PR_NUM", help="pull request number")
parser.add_argument("-w", "--builder-dir", metavar="BUILDER_DIR",
help="builder directory, which is the directory contains source and build directories")
parser.add_argument("-s", "--src-dir", metavar="SRC_DIR", help="source directory")
parser.add_argument("-o", "--obj-dir", metavar="OBJ_DIR", required=True, help="build directory")

args = parser.parse_args()

print("args:{}".format(args))

return do_compile(args)

if __name__ == "__main__":
ret = main()
exit_code = 0 if ret else 1
sys.exit(exit_code)

64 changes: 64 additions & 0 deletions buildbot/configure.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
import argparse
import os
import subprocess
import sys

def do_configure(args):
ret = False

llvm_dir = os.path.join(args.src_dir, "llvm")
sycl_dir = os.path.join(args.src_dir, "sycl")
spirv_dir = os.path.join(args.src_dir, "llvm-spirv")
ocl_header_dir = os.path.join(args.obj_dir, "OpenCL-Headers")
icd_loader_lib = os.path.join(args.obj_dir, "OpenCL-ICD-Loader", "build", "libOpenCL.so")

cmake_cmd = ["cmake",
"-DCMAKE_BUILD_TYPE={}".format(args.build_type),
"-DLLVM_EXTERNAL_PROJECTS=sycl;llvm-spirv",
"-DLLVM_EXTERNAL_SYCL_SOURCE_DIR={}".format(sycl_dir),
"-DLLVM_EXTERNAL_LLVM_SPIRV_SOURCE_DIR={}".format(spirv_dir),
"-DLLVM_ENABLE_PROJECTS=clang;llvm-spirv;sycl",
"-DOpenCL_INCLUDE_DIR={}".format(ocl_header_dir),
"-DOpenCL_LIBRARY={}".format(icd_loader_lib),
"-DLLVM_BUILD_TOOLS=OFF",
llvm_dir]

print(cmake_cmd)

try:
subprocess.check_call(cmake_cmd, cwd=args.obj_dir)
except subprocess.CalledProcessError:
cmake_cache = os.path.join(args.obj_dir, "CMakeCache.txt")
if os.path.isfile(cmake_cache):
os.remove(cmake_cache)
subprocess.check_call(cmake_cmd, cwd=args.obj_dir)

ret = True
return ret

def main():
parser = argparse.ArgumentParser(prog="configure.py",
description="script to do configure",
formatter_class=argparse.RawTextHelpFormatter)
parser.add_argument("-n", "--build-number", metavar="BUILD_NUM", help="build number")
parser.add_argument("-b", "--branch", metavar="BRANCH", help="pull request branch")
parser.add_argument("-d", "--base-branch", metavar="BASE_BRANCH", help="pull request base branch")
parser.add_argument("-r", "--pr-number", metavar="PR_NUM", help="pull request number")
parser.add_argument("-w", "--builder-dir", metavar="BUILDER_DIR",
help="builder directory, which is the directory contains source and build directories")
parser.add_argument("-s", "--src-dir", metavar="SRC_DIR", required=True, help="source directory")
parser.add_argument("-o", "--obj-dir", metavar="OBJ_DIR", required=True, help="build directory")
parser.add_argument("-t", "--build-type",
metavar="BUILD_TYPE", required=True, help="build type, debug or release")

args = parser.parse_args()

print("args:{}".format(args))

return do_configure(args)

if __name__ == "__main__":
ret = main()
exit_code = 0 if ret else 1
sys.exit(exit_code)

Loading