llvm-project/clang/docs
Craig Topper 6c8a34ed9b [X86] Prevent passing vectors of __int128 as <X x i128> in llvm IR
As far as I can tell, gcc passes 256/512 bit vectors __int128 in memory. And passes a vector of 1 _int128 in an xmm register. The backend considers <X x i128> as an illegal type and will scalarize any arguments with that type. So we need to coerce the argument types in the frontend to match to avoid the illegal type.

I'm restricting this to change to Linux and NetBSD based on the
how similar ABI changes have been handled in the past.
PS4, FreeBSD, and Darwin are unaffected. I've also added a
new -fclang-abi-compat version to restore the old behavior.

This issue was identified in PR42607. Though even with the types changed, we still seem to be doing some unnecessary stack realignment.

llvm-svn: 371169
2019-09-06 06:02:13 +00:00
..
CommandGuide [Test Commit] Fix typo in diagtool.rst 2019-08-16 20:26:48 +00:00
analyzer [analyzer] Add a checker option to detect nested dead stores 2019-09-03 15:22:43 +00:00
tools Portable Python script across Python version 2018-12-19 13:46:13 +00:00
AddressSanitizer.rst [Docs] Modernize references to macOS 2019-05-30 16:46:22 +00:00
AttributeReference.rst
AutomaticReferenceCounting.rst [Docs] Modernize references to macOS 2019-05-30 16:46:22 +00:00
Block-ABI-Apple.rst [CodeGen][ObjC] Make copying and disposing of a non-escaping block 2018-07-20 17:10:32 +00:00
Block-ABI-Apple.txt Update our URLs in clang doc to use https 2018-11-04 17:02:00 +00:00
BlockLanguageSpec.rst
CMakeLists.txt
ClangCheck.rst
ClangCommandLineReference.rst Fix -dA flag, it is not a preprocessor flag. 2019-08-26 17:00:13 +00:00
ClangFormat.rst Adding 'CLion integration' to clang-format doc 2019-04-03 08:56:30 +00:00
ClangFormatStyleOptions.rst [clang-format] Fix a bug that joins template closer and = 2019-08-18 18:51:39 +00:00
ClangPlugins.rst [PragmaHandler] Expose `#pragma` location 2019-05-21 23:51:38 +00:00
ClangStaticAnalyzer.rst [analyzer]Add user docs rst 2019-07-10 14:49:53 +00:00
ClangTools.rst Fix some sphinx doc errors. 2019-02-01 17:06:41 +00:00
ControlFlowIntegrity.rst cfi-icall: Allow the jump table to be optionally made non-canonical. 2019-08-09 22:31:59 +00:00
ControlFlowIntegrityDesign.rst Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
CrossCompilation.rst Update our URLs in clang doc to use https 2018-11-04 17:02:00 +00:00
DataFlowSanitizer.rst
DataFlowSanitizerDesign.rst
DiagnosticsReference.rst fixup: sphinx warning 2019-01-10 19:26:35 +00:00
DriverArchitecture.png
DriverInternals.rst
ExternalClangExamples.rst [Documentation] Use HTTPS whenever possible 2019-01-23 20:39:07 +00:00
FAQ.rst
HardwareAssistedAddressSanitizerDesign.rst hwasan: Improve precision of checks using short granule tags. 2019-07-09 20:22:36 +00:00
HowToSetupToolingForLLVM.rst [Documentation] Use HTTPS whenever possible 2019-01-23 20:39:07 +00:00
InternalsManual.rst Clarify when fix-it hints on warnings are appropriate 2019-05-31 21:27:39 +00:00
IntroductionToTheClangAST.rst [Documentation] Use HTTPS whenever possible 2019-01-23 20:39:07 +00:00
ItaniumMangleAbiTags.rst
JSONCompilationDatabase.rst [Documentation] Use HTTPS whenever possible 2019-01-23 20:39:07 +00:00
LTOVisibility.rst Implement CFI for indirect calls via a member function pointer. 2018-06-26 02:15:47 +00:00
LanguageExtensions.rst [Docs][OpenCL] Several corrections to C++ for OpenCL 2019-08-23 11:43:49 +00:00
LeakSanitizer.rst [Docs] Modernize references to macOS 2019-05-30 16:46:22 +00:00
LibASTImporter.rst Fix typos in LibASTImporter.rst 2019-08-16 12:21:49 +00:00
LibASTMatchers.rst Update our URLs in clang doc to use https 2018-11-04 17:02:00 +00:00
LibASTMatchersReference.html [clang] Update isDerivedFrom to support Objective-C classes 🔍 2019-08-12 23:23:35 +00:00
LibASTMatchersTutorial.rst AST Matchers tutorial requests to enable clang-tools-extra. NFC 2019-06-07 16:31:06 +00:00
LibFormat.rst Update our URLs in clang doc to use https 2018-11-04 17:02:00 +00:00
LibTooling.rst [Tooling] Migrated APIs that take ownership of objects to unique_ptr 2019-08-30 09:29:34 +00:00
MSVCCompatibility.rst [Documentation] Use HTTPS whenever possible 2019-01-23 20:39:07 +00:00
Makefile.sphinx
MemorySanitizer.rst [ReleaseNotes] MemorySanitizer support of ASLR on FreeBSD 2019-08-27 10:04:03 +00:00
Modules.rst [Docs] Modernize references to macOS 2019-05-30 16:46:22 +00:00
ObjectiveCLiterals.rst
OpenMPSupport.rst [OpenMP][Docs] Provide implementation status details 2019-09-04 17:15:37 +00:00
PCHInternals.rst [Documentation] Use HTTPS whenever possible 2019-01-23 20:39:07 +00:00
PCHLayout.graffle
PCHLayout.png
RAVFrontendAction.rst [Tooling] Migrated APIs that take ownership of objects to unique_ptr 2019-08-30 09:29:34 +00:00
README.txt
RefactoringEngine.rst Fix small nits in clang-refactor doc. 2017-10-10 09:00:56 +00:00
ReleaseNotes.rst [X86] Prevent passing vectors of __int128 as <X x i128> in llvm IR 2019-09-06 06:02:13 +00:00
SafeStack.rst [Docs] Modernize references to macOS 2019-05-30 16:46:22 +00:00
SanitizerCoverage.rst Update SanitizerCoverage doc regarding the issue with pc-table and gc-sections. 2019-02-01 17:12:35 +00:00
SanitizerSpecialCaseList.rst Allow specifying sanitizers in blacklists 2017-09-25 22:11:12 +00:00
SanitizerStats.rst [docs] -fsanitize=cfi only allowed with -fvisibility= 2018-06-15 23:11:18 +00:00
ShadowCallStack.rst Delete x86_64 ShadowCallStack support 2019-03-07 18:56:36 +00:00
SourceBasedCodeCoverage.rst Update our URLs in clang doc to use https 2018-11-04 17:02:00 +00:00
ThinLTO.rst ThinLTO: Document the option BOOTSTRAP_LLVM_ENABLE_LTO 2019-09-02 15:34:53 +00:00
ThreadSafetyAnalysis.rst
ThreadSanitizer.rst [docs] Add some architectures into the list of supported ThreadSanitizer platforms 2019-03-05 21:10:42 +00:00
Toolchain.rst Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
Tooling.rst Update our URLs in clang doc to use https 2018-11-04 17:02:00 +00:00
UndefinedBehaviorSanitizer.rst [docs] Add a note about where UBSan emits logs 2019-07-29 22:54:43 +00:00
UsersManual.rst [Docs][OpenCL] Several corrections to C++ for OpenCL 2019-08-23 11:43:49 +00:00
conf.py Bump the trunk version to 10.0.0svn 2019-07-18 11:51:05 +00:00
doxygen-mainpage.dox
doxygen.cfg.in [NFC] Remove LLVM_ALIGNAS 2019-07-31 03:22:08 +00:00
index.rst Revert "[Clang Interpreter] Initial patch for the constexpr interpreter" 2019-09-04 10:57:06 +00:00
make.bat

README.txt

See llvm/docs/README.txt