SuccessChanges

Summary

  1. AMDGPU: Implement getMinimumNopSize
  2. [Object] Initialize LoadConfig member to null Executables may not contain a load config, and clients should be able to test for nullability. Previously we'd return uninitialized memory. Now getLoadConfig32/64 return valid pointers or null. Fixes PR34108
  3. [OpenMP] Error when trying to offload to an unsupported architecture Summary: Throw an error when offloading is unsupported for a particular target architecture. Reviewers: sfantao, caomhin, carlo.bertolli, ABataev, Hahnfeld Reviewed By: ABataev Subscribers: cfe-commits, rengolin Differential Revision: https://reviews.llvm.org/D32035
  4. [OpenMP] Prevent emission of exception handling code when using OpenMP to offload to NVIDIA devices. Summary: For the OpenMP toolchain which offloads to NVIDIA GPUs make sure that no exception handling code is emitted. Reviewers: arpith-jacob, sfantao, caomhin, carlo.bertolli, ABataev, Hahnfeld, hfinkel, tstellar Reviewed By: ABataev, Hahnfeld Subscribers: rengolin, Hahnfeld, cfe-commits Differential Revision: https://reviews.llvm.org/D29904
  5. Do not instrument libFuzzer itself when built with -DLLVM_USE_SANITIZE_COVERAGE Fixes regression from https://reviews.llvm.org/D36295 Differential Revision: https://reviews.llvm.org/D36428
  6. [AArch64] Ignore stdcall and similar on aarch64/windows This is similar to what's done on arm and x86_64, where these calling conventions are silently ignored, as in SVN r245076. Differential Revision: https://reviews.llvm.org/D36105
  7. Remove steps for building and testing libFuzzer on Windows They are broken and nobody is maintaining them.
  8. [OpenMP] Make OpenMP generated code for the NVIDIA device relocatable by default Summary: When device offloading is enabled and the device is an NVIDIA GPU, OpenMP target regions must be compiled with relocation enabled by passing the "-c" flag to the PTXAS invocation. Reviewers: arpith-jacob, caomhin, carlo.bertolli, ABataev, Hahnfeld, jlebar, hfinkel, tstellar Reviewed By: Hahnfeld Subscribers: Hahnfeld, rengolin, mkuron, cfe-commits Differential Revision: https://reviews.llvm.org/D29642
  9. Mark static variables static; NFC.
  10. [llvm-pdbutil] Don't crash when a section contrib's isect is invalid.
  11. Move the SampleProfileLoader right after EarlyFPM. Summary: SampleProfileLoader pass do need to happen after some early cleanup passes so that inlining can happen correctly inside the SampleProfileLoader pass. Reviewers: chandlerc, davidxl, tejohnson Reviewed By: chandlerc, tejohnson Subscribers: sanjoy, mehdi_amini, eraman, llvm-commits Differential Revision: https://reviews.llvm.org/D36333
  12. [OpenMP] Pass -v to PTXAS if it was passed to the driver. Summary: When compiling code being offloaded by OpenMP to an NVIDIA GPU, pass the -v to PTXAS if it was passed to the CLANG driver. Reviewers: arpith-jacob, caomhin, carlo.bertolli, ABataev, jlebar, hfinkel, tstellar Reviewed By: jlebar Subscribers: Hahnfeld, rengolin, cfe-commits Differential Revision: https://reviews.llvm.org/D29644
  13. [OpenMP] Integrate OpenMP target region cubin into host binary Summary: OpenMP device offloading code generation produces a cubin file which is then integrated in the host binary using the host linker. Reviewers: arpith-jacob, caomhin, carlo.bertolli, ABataev, Hahnfeld, jlebar, rnk, hfinkel, tstellar Reviewed By: hfinkel Subscribers: sfantao, rnk, rengolin, cfe-commits Differential Revision: https://reviews.llvm.org/D29654
  14. [libc++] Don't hardcode namespace in manual mangling libc++'s inline namespace can change depending on the ABI version. Instead of hardcoding __1 in the manual Microsoft ABI manglings for the iostream globals, stringify _LIBCPP_NAMESPACE and use that instead, to work across all ABI versions.
  15. Reapply fix PR23384 (part 3 of 3) r304824 (was reverted in r305720). The root cause of reverting was fixed - PR33514. Summary: The patch makes instruction count the highest priority for LSR solution for X86 (previously registers had highest priority). Reviewers: qcolombet Differential Revision: http://reviews.llvm.org/D30562 From: Evgeny Stupachenko <evstupac@gmail.com> <evgeny.v.stupachenko@intel.com>
