1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/test/CodeGen
Yonghong Song bd70b9a0d8 bpf: Tighten subregister definition check
The current subregister definition check stops after the MOV_32_64
instruction.

This means we are thinking all the following instruction sequences
are safe to be eliminated:

  MOV_32_64 rB, wA
  SLL_ri    rB, rB, 32
  SRL_ri    rB, rB, 32

However, this is *not* true. The source subregister wA of MOV_32_64 could
come from a implicit truncation of 64-bit register in which case the high
bits of the 64-bit register is not zeroed, therefore we can't eliminate
above sequence.

For example, for i32_val, we shouldn't do the elimination:

  long long bar ();

  int foo (int b, int c)
  {
    unsigned int i32_val = (unsigned int) bar();

    if (i32_val < 10)
      return b;
    else
      return c;
  }

Signed-off-by: Jiong Wang <jiong.wang@netronome.com>
Signed-off-by: Yonghong Song <yhs@fb.com>
llvm-svn: 327365
2018-03-13 06:47:00 +00:00
..
AArch64 [AArch64] Fold adds with tprel_lo12_nc and secrel_lo12 into a following ldr/str 2018-03-12 18:47:43 +00:00
AMDGPU [AMDGPU] Fix lowering enqueue kernel when kernel has no name 2018-03-12 16:34:06 +00:00
ARC
ARM [ARM] Fix for PR36577 2018-03-07 09:10:44 +00:00
AVR [AVR] Remove the earlyclobber flag from LDDWRdYQ 2018-03-06 11:20:25 +00:00
BPF bpf: Tighten subregister definition check 2018-03-13 06:47:00 +00:00
Generic Revert "Reapply "[DWARFv5] Emit file 0 to the line table."" 2018-03-07 16:27:44 +00:00
Hexagon [Hexagon] Fix typo in testcase 2018-03-12 18:29:47 +00:00
Inputs
Lanai
Mips [TLS] use emulated TLS if the target supports only this mode 2018-02-28 17:48:55 +00:00
MIR [MIRParser] Accept overloaded intrinsic names w/o type suffixes 2018-02-28 23:51:49 +00:00
MSP430
Nios2
NVPTX [DAGCombiner] When combining zero_extend of a truncate, only mask before extending for vectors. 2018-03-01 22:32:25 +00:00
PowerPC [PowerPC] fix tests to be independent of FP undef 2018-03-10 16:14:05 +00:00
RISCV [RISCV] Update two tests after r326208 2018-02-28 08:20:47 +00:00
SPARC Re-enable "[MachineCopyPropagation] Extend pass to do COPY source forwarding" 2018-02-27 16:59:10 +00:00
SystemZ [SystemZ] Fix test cases after r326613 2018-03-02 21:22:42 +00:00
Thumb [ARM] Fix access to stack arguments when re-aligning SP in Armv6m 2018-03-02 15:47:14 +00:00
Thumb2 ARM: Don't rewrite add reg, $sp, 0 -> mov reg, $sp if the add defines CPSR. 2018-02-27 19:00:59 +00:00
WebAssembly
WinCFGuard
WinEH
X86 [LegalizeTypes] In SplitVecOp_TruncateHelper, use GetSplitVector on the input instead of creating new extract_subvectors. 2018-03-13 01:17:40 +00:00
XCore [XCore] Return true in enableMultipleCopyHints(). 2018-02-26 08:03:32 +00:00