FailedChanges

Summary

  1. Add flang-x86_64-windows builder. (details)
Commit c406b636839cf07367241c224da3c0207c1396a3 by llvm-zorg
Add flang-x86_64-windows builder.

Add a buildbot to compile flang using msvc. Due to msvc doing some things differently than other compilers, the msvc flang build breaks regularly. This builder will notify committers if their change causes the build to break.

However, the tests never completed successfully on Windows, partially because many tests require a UNIX shell (see D89368). To not constantly fail, tests failures only trigger a warning, until all tests are fixed as well.

Currently running here: http://meinersbur.de:8011/#/builders/146

Reviewed By: gkistanova

Differential Revision: https://reviews.llvm.org/D103199
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)

Summary

  1. Revert "[NFC] Remove checking pointee type for byval/preallocated type" (details)
  2. [AArch64][GISel] and+or+shl => bfi (details)
  3. [GISel] Eliminate redundant bitmasking (details)
  4. [libc++] Make sure std::allocator<void> is always trivial (details)
  5. RISCV: clean up target expression handling (details)
  6. [ScalarEvolution] Fix pointer/int type handling converting select/phi to min/max. (details)
  7. [DFSan] Cleanup code for platforms other than Linux x86_64. (details)
  8. [PartiallyInlineLibCalls] Disable sqrt expansion for strictfp. (details)
  9. [InstrProfiling] Make __profd_ unconditionally private for ELF (details)
  10. Revert "[DFSan] Cleanup code for platforms other than Linux x86_64." (details)
  11. [Attributor] Derive AACallEdges attribute (details)
  12. [NFC][SimpleLoopUnswitch] unswitchTrivialBranch(): add debug output explaining unswitching failure (details)
  13. [lldb-vscode] remove failed test (details)
  14. [trace][intel-pt] Create basic SB API (details)
  15. [lld][WebAssembly] Fix crash calling weakly undefined function in PIC code (details)
Commit 9ac7388e3dd578e9a27b6fe8ab4802da39d2999e by jgorbe
Revert "[NFC] Remove checking pointee type for byval/preallocated type"

This reverts commit 738abfdbea21acd2597d83ad3390daf5696b6d07.
The file was modifiedllvm/include/llvm/IR/InstrTypes.h
Commit 7b0612088289e4f57e089a792c5e6d1123a2b6e3 by jonathan_roelofs
[AArch64][GISel] and+or+shl => bfi

This fixes a GISEL vs SDAG regression that showed up at -Os in 256.bzip2

In `_getAndMoveToFrontDecode`:

gisel:
```
and w9, w0, #0xff
orr w9, w9, w8, lsl #8
```

sdag:
```
bfi w0, w8, #8, #24
```

Differential revision: https://reviews.llvm.org/D103291
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-bitfield-insert.ll
Commit a2ab765029dd76756e98851847e6675795a973b6 by jonathan_roelofs
[GISel] Eliminate redundant bitmasking

This was a GISel vs SDAG regression that showed up at -Os on arm64 in:
SingleSource/Benchmarks/Adobe-C++/simple_types_constant_folding.test

https://llvm.godbolt.org/z/aecjodsjG

Differential revision: https://reviews.llvm.org/D103334
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/opt-overlapping-and.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
Commit 71e4d434dc83b02a853712a5cb026ee2fa9ba67f by Louis Dionne
[libc++] Make sure std::allocator<void> is always trivial

When we removed the allocator<void> specialization, the triviality of
std::allocator<void> changed because the primary template had a
non-trivial default constructor and the specialization didn't
(so std::allocator<void> went from trivial to non-trivial).

This commit fixes that oversight by giving a trivial constructor to
the primary template when instantiated on cv-void.

This was reported in https://llvm.org/PR50299.

Differential Revision: https://reviews.llvm.org/D104398
The file was modifiedlibcxx/include/__memory/allocator.h
The file was addedlibcxx/test/libcxx/memory/allocator_void.trivial.compile.pass.cpp
Commit 116841c623747972d0ae80239d3ea7b8409b868b by Saleem Abdulrasool
RISCV: clean up target expression handling

The target specific expression handling was slightly regressed by
bbea64250f65480d787e1c5ff45c4de3ec2dcda8.  This restores the proper
sub-expression evaluation to allow for constant folding within the
expression.  We explicitly discard the layout and assembler when
evaluating the expression to avoid any symbolic computation and instead
using the `evaluateAsRelocatable` to canonicalise and constant fold
only.

We can also simplify the expression handling - none of the target
variants support symbolic difference.  This simplifies the logic for
that and adds additional tests to ensure that we do not accidentally
regress here in the future.

Reviewed By: maskray

Differential Revision: https://reviews.llvm.org/D104473
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
The file was addedllvm/test/MC/RISCV/expressions.s
Commit 8a567e5f22a6d76ce076cf4305fe5c7cbff50fe0 by efriedma
[ScalarEvolution] Fix pointer/int type handling converting select/phi to min/max.

