llvm with tablegen backend for capstone disassembler
Go to file
Andrew Savonichev 52d674d974 [OpenCL] Fix serialization of OpenCLExtensionDecls
Summary:
I recently discovered that adding the following code into `opencl-c.h` causes
failure of `test/Headers/opencl-c-header.cl`:
```
#pragma OPENCL EXTENSION cl_my_ext : begin
void cl_my_ext_foobarbaz();
#pragma OPENCL EXTENSIOn cl_my_ext : end
```

Clang crashes at the assertion is `ASTReader::getGlobalSubmoduleID()`:
```
assert(I != M.SubmoduleRemap.end() && "Invalid index into submodule index remap");
```

The root cause of the problem that to deserialize `OPENCL_EXTENSION_DECLS`
section `ASTReader` needs to deserialize a Decl contained in it. In turn,
deserializing a Decl requires information about whether this declaration is
part of a (sub)module, but this information is not read yet because it is
located further in a module file.

Reviewers: Anastasia, yaxunl, JDevlieghere

Reviewed By: Anastasia

Subscribers: sidorovd, cfe-commits, asavonic

Differential Revision: https://reviews.llvm.org/D53200

llvm-svn: 345497
2018-10-29 11:14:01 +00:00
clang [OpenCL] Fix serialization of OpenCLExtensionDecls 2018-10-29 11:14:01 +00:00
clang-tools-extra [AST] Refactor PredefinedExpr 2018-10-27 19:21:19 +00:00
compiler-rt Mark test/tsan/getline_nohang as XFAIL for NetBSD 2018-10-29 09:44:42 +00:00
debuginfo-tests Revert "(Retry) Add a basic integration test for C++ smart pointers" 2018-08-20 19:53:33 +00:00
libclc configure: Rework support for gfx9+ devices that were added post LLVM 3.9 2018-09-15 22:02:01 +00:00
libcxx Fix PR39458 _LIBCPP_DEBUG breaks heterogeneous compare. 2018-10-26 22:54:46 +00:00
libcxxabi cxa_demangle: make demangler's parsing functions overridable 2018-10-16 14:29:14 +00:00
libunwind [CMake] Link to compiler-rt if LIBUNWIND_USE_COMPILER_RT is ON. 2018-10-08 18:35:00 +00:00
lld Rename warnUnorderableSymbol maybeWarnUnorderableSymbol because the function doesn't always emit a warning. 2018-10-26 15:07:12 +00:00
lldb Fix and rename broken test for settings write. 2018-10-26 23:01:25 +00:00
llgo
llvm [llvm-objdump] Add '--full-contents' as alias for '-s' 2018-10-29 10:05:39 +00:00
openmp remove duplicate omp_control_tool export to fix windows build 2018-10-25 11:04:01 +00:00
parallel-libs
polly [TI removal] Generically discuss terminators rather than use the soon to 2018-10-18 07:43:30 +00:00
README.md Update the project name in README.md 2018-10-19 00:03:01 +00:00

The LLVM Compiler Infrastructure

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