This is an archive of the discontinued LLVM Phabricator instance.

Testcase for PR31593
ClosedPublic

Authored by kromanova on May 21 2018, 1:45 AM.

Details

Summary

I added a testcase for PR31593. A patch (r291535) that fixed this bug didn't have a testcase.

If you run the testcase with the compiler between r291120 that introduced the problem and r291535 that fixed the problem,
you'll get the following error:

FAIL: LLVM :: CodeGen/X86/pr31593.ll (10654 of 19223)
******************** TEST 'LLVM :: CodeGen/X86/pr31593.ll' FAILED ********************
Script:
--
ngh/ToT/build/./bin/llc < ngh/ToT/llvm/test/CodeGen/X86/pr31593.ll -mtriple=x86_64-unknown -mattr=sse4.1 -o /dev/null
--
Exit Code: 1

Command Output (stderr):
--
LLVM ERROR: Cannot select: t14: v2i64 = zero_extend_vector_inreg t18
  t18: v4i32 = bitcast t17
    t17: v2i64,ch = load<LD16[%0](dereferenceable)> t0, FrameIndex:i64<1>, undef:i64
      t1: i64 = FrameIndex<1>
      t3: i64 = undef
In function: _Z3foov

Diff Detail

Repository
rL LLVM

Event Timeline

kromanova created this revision.May 21 2018, 1:45 AM
kromanova edited the summary of this revision. (Show Details)May 21 2018, 1:54 AM
kromanova edited the summary of this revision. (Show Details)
craig.topper added inline comments.May 21 2018, 12:41 PM
test/CodeGen/X86/pr31593.ll
16 ↗(On Diff #147743)

Is this functino needed? It doesn't seem to be called.

kromanova updated this revision to Diff 148102.May 22 2018, 2:36 PM

Good catch, thank you Craig! Did you know that you can reduce LLVM IR better than Delta? :)
Delta reduced the testcase quite well, but failed to remove this function.

kromanova marked an inline comment as done.May 22 2018, 2:37 PM
davide added a subscriber: davide.May 22 2018, 2:41 PM

Good catch, thank you Craig! Did you know that you can reduce LLVM IR better than Delta? :)
Delta reduced the testcase quite well, but failed to remove this function.

bugpoint.

This revision is now accepted and ready to land.May 23 2018, 11:42 AM
This revision was automatically updated to reflect the committed changes.