summaryrefslogtreecommitdiffstats
path: root/clang/docs/ReleaseNotes.rst
diff options
context:
space:
mode:
authorVlad Tsyrklevich <vlad@tsyrklevich.net>2019-01-15 03:38:02 +0000
committerVlad Tsyrklevich <vlad@tsyrklevich.net>2019-01-15 03:38:02 +0000
commit86e68fda3b1b3ebe712bb06558b863de2784be29 (patch)
tree38facfcc854f734b96f6ebaba219b649c3514da1 /clang/docs/ReleaseNotes.rst
parent2d5b317cfc9837ed5e3886c4b989538176517d62 (diff)
downloadbcm5719-llvm-86e68fda3b1b3ebe712bb06558b863de2784be29.tar.gz
bcm5719-llvm-86e68fda3b1b3ebe712bb06558b863de2784be29.zip
Revert alignment assumptions changes
Revert r351104-6, r351109, r351110, r351119, r351134, and r351153. These changes fail on the sanitizer bots. llvm-svn: 351159
Diffstat (limited to 'clang/docs/ReleaseNotes.rst')
-rw-r--r--clang/docs/ReleaseNotes.rst43
1 files changed, 0 insertions, 43 deletions
diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index b6a405dbc78..64991343d9d 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -321,49 +321,6 @@ Undefined Behavior Sanitizer (UBSan)
* The Implicit Conversion Sanitizer (``-fsanitize=implicit-conversion``) has
learned to sanitize compound assignment operators.
-* ``alignment`` check has learned to sanitize the assume_aligned-like attributes:
-
- .. code-block:: c++
-
- typedef char **__attribute__((align_value(1024))) aligned_char;
- struct ac_struct {
- aligned_char a;
- };
- char **load_from_ac_struct(struct ac_struct *x) {
- return x->a; // <- check that loaded 'a' is aligned
- }
-
- char **passthrough(__attribute__((align_value(1024))) char **x) {
- return x; // <- check the pointer passed as function argument
- }
-
- char **__attribute__((alloc_align(2)))
- alloc_align(int size, unsigned long alignment);
-
- char **caller(int size) {
- return alloc_align(size, 1024); // <- check returned pointer
- }
-
- char **__attribute__((assume_aligned(1024))) get_ptr();
-
- char **caller2() {
- return get_ptr(); // <- check returned pointer
- }
-
- void *caller3(char **x) {
- return __builtin_assume_aligned(x, 1024); // <- check returned pointer
- }
-
- void *caller4(char **x, unsigned long offset) {
- return __builtin_assume_aligned(x, 1024, offset); // <- check returned pointer accounting for the offest
- }
-
- void process(char *data, int width) {
- #pragma omp for simd aligned(data : 1024) // <- aligned clause will be checked.
- for (int x = 0; x < width; x++)
- data[x] *= data[x];
- }
-
Core Analysis Improvements
==========================
OpenPOWER on IntegriCloud