[PATCH] D37858: [X86] Don't create i64 constants on 32-bit targets when lowering v64i1 constant build vectors
Simon Pilgrim via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 15 03:17:42 PDT 2017
RKSimon accepted this revision.
RKSimon added a comment.
This revision is now accepted and ready to land.
LGTM with some minor observations.
================
Comment at: lib/Target/X86/X86ISelLowering.cpp:7029
+ Upper = LowerBUILD_VECTORvXi1(Upper, DAG);
+ return DAG.getNode(ISD::CONCAT_VECTORS, dl, MVT::v64i1, Lower, Upper);
+ }
----------------
Not sure if it'll work but can you re-use LowerVectorIntUnary to do this? We seem to have a lot of 'split+2*op+concat' patterns/helpers.
================
Comment at: test/CodeGen/X86/pr34605.ll:4
+
+ at a = common local_unnamed_addr global [512 x i8] zeroinitializer, align 1
+
----------------
Is this used in the test? I couldn't see it.
================
Comment at: test/CodeGen/X86/pr34605.ll:6
+
+define void @pr34605(i8* nocapture %s, i32 %p, i32 %len) {
+; CHECK-LABEL: pr34605:
----------------
Is %len used in the test? I couldn't see it.
https://reviews.llvm.org/D37858
More information about the llvm-commits
mailing list