On 14 August 2017 at 00:40, Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> wrote: > On Mon, Aug 14, 2017 at 1:35 AM, Dibyendu Majumdar > <mobile@xxxxxxxxxxxxxxx> wrote: >> >> I am not really sure I understand. In dmrC I get following LLVM output >> for above: >> ; ModuleID = 'out.bc' >> source_filename = "dmrC" >> >> @a = global i8 0, align 1 >> @b = global i8 0, align 1 >> >> ; Function Attrs: argmemonly nounwind >> declare void @llvm.memset.p0i8.i32(i8* nocapture writeonly, i8, i32, i32, i1) #0 >> >> define void @c() { >> L0: >> %R1 = load i8, i8* @a >> %R2 = sext i8 %R1 to i32 >> %R3 = and i32 %R2, 1 >> %R31 = trunc i32 %R3 to i8 >> store i8 %R31, i8* @b >> ret void >> } >> >> attributes #0 = { argmemonly nounwind } >> >> >> What do you get? > > Nothing at all since I get LLVM error: > Invalid bitcast > %R31 = bitcast i32 %R3 to i8 > > I suppose you must have some fixes I haven't or > one of my other fixes created this problem. > I even think I now know which one. > I have more fixes (I reported all the issues on the mailing list). I think I have got to the point that I find most issues are now with Sparse IR not LLVM backend. Regards -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html