The old version of this code would blindly perform arithmetic without
paying attention to whether the types involved were pointers or
integers.  This could lead to weird expressions like negating a pointer.

Explicitly handle simple cases involving pointers, like "x < y ? x : y".
In all other cases, coerce the operands of the comparison to integer
types.  This avoids the weird cases, while handling most of the
interesting cases.

Differential Revision: https://reviews.llvm.org/D103660
The file was modifiedllvm/test/Analysis/ScalarEvolution/pr46786.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/pr45835.ll
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/unittests/Transforms/Utils/ScalarEvolutionExpanderTest.cpp
Commit 8441b993bdba29437b296bad6a37464669eef35e by browneee
[DFSan] Cleanup code for platforms other than Linux x86_64.

These other platforms are unsupported and untested.
They could be re-added later based on MSan code.

Reviewed By: gbalats, stephan.yichao.zhao

Differential Revision: https://reviews.llvm.org/D104481
The file was modifiedcompiler-rt/lib/dfsan/dfsan.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was modifiedcompiler-rt/lib/dfsan/dfsan_platform.h
The file was removedllvm/test/Instrumentation/DataFlowSanitizer/external_mask.ll
Commit 99e95856fb785cb22d898e963a54e8d9a8459fc7 by craig.topper
[PartiallyInlineLibCalls] Disable sqrt expansion for strictfp.

This pass emits a floating point compare and a conditional branch,
but if strictfp is enabled we don't emit a constrained compare
intrinsic.

The backend also won't expand the readonly sqrt call this pass inserts
to a sqrt instruction under strictfp. So we end up with 2 libcalls as
seen here. https://godbolt.org/z/oax5zMEWd

Fix these things by disabling the pass.

Differential Revision: https://reviews.llvm.org/D104479
The file was addedllvm/test/Transforms/PartiallyInlineLibCalls/strictfp.ll
The file was modifiedllvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp
Commit 76d0747e0807307780ba84cbd7e5c80b20c26bd7 by i
[InstrProfiling] Make __profd_ unconditionally private for ELF

For ELF, since all counters/data are in a section group (either `comdat any` or
`comdat noduplicates`), and the signature for `comdat any` is `__profc_`, the
D1003372 optimization prerequisite (linker GC cannot discard data variables
while the text section is retained) is always satisified, we can make __profd_
unconditionally private.

Reviewed By: davidxl, rnk

Differential Revision: https://reviews.llvm.org/D103717
The file was modifiedllvm/test/Transforms/PGOProfile/indirect_call_profile.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
Commit 39295e92f7f991a745743dd2c888f0a774047f2a by browneee
Revert "[DFSan] Cleanup code for platforms other than Linux x86_64."

This reverts commit 8441b993bdba29437b296bad6a37464669eef35e.

Buildbot failures.
The file was modifiedcompiler-rt/lib/dfsan/dfsan.cpp
The file was addedllvm/test/Instrumentation/DataFlowSanitizer/external_mask.ll
The file was modifiedcompiler-rt/lib/dfsan/dfsan_platform.h
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
Commit eaf1b6810ce0f40008b2b1d902750eafa3e198d3 by kuterdinel
[Attributor] Derive AACallEdges attribute

This attribute computes the optimistic live call edges using the attributor
liveness information. This attribute will be used for deriving a
inter-procedural function reachability attribute.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D104059
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was addedllvm/test/Transforms/Attributor/callgraph.ll
Commit 84eeb82888a033bd02b53023f9408760fc86bd81 by lebedev.ri
[NFC][SimpleLoopUnswitch] unswitchTrivialBranch(): add debug output explaining unswitching failure

It's not prohibitively verbose, and allows easier understanding
why certain unswitching ultimately wasn't performed.
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
Commit c1360fd5fced42ea45ce1eacbf1c5e1ed54fcac5 by walter erquinigo
[lldb-vscode] remove failed test

Found in http://green.lab.llvm.org/green/job/lldb-cmake/32891/testReport/lldb-api/tools_lldb-vscode_launch/TestVSCode_launch_py/

the lldb-vscode changed and that test makes no sense anymore
The file was modifiedlldb/test/API/tools/lldb-vscode/launch/TestVSCode_launch.py
Commit bf9f21a28be171dc500cc68b4cb1fcd3fc33f229 by walter erquinigo
[trace][intel-pt] Create basic SB API

This adds a basic SB API for creating and stopping traces.
Note: This doesn't add any APIs for inspecting individual instructions. That'd be a more complicated change and it might be better to enhande the dump functionality to output the data in binary format. I'll leave that for a later diff.

This also enhances the existing tests so that they test the same flow using both the command interface and the SB API.

I also did some cleanup of legacy code.

