summaryrefslogtreecommitdiff
path: root/docs/ReleaseNotes.rst
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2013-12-20 04:29:56 +0000
committerBill Wendling <isanbard@gmail.com>2013-12-20 04:29:56 +0000
commit2ca55e9ced49ee958be65020998e95c6019e42ab (patch)
treeb42394ae9021f036c3665a2aa52a50529f6ea3be /docs/ReleaseNotes.rst
parentb95f36183ccbb26154accc99fd304f6e04075682 (diff)
downloadllvm-2ca55e9ced49ee958be65020998e95c6019e42ab.tar.gz
llvm-2ca55e9ced49ee958be65020998e95c6019e42ab.tar.bz2
llvm-2ca55e9ced49ee958be65020998e95c6019e42ab.tar.xz
Merging r197492:
------------------------------------------------------------------------ r197492 | dyatkovskiy | 2013-12-17 04:07:33 -0800 (Tue, 17 Dec 2013) | 26 lines Fix for PR18045: http://llvm.org/bugs/show_bug.cgi?id=18045 Short issue description: For X86 machines with sse < sse4.1 we got failures for some particular load/store vector sequences: $ clang-trunk -m32 -O2 test-case.c fatal error: error in backend: Cannot select: 0x4200920: v4i32,ch = load 0x41d6ab0, 0x4205850, 0x41dcb10<LD16[getelementptr inbounds ([4 x i32]* @e, i32 0, i32 0)](align=4)> [ORD=82] [ID=58] 0x4205850: i32 = X86ISD::Wrapper 0x41d5490 [ORD=26] [ID=43] 0x41d5490: i32 = TargetGlobalAddress<[4 x i32]* @e> 0 [ORD=26] [ID=23] 0x41dcb10: i32 = undef [ID=2] The reason is that EltsFromConsecutiveLoads could emit such load instruction both before and after legalize stage. Though this instruction is not legal for machines with SSSE3 and lower. The fix: In EltsFromConsecutiveLoads, if we have passed legalize stage, we check whether nodes it emits are legal. P.S.: If you get failure in time from 12:00 and till 22:00 (UTC-8), perhaps I'll slow with response, so you better reject this commit. Thanks! ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@197779 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/ReleaseNotes.rst')
0 files changed, 0 insertions, 0 deletions