Revision 310310 by arsenm:
AMDGPU: Implement getMinimumNopSize
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cppllvm.src/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
Revision 310308 by rnk:
[Object] Initialize LoadConfig member to null

Executables may not contain a load config, and clients should be able to
test for nullability. Previously we'd return uninitialized memory. Now
getLoadConfig32/64 return valid pointers or null.

Fixes PR34108
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Object/COFF.hllvm.src/include/llvm/Object/COFF.h
The file was added/llvm/trunk/test/tools/llvm-readobj/Inputs/coff-no-load-config.exellvm.src/test/tools/llvm-readobj/Inputs/coff-no-load-config.exe
The file was modified/llvm/trunk/test/tools/llvm-readobj/coff-load-config.testllvm.src/test/tools/llvm-readobj/coff-load-config.test
Revision 310307 by gbercea:
[OpenMP] Error when trying to offload to an unsupported architecture

Summary: Throw an error when offloading is unsupported for a particular target architecture.

Reviewers: sfantao, caomhin, carlo.bertolli, ABataev, Hahnfeld

Reviewed By: ABataev

Subscribers: cfe-commits, rengolin

Differential Revision: https://reviews.llvm.org/D32035
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Frontend/CompilerInvocation.cppclang.src/lib/Frontend/CompilerInvocation.cpp
The file was modified/cfe/trunk/test/OpenMP/target_messages.cppclang.src/test/OpenMP/target_messages.cpp
Revision 310306 by gbercea:
[OpenMP] Prevent emission of exception handling code when using OpenMP to offload to NVIDIA devices.

Summary: For the OpenMP toolchain which offloads to NVIDIA GPUs make sure that no exception handling code is emitted.

Reviewers: arpith-jacob, sfantao, caomhin, carlo.bertolli, ABataev, Hahnfeld, hfinkel, tstellar

Reviewed By: ABataev, Hahnfeld

Subscribers: rengolin, Hahnfeld, cfe-commits

Differential Revision: https://reviews.llvm.org/D29904
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Frontend/CompilerInvocation.cppclang.src/lib/Frontend/CompilerInvocation.cpp
The file was added/cfe/trunk/test/OpenMP/target_parallel_no_exceptions.cppclang.src/test/OpenMP/target_parallel_no_exceptions.cpp
Revision 310305 by George Karpenkov:
Do not instrument libFuzzer itself when built with -DLLVM_USE_SANITIZE_COVERAGE

Fixes regression from https://reviews.llvm.org/D36295

Differential Revision: https://reviews.llvm.org/D36428
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Fuzzer/CMakeLists.txtllvm.src/lib/Fuzzer/CMakeLists.txt
Revision 310303 by mstorsjo:
[AArch64] Ignore stdcall and similar on aarch64/windows

This is similar to what's done on arm and x86_64, where
these calling conventions are silently ignored, as in
SVN r245076.

Differential Revision: https://reviews.llvm.org/D36105
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Basic/Targets/AArch64.cppclang.src/lib/Basic/Targets/AArch64.cpp
The file was modified/cfe/trunk/lib/Basic/Targets/AArch64.hclang.src/lib/Basic/Targets/AArch64.h
The file was modified/cfe/trunk/test/Parser/arm-windows-calling-convention-handling.cclang.src/test/Parser/arm-windows-calling-convention-handling.c
Revision 310301 by rnk:
Remove steps for building and testing libFuzzer on Windows

They are broken and nobody is maintaining them.
Change TypePath in RepositoryPath in Workspace
The file was modified/zorg/trunk/zorg/buildbot/builders/SanitizerBuilderWindows.pyzorg/zorg/buildbot/builders/SanitizerBuilderWindows.py
Revision 310300 by gbercea:
[OpenMP] Make OpenMP generated code for the NVIDIA device relocatable by default