Differential Revision: https://reviews.llvm.org/D103500
The file was modifiedlldb/include/lldb/API/SBThread.h
The file was modifiedlldb/source/Plugins/Process/Linux/IntelPTManager.cpp
The file was modifiedlldb/include/lldb/API/LLDB.h
The file was modifiedlldb/include/lldb/API/SBTrace.h
The file was modifiedlldb/test/API/commands/trace/TestTraceStartStop.py
The file was modifiedlldb/bindings/interface/SBStructuredData.i
The file was modifiedlldb/test/API/commands/trace/TestTraceSchema.py
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.py
The file was modifiedlldb/docs/.htaccess
The file was modifiedlldb/source/Target/Target.cpp
The file was modifiedlldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h
The file was modifiedlldb/test/API/commands/trace/TestTraceDumpInstructions.py
The file was removedlldb/include/lldb/Utility/TraceOptions.h
The file was modifiedlldb/source/API/CMakeLists.txt
The file was modifiedlldb/include/lldb/lldb-forward.h
The file was modifiedlldb/source/Plugins/Trace/intel-pt/TraceIntelPTSessionFileParser.cpp
The file was modifiedlldb/include/lldb/API/SBProcess.h
The file was modifiedlldb/source/API/SBTrace.cpp
The file was modifiedlldb/source/Plugins/Trace/intel-pt/TraceIntelPT.cpp
The file was modifiedlldb/source/Commands/CommandObjectThreadUtil.h
The file was modifiedlldb/source/API/SBStructuredData.cpp
The file was modifiedlldb/source/Plugins/Trace/intel-pt/TraceIntelPTOptions.td
The file was modifiedlldb/test/API/commands/trace/multiple-threads/TestTraceStartStopMultipleThreads.py
The file was modifiedlldb/include/lldb/API/SBTarget.h
The file was modifiedlldb/bindings/interface/SBTrace.i
The file was modifiedlldb/docs/lldb-gdb-remote.txt
The file was modifiedlldb/bindings/interface/SBProcess.i
The file was modifiedlldb/source/API/SBReproducer.cpp
The file was modifiedlldb/include/lldb/Target/Process.h
The file was modifiedlldb/source/API/SBTarget.cpp
The file was addedlldb/source/Plugins/Trace/intel-pt/TraceIntelPTConstants.h
The file was modifiedlldb/include/lldb/Utility/TraceGDBRemotePackets.h
The file was modifiedlldb/source/Plugins/Trace/intel-pt/CommandObjectTraceStartIntelPT.h
The file was addedlldb/packages/Python/lldbsuite/test/tools/intelpt/intelpt_testcase.py
The file was modifiedlldb/bindings/interfaces.swig
The file was modifiedlldb/include/lldb/API/SBStructuredData.h
The file was modifiedlldb/docs/design/overview.rst
The file was modifiedlldb/bindings/headers.swig
The file was modifiedlldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
The file was removedlldb/bindings/interface/SBTraceOptions.i
The file was modifiedlldb/include/lldb/Target/Trace.h
The file was modifiedlldb/source/Commands/CommandObjectProcess.cpp
The file was modifiedlldb/include/lldb/Target/Target.h
The file was modifiedlldb/source/Commands/CommandObjectThread.cpp
The file was modifiedlldb/test/API/commands/trace/TestTraceLoad.py
The file was modifiedlldb/include/lldb/API/SBDefines.h
The file was modifiedlldb/source/API/SBProcess.cpp
The file was modifiedlldb/source/Plugins/Trace/intel-pt/CommandObjectTraceStartIntelPT.cpp
The file was modifiedlldb/source/Target/Trace.cpp
The file was removedlldb/source/API/SBTraceOptions.cpp
The file was modifiedlldb/bindings/interface/SBTarget.i
The file was modifiedlldb/source/Commands/CommandObjectTrace.cpp
The file was removedlldb/include/lldb/API/SBTraceOptions.h
Commit d01e673a9f046913070bd950183480c9bd15956b by sbc
[lld][WebAssembly] Fix crash calling weakly undefined function in PIC code

Differential Revision: https://reviews.llvm.org/D104495
The file was modifiedlld/test/wasm/weak-undefined-pic.s
The file was modifiedlld/wasm/InputChunks.cpp
The file was modifiedlld/wasm/Writer.cpp

Summary

  1. Add flang-x86_64-windows builder. (details)
Commit c406b636839cf07367241c224da3c0207c1396a3 by llvm-zorg
Add flang-x86_64-windows builder.

Add a buildbot to compile flang using msvc. Due to msvc doing some things differently than other compilers, the msvc flang build breaks regularly. This builder will notify committers if their change causes the build to break.

However, the tests never completed successfully on Windows, partially because many tests require a UNIX shell (see D89368). To not constantly fail, tests failures only trigger a warning, until all tests are fixed as well.

Currently running here: http://meinersbur.de:8011/#/builders/146

Reviewed By: gkistanova

Differential Revision: https://reviews.llvm.org/D103199
The file was modifiedbuildbot/osuosl/master/config/workers.py
The file was modifiedbuildbot/osuosl/master/config/builders.py