FailedChanges

Summary

  1. [Preprocessor] -E -P: Ensure newline after 8 skipped lines. (details)
  2. libcang: Add missing function to libclang.map (details)
  3. [libc][NFC] Add noreturn and constexpr qualifiers where appropriate (details)
  4. [test] Fix tools/gold/X86/comdat-nodeduplicate.ll on non-X86 hosts (details)
  5. Add `all_of_zip` to STLExtras (details)
Commit c6b0b16c0f55c34f4eaa05184815bbbe97f4b750 by llvm-project
[Preprocessor] -E -P: Ensure newline after 8 skipped lines.

The implementation of -fminimize-whitespace (D104601) revised the logic
when to emit newlines. There was no case to handle when more than
8 lines were skippped in -P (DisableLineMarkers) mode and instead fell
through the case intended for -fminimize-whitespace, i.e. emit nothing.
This patch will emit one newline in this case.

The newline logic is slightly reorganized. The `-P -fminimize-whitespace`
case is handled explicitly and emitting at least one newline is the new
fallback case. The choice between emitting a line marker or up to
7 empty lines is now a choice only with enabled line markers. The up to
8 newlines likely are fewer characters than a line directive, but
in -P mode this had the paradoxic effect that it would print up to
7 empty lines, but none at all if more than 8 lines had to be skipped.
Now with DisableLineMarkers, we don't consider printing empty lines
(just start a new line) which matches gcc's behavior.

The line-directive-output-mincol.c test is replaced with a more
comprehensive test skip-empty-lines.c also testing the more than
8 skipped lines behaviour with all flag combinations.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D106924
The file was modifiedclang/lib/Frontend/PrintPreprocessedOutput.cpp
The file was modifiedclang/test/Preprocessor/minimize-whitespace.c
The file was removedclang/test/Preprocessor/line-directive-output-mincol.c
The file was addedclang/test/Preprocessor/skip-empty-lines.c
Commit a4edb2b1ba0bda9042e87ca3f3e1b9f70598df9a by tstellar
libcang: Add missing function to libclang.map

This function is marked with CINDEX_LINKAGE, but was never added to the
export list / linker script.

Reviewed By: jrtc27

Differential Revision: https://reviews.llvm.org/D106974
The file was modifiedclang/tools/libclang/libclang.map
Commit 640ed21cceb28ddb3a9779fdfa11a4c4d97e29df by sivachandra
[libc][NFC] Add noreturn and constexpr qualifiers where appropriate

These functions make it clear to the compiler and user what the intended
behavior is so llvm can make them go as fast as possible.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D106807
The file was modifiedlibc/src/ctype/ctype_utils.h
The file was modifiedlibc/src/__support/integer_operations.h
The file was modifiedlibc/utils/HdrGen/Command.h
Commit 5060224d9eed8b8359ed5090bb7c577b8575e9e7 by nathan
[test] Fix tools/gold/X86/comdat-nodeduplicate.ll on non-X86 hosts

When running this test on an aarch64 machine, it fails:

```
/usr/bin/ld.gold: error: .../test/tools/gold/X86/Output/comdat-nodeduplicate.ll.tmp/ab.lto.o: incompatible target
```

Specify the elf_x86_64 emulation as all of the other gold plugin tests
do.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D107020
The file was modifiedllvm/test/tools/gold/X86/comdat-nodeduplicate.ll
Commit b70de61f48062c7810b474bc944394ecbd56a262 by joker.eph
Add `all_of_zip` to STLExtras

This takes two ranges and invokes a predicate on the element-wise pair in the
ranges. It returns true if all the pairs are matching the predicate and the ranges
have the same size.
It is useful with containers that aren't random iterator where we can't check the
sizes in O(1).

Differential Revision: https://reviews.llvm.org/D106605
The file was modifiedllvm/unittests/ADT/STLExtrasTest.cpp
The file was modifiedllvm/include/llvm/ADT/STLExtras.h