Summary: When device offloading is enabled and the device is an NVIDIA GPU, OpenMP target regions must be compiled with relocation enabled by passing the "-c" flag to the PTXAS invocation.

Reviewers: arpith-jacob, caomhin, carlo.bertolli, ABataev, Hahnfeld, jlebar, hfinkel, tstellar

Reviewed By: Hahnfeld

Subscribers: Hahnfeld, rengolin, mkuron, cfe-commits

Differential Revision: https://reviews.llvm.org/D29642
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Driver/ToolChains/Cuda.cppclang.src/lib/Driver/ToolChains/Cuda.cpp
The file was modified/cfe/trunk/test/Driver/openmp-offload.cclang.src/test/Driver/openmp-offload.c
Revision 310299 by George Burgess IV:
Mark static variables static; NFC.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/AST/Decl.cppclang.src/lib/AST/Decl.cpp
Revision 310298 by zturner:
[llvm-pdbutil] Don't crash when a section contrib's isect is invalid.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/tools/llvm-pdbutil/DumpOutputStyle.cppllvm.src/tools/llvm-pdbutil/DumpOutputStyle.cpp
Revision 310296 by dehao:
Move the SampleProfileLoader right after EarlyFPM.

Summary: SampleProfileLoader pass do need to happen after some early cleanup passes so that inlining can happen correctly inside the SampleProfileLoader pass.

Reviewers: chandlerc, davidxl, tejohnson

Reviewed By: chandlerc, tejohnson

Subscribers: sanjoy, mehdi_amini, eraman, llvm-commits

Differential Revision: https://reviews.llvm.org/D36333
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Passes/PassBuilder.cppllvm.src/lib/Passes/PassBuilder.cpp
The file was modified/llvm/trunk/test/Other/new-pm-pgo.llllvm.src/test/Other/new-pm-pgo.ll
The file was modified/llvm/trunk/test/Other/new-pm-thinlto-defaults.llllvm.src/test/Other/new-pm-thinlto-defaults.ll
Revision 310295 by gbercea:
[OpenMP] Pass -v to PTXAS if it was passed to the driver.

Summary: When compiling code being offloaded by OpenMP to an NVIDIA GPU, pass the -v to PTXAS if it was passed to the CLANG driver.

Reviewers: arpith-jacob, caomhin, carlo.bertolli, ABataev, jlebar, hfinkel, tstellar

Reviewed By: jlebar

Subscribers: Hahnfeld, rengolin, cfe-commits

Differential Revision: https://reviews.llvm.org/D29644
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Driver/ToolChains/Cuda.cppclang.src/lib/Driver/ToolChains/Cuda.cpp
The file was modified/cfe/trunk/test/Driver/cuda-external-tools.cuclang.src/test/Driver/cuda-external-tools.cu
Revision 310291 by gbercea:
[OpenMP] Integrate OpenMP target region cubin into host binary

Summary: OpenMP device offloading code generation produces a cubin file which is then integrated in the host binary using the host linker.

Reviewers: arpith-jacob, caomhin, carlo.bertolli, ABataev, Hahnfeld, jlebar, rnk, hfinkel, tstellar

Reviewed By: hfinkel

Subscribers: sfantao, rnk, rengolin, cfe-commits

Differential Revision: https://reviews.llvm.org/D29654
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Driver/Driver.cppclang.src/lib/Driver/Driver.cpp
The file was modified/cfe/trunk/lib/Driver/ToolChains/Clang.cppclang.src/lib/Driver/ToolChains/Clang.cpp
The file was modified/cfe/trunk/lib/Driver/ToolChains/CommonArgs.cppclang.src/lib/Driver/ToolChains/CommonArgs.cpp
The file was modified/cfe/trunk/lib/Driver/ToolChains/CommonArgs.hclang.src/lib/Driver/ToolChains/CommonArgs.h
The file was modified/cfe/trunk/lib/Driver/ToolChains/Cuda.cppclang.src/lib/Driver/ToolChains/Cuda.cpp
The file was modified/cfe/trunk/lib/Driver/ToolChains/Cuda.hclang.src/lib/Driver/ToolChains/Cuda.h
The file was modified/cfe/trunk/lib/Driver/ToolChains/Gnu.cppclang.src/lib/Driver/ToolChains/Gnu.cpp
The file was modified/cfe/trunk/test/Driver/openmp-offload.cclang.src/test/Driver/openmp-offload.c
Revision 310290 by smeenai:
[libc++] Don't hardcode namespace in manual mangling

