DeveloperPolicy: Add note about legacy bitcode performance (#174720)
Note that bitcode does not attempt to guarantee performance
parity with upgraded bitcode.
[mlir][acc] Add OffloadLiveInValueCanonicalization pass (#174671)
Introduce a pass to canonicalize live-in values for regions that will be
outlined for device execution.
When a region is outlined, values defined outside but used inside become
arguments to the outlined function. However, some values cannot or
should not be passed as arguments:
- Synthetic types (shape metadata, field indices)
- Constants better recreated inside the region
- Address-of operations for device-resident globals
This pass identifies such values and either sinks the defining operation
into the region (when all uses are inside) or clones it inside (when
uses exist both inside and outside).
To identify target regions in a dialect-agnostic way, this patch
introduces `OffloadRegionOpInterface`. This marker interface allows the
pass to work uniformly across OpenACC compute constructs, GPU
[11 lines not shown]
[VPlan] Merge cases inferring type of operand 0 (NFC).
Merge all cases that infer the scalar type of operand 0 in
inferScalarTypeForRecipe(const VPInstruction).
[SLP]Update deps for copyables operands, if the user is used several times in node
If the user instruction is used several times in the node, and in one
cases its operand is copyable, but in another is not, need to check all
operands to be sure we do not miss scheduling
Precommit test for PR #171012 (#171013)
This patch precommits a test where base offsets are negative. PR
[171012](https://github.com/llvm/llvm-project/pull/171012 ) will
eliminate negative offsets by sorting the scratch instructions.
[AMDGPU] Handle `s_setreg_imm32_b32` targeting `MODE` register
On certain hardware, this instruction clobbers VGPR MSB `bits[12:19]`, so we need to restore the current mode.
[flang] Add traits to several AST nodes, NFC
There are quite a few AST nodes that don't have any of the standard
traits (Wrapper/Tuple/etc). Because of that they require special
handling in the parse tree visitor.
Convert a subset of these nodes to the typical format, and remove
the special cases from the parse tree visitor.
[lldb] skip the python interactive I/O test on windows (#175055)
There is no indication this ever worked on windows as this is the first
test that checks python interactive console from a file.
Looking at the error from the CI, It closed the interpreter before
running any python commands.
Will reconfirm this when I have access to a windows machine.
From https://github.com/llvm/llvm-project/pull/174216
[EarlyIfConversion] Fix loop invariant operands check (#174765)
Fixes a bug in the check which prevented walking up the operands
of the branch condition beyond the operands to the branch instruction
itself.
[TableGen] Support RegClassByHwMode in CompressPat
This does not yet handle all cases but at least for the simple
cases such as:
```
def : CompressPat<(PTR_MOV PtrRC:$dst, PtrRC:$src),
(PTR_MOV_SMALL PtrRC:$dst, PtrRC:$src)>;
```
tablegen generates sensible code instead of emitting confusing errors.
Reviewed By: arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/171061
[lldb] Repair lldb-dotest's framework path (#174658)
lldb-dotest was likely getting LLDB_FRAMEWORK_DIR from another place
before. Now it's undefined when lldb-dotest is configured, so it's an
empty string. Some API tests will fail to link against LLDB.
[flang][NFC] Converted five tests from old lowering to new lowering (part 4) (#174906)
From this point on, the conversion is done to HLFIR, not to FIR.
Tests converted in Lower: allocatables.f90,
allocate-source-pointers.f90, array-constructor-2.f90,
array-elemental-calls-3.f90, array-elemental-calls.f90