LLVM/project 3f9ddb2lldb/include/lldb/Host/windows PseudoConsole.h

[lldb] Remove a redundant semicolon. NFC.

This fixes the following warning, repeated multiple times:

    llvm-project/lldb/include/lldb/Host/windows/PseudoConsole.h:69:2: warning: extra ';' outside of a function is incompatible with C++98 [-Wc++98-compat-extra-semi]
       69 | }; // namespace lldb_private
          |  ^
DeltaFile
+1-1lldb/include/lldb/Host/windows/PseudoConsole.h
+1-11 files

LLVM/project 865978alldb/source/Utility VirtualDataExtractor.cpp

[lldb] Fix compilation for 32 bit platforms

This fixes the following error on 32 bit platforms, if compiling with Clang:

    llvm-project/lldb/source/Utility/VirtualDataExtractor.cpp:211:55: error: non-constant-expression cannot be narrowed from type 'SizeType' (aka 'unsigned long long') to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
      211 |   return {m_start + static_cast<size_t>(entry->data), entry->size};
          |                                                       ^~~~~~~~~~~
    llvm-project/lldb/source/Utility/VirtualDataExtractor.cpp:211:55: note: insert an explicit cast to silence this issue
      211 |   return {m_start + static_cast<size_t>(entry->data), entry->size};
          |                                                       ^~~~~~~~~~~
          |                                                       static_cast<size_t>( )
DeltaFile
+1-1lldb/source/Utility/VirtualDataExtractor.cpp
+1-11 files

LLVM/project a87e99cllvm/lib/Analysis ValueTracking.cpp, llvm/test/Transforms/Attributor nofpclass-fma.ll

propagate flags into fma queries
DeltaFile
+41-0llvm/test/Transforms/Attributor/nofpclass-fma.ll
+15-0llvm/lib/Analysis/ValueTracking.cpp
+56-02 files

LLVM/project d214920llvm/lib/Support KnownFPClass.cpp

Add comment
DeltaFile
+5-1llvm/lib/Support/KnownFPClass.cpp
+5-11 files

LLVM/project b01f899llvm/lib/Support KnownFPClass.cpp, llvm/test/Transforms/Attributor nofpclass-fma.ll

fix too conservative
DeltaFile
+1-3llvm/lib/Support/KnownFPClass.cpp
+2-2llvm/test/Transforms/Attributor/nofpclass-fma.ll
+3-52 files

LLVM/project ce3a442llvm/lib/Analysis ValueTracking.cpp, llvm/lib/Support KnownFPClass.cpp

ValueTracking: Improve nan tracking for fma square special case

In the square multiply case, we can infer if the add of opposite
sign infinities can occur.
DeltaFile
+11-1llvm/lib/Support/KnownFPClass.cpp
+2-2llvm/test/Transforms/Attributor/nofpclass-fma.ll
+4-0llvm/lib/Analysis/ValueTracking.cpp
+17-33 files

LLVM/project 1b07070llvm/include/llvm/Support KnownFPClass.h

Fix comment
DeltaFile
+1-1llvm/include/llvm/Support/KnownFPClass.h
+1-11 files

LLVM/project abdce63llvm/test/Transforms/InstCombine simplify-demanded-fpclass-fdiv.ll

update tests
DeltaFile
+17-18llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
+17-181 files

LLVM/project 3faeefdllvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass-fdiv.ll

Address comment nan lhs
DeltaFile
+4-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
+1-1llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+5-32 files

LLVM/project 46816efllvm/include/llvm/Support KnownFPClass.h, llvm/lib/Analysis ValueTracking.cpp

frem self
DeltaFile
+17-1llvm/lib/Support/KnownFPClass.cpp
+5-6llvm/lib/Analysis/ValueTracking.cpp
+5-0llvm/include/llvm/Support/KnownFPClass.h
+27-73 files

LLVM/project 09af0e4llvm/include/llvm/Support KnownFPClass.h, llvm/lib/Analysis ValueTracking.cpp