libc++'s inline namespace can change depending on the ABI version.
Instead of hardcoding __1 in the manual Microsoft ABI manglings for the
iostream globals, stringify _LIBCPP_NAMESPACE and use that instead, to
work across all ABI versions.
Change TypePath in RepositoryPath in Workspace
The file was modified/libcxx/trunk/src/iostream.cpplibcxx.src/src/iostream.cpp
Revision 310289 by evstupac:
Reapply fix PR23384 (part 3 of 3) r304824 (was reverted in r305720).
The root cause of reverting was fixed - PR33514.

Summary:
The patch makes instruction count the highest priority for
LSR solution for X86 (previously registers had highest priority).

Reviewers: qcolombet

Differential Revision: http://reviews.llvm.org/D30562

From: Evgeny Stupachenko <evstupac@gmail.com>
                         <evgeny.v.stupachenko@intel.com>
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86TargetTransformInfo.cppllvm.src/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modified/llvm/trunk/lib/Target/X86/X86TargetTransformInfo.hllvm.src/lib/Target/X86/X86TargetTransformInfo.h
The file was modified/llvm/trunk/lib/Transforms/Scalar/LoopStrengthReduce.cppllvm.src/lib/Transforms/Scalar/LoopStrengthReduce.cpp
The file was modified/llvm/trunk/test/CodeGen/SystemZ/loop-01.llllvm.src/test/CodeGen/SystemZ/loop-01.ll
The file was modified/llvm/trunk/test/CodeGen/X86/2006-05-11-InstrSched.llllvm.src/test/CodeGen/X86/2006-05-11-InstrSched.ll
The file was modified/llvm/trunk/test/CodeGen/X86/atom-fixup-lea3.llllvm.src/test/CodeGen/X86/atom-fixup-lea3.ll
The file was modified/llvm/trunk/test/CodeGen/X86/full-lsr.llllvm.src/test/CodeGen/X86/full-lsr.ll
The file was modified/llvm/trunk/test/CodeGen/X86/hoist-spill.llllvm.src/test/CodeGen/X86/hoist-spill.ll
The file was modified/llvm/trunk/test/CodeGen/X86/loop-strength-reduce4.llllvm.src/test/CodeGen/X86/loop-strength-reduce4.ll
The file was modified/llvm/trunk/test/CodeGen/X86/madd.llllvm.src/test/CodeGen/X86/madd.ll
The file was modified/llvm/trunk/test/CodeGen/X86/masked-iv-safe.llllvm.src/test/CodeGen/X86/masked-iv-safe.ll
The file was modified/llvm/trunk/test/Transforms/LoopStrengthReduce/X86/canonical.llllvm.src/test/Transforms/LoopStrengthReduce/X86/canonical.ll
The file was modified/llvm/trunk/test/Transforms/LoopStrengthReduce/X86/ivchain-X86.llllvm.src/test/Transforms/LoopStrengthReduce/X86/ivchain-X86.ll
The file was modified/llvm/trunk/test/Transforms/LoopStrengthReduce/X86/lsr-expand-quadratic.llllvm.src/test/Transforms/LoopStrengthReduce/X86/lsr-expand-quadratic.ll
The file was modified/llvm/trunk/test/Transforms/LoopStrengthReduce/X86/lsr-insns-1.llllvm.src/test/Transforms/LoopStrengthReduce/X86/lsr-insns-1.ll
The file was modified/llvm/trunk/test/Transforms/LoopStrengthReduce/X86/lsr-insns-2.llllvm.src/test/Transforms/LoopStrengthReduce/X86/lsr-insns-2.ll
The file was modified/llvm/trunk/test/Transforms/LoopStrengthReduce/X86/nested-loop.llllvm.src/test/Transforms/LoopStrengthReduce/X86/nested-loop.ll