InstCombine: Handle fdiv in SimplifyDemandedFPClass
DeltaFile
+127-148llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
+130-0llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+46-0llvm/lib/Support/KnownFPClass.cpp
+3-33llvm/lib/Analysis/ValueTracking.cpp
+10-0llvm/include/llvm/Support/KnownFPClass.h
+316-1815 files

LLVM/project 38e2bcellvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp

DAG: Use correct shift type for big endian store forwarding case

Theoretically the shift amount type could differ, it just happens
none of the big endian targets do this.
DeltaFile
+3-2llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+3-21 files

LLVM/project 35efc16llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass-sqrt.ll simplify-demanded-fpclass-fmul.ll

InstCombine: Fold known-qnan results to a literal nan (#176123)

Previously we only considered fcNan to fold to qnan for canonicalizing
results, ignoring the simpler case where we know the nan is already
quiet.
DeltaFile
+3-9llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-sqrt.ll
+7-4llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+2-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll
+2-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-frexp.ll
+1-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fsub.ll
+1-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
+16-237 files not shown
+23-3713 files

LLVM/project aa53f6fllvm/include/llvm/Support KnownFPClass.h, llvm/lib/Analysis ValueTracking.cpp

ValueTracking: Improve handling for fma/fmuladd (#175614)

The handling for fma was very basic and only handled the
repeated input case. Re-use the fmul and fadd handling for more
accurate sign bit and nan handling.
DeltaFile
+52-52llvm/test/Transforms/Attributor/nofpclass-fma.ll
+30-12llvm/lib/Analysis/ValueTracking.cpp
+33-5llvm/lib/Support/KnownFPClass.cpp
+11-0llvm/include/llvm/Support/KnownFPClass.h
+5-1llvm/test/CodeGen/PowerPC/peephole-mma-phi-liveness.ll
+131-705 files

LLVM/project 000313dclang/test/PlatformSpecific/xrOS/Sema infer-ios-availability.c infer-unavailable-from-missing-ios-availability-mapping.c, clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS.sdk SDKSettings.json

[test][NFC] Add more keys to test SDKSettings files (#177749)

Additional visionOS changes.
DeltaFile
+29-0clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS1.0.sdk/SDKSettings.json
+0-21clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS.sdk/SDKSettings.json
+3-3clang/test/PlatformSpecific/xrOS/Sema/infer-ios-availability.c
+1-1clang/test/PlatformSpecific/xrOS/Sema/infer-unavailable-from-missing-ios-availability-mapping.c
+33-254 files

LLVM/project ef38255llvm/test/Transforms/InstCombine simplify-demanded-fpclass-fsub.ll simplify-demanded-fpclass-fptrunc-round.ll

regenerate new tests
DeltaFile
+1-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fsub.ll
+1-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc-round.ll
+1-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc.ll
+3-63 files

LLVM/project 0fcf4bcllvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp

InstCombine: Use SimplifyDemandedFPClass epilog helper function for fma

NFC refactor to use shared code for fold to constant or set fast math
flags.
DeltaFile
+2-14llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+2-141 files

LLVM/project 9bdfe6allvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass-sqrt.ll

InstCombine: Infer fast math flags for sqrt
DeltaFile
+60-5llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-sqrt.ll
+36-4llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+96-92 files

LLVM/project 95c62afllvm/lib/Support KnownFPClass.cpp

Add comment
DeltaFile
+5-1llvm/lib/Support/KnownFPClass.cpp
+5-11 files

LLVM/project 74989d6llvm/lib/Analysis ValueTracking.cpp, llvm/test/Transforms/Attributor nofpclass-fma.ll

propagate flags into fma queries
DeltaFile
+41-0llvm/test/Transforms/Attributor/nofpclass-fma.ll
+15-0llvm/lib/Analysis/ValueTracking.cpp
+56-02 files

LLVM/project 896bab6llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass-fma.ll

InstCombine: Implement SimplifyDemandedFPClass for fma

This can't do much filtering on the sources, except for nans.
We can also attempt to introduce ninf/nnan.
DeltaFile
+82-31llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+16-31llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fma.ll
+98-622 files

LLVM/project df2aca2llvm/lib/Support KnownFPClass.cpp, llvm/test/Transforms/Attributor nofpclass-fma.ll

fix too conservative
DeltaFile
+1-3llvm/lib/Support/KnownFPClass.cpp
+2-2llvm/test/Transforms/Attributor/nofpclass-fma.ll
+3-52 files

LLVM/project 41e89afllvm/test/Transforms/InstCombine simplify-demanded-fpclass-fma.ll

InstCombine: Add baseline fma tests for SimplifyDemandedFPClass
DeltaFile
+316-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fma.ll
+316-01 files

LLVM/project d03f5bcllvm/lib/Analysis ValueTracking.cpp, llvm/lib/Support KnownFPClass.cpp

ValueTracking: Improve nan tracking for fma square special case

In the square multiply case, we can infer if the add of opposite
sign infinities can occur.
DeltaFile
+11-1llvm/lib/Support/KnownFPClass.cpp
+4-0llvm/lib/Analysis/ValueTracking.cpp
+2-2llvm/test/Transforms/Attributor/nofpclass-fma.ll
+17-33 files

LLVM/project d2de89dllvm/test/Transforms/InstCombine simplify-demanded-fpclass.ll simplify-demanded-fpclass-insertelement.ll

regenerate tests
DeltaFile
+0-84llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
+4-3llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-insertelement.ll
+4-3llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-shufflevector.ll
+2-1llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-extractelement.ll
+2-1llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc.ll
+2-1llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc-round.ll
+14-933 files not shown
+18-969 files

LLVM/project 1cd5741llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass.ll

Check IsCanonicalizing
DeltaFile
+85-1llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
+2-1llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+87-22 files

LLVM/project e66b5d1llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp

Move isAggregateType, although this can't break for any existing case
DeltaFile
+4-4llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+4-41 files

LLVM/project db39d32llvm/include/llvm/Support KnownFPClass.h, llvm/lib/Analysis ValueTracking.cpp

ValueTracking: Improve handling for fma/fmuladd

The handling for fma was very basic and only handled the
repeated input case. Re-use the fmul and fadd handling for more
accurate sign bit and nan handling.
DeltaFile
+52-52llvm/test/Transforms/Attributor/nofpclass-fma.ll
+30-12llvm/lib/Analysis/ValueTracking.cpp
+33-5llvm/lib/Support/KnownFPClass.cpp
+11-0llvm/include/llvm/Support/KnownFPClass.h
+5-1llvm/test/CodeGen/PowerPC/peephole-mma-phi-liveness.ll
+131-705 files

LLVM/project fd5bf12llvm/test/Transforms/InstCombine simplify-demanded-fpclass-sqrt.ll simplify-demanded-fpclass-frexp.ll

InstCombine: Fold known-qnan results to a literal nan

Previously we only considered fcNan to fold to qnan for canonicalizing
results, ignoring the simpler case where we know the nan is already
quiet.
DeltaFile
+3-9llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-sqrt.ll
+3-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-frexp.ll
+3-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-insertelement.ll
+3-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-shufflevector.ll
+2-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll
+1-2llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fpext.ll
+15-2712 files not shown
+28-4618 files

LLVM/project 0387625llvm/lib/Support KnownFPClass.cpp, llvm/test/Transforms/Attributor nofpclass.ll

ValueTracking: Detect cases with no underflow for fadd (#177746)

In the case where both operands have the same sign,
as long as one of the operands is normal or infinity,
the result cannot underflow to a zero.

Pre-committing for #175614
DeltaFile
+50-2llvm/test/Transforms/Attributor/nofpclass.ll
+14-2llvm/lib/Support/KnownFPClass.cpp
+64-42 files