Skip to content

Instantly share code, notes, and snippets.

@kripken
Created March 5, 2017 02:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kripken/838b51dd22a23417ce8b04823da6fc70 to your computer and use it in GitHub Desktop.
Save kripken/838b51dd22a23417ce8b04823da6fc70 to your computer and use it in GitHub Desktop.
; Function Attrs: inlinehint norecurse nounwind
define internal fastcc void @_ZN4core3ptr14write_volatile17h89fe80f6e705ad15E(%E*, %E* noalias nocapture readonly dereferenceable(256)) unnamed_addr #2 personality i32 (...)* bitcast (i32 (i8*)* @rust_eh_personality to i32 (...)*) {
entry-block:
%src.sroa.0.sroa.0.0.src.sroa.0.0..sroa_cast.sroa_idx = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 0
%src.sroa.0.sroa.0.0.copyload = load i64, i64* %src.sroa.0.sroa.0.0.src.sroa.0.0..sroa_cast.sroa_idx, align 8
%src.sroa.0.sroa.2.0.src.sroa.0.0..sroa_cast.sroa_idx34 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 1
%src.sroa.0.sroa.2.0.copyload = load i64, i64* %src.sroa.0.sroa.2.0.src.sroa.0.0..sroa_cast.sroa_idx34, align 8
%src.sroa.0.sroa.3.0.src.sroa.0.0..sroa_cast.sroa_idx35 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 2
%src.sroa.0.sroa.3.0.copyload = load i64, i64* %src.sroa.0.sroa.3.0.src.sroa.0.0..sroa_cast.sroa_idx35, align 8
%src.sroa.0.sroa.4.0.src.sroa.0.0..sroa_cast.sroa_idx36 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 3
%src.sroa.0.sroa.4.0.copyload = load i64, i64* %src.sroa.0.sroa.4.0.src.sroa.0.0..sroa_cast.sroa_idx36, align 8
%src.sroa.0.sroa.5.0.src.sroa.0.0..sroa_cast.sroa_idx37 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 4
%src.sroa.0.sroa.5.0.copyload = load i64, i64* %src.sroa.0.sroa.5.0.src.sroa.0.0..sroa_cast.sroa_idx37, align 8
%src.sroa.0.sroa.6.0.src.sroa.0.0..sroa_cast.sroa_idx38 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 5
%src.sroa.0.sroa.6.0.copyload = load i64, i64* %src.sroa.0.sroa.6.0.src.sroa.0.0..sroa_cast.sroa_idx38, align 8
%src.sroa.0.sroa.7.0.src.sroa.0.0..sroa_cast.sroa_idx39 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 6
%src.sroa.0.sroa.7.0.copyload = load i64, i64* %src.sroa.0.sroa.7.0.src.sroa.0.0..sroa_cast.sroa_idx39, align 8
%src.sroa.0.sroa.8.0.src.sroa.0.0..sroa_cast.sroa_idx40 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 7
%src.sroa.0.sroa.8.0.copyload = load i64, i64* %src.sroa.0.sroa.8.0.src.sroa.0.0..sroa_cast.sroa_idx40, align 8
%src.sroa.0.sroa.9.0.src.sroa.0.0..sroa_cast.sroa_idx41 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 8
%src.sroa.0.sroa.9.0.copyload = load i64, i64* %src.sroa.0.sroa.9.0.src.sroa.0.0..sroa_cast.sroa_idx41, align 8
%src.sroa.0.sroa.10.0.src.sroa.0.0..sroa_cast.sroa_idx42 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 9
%src.sroa.0.sroa.10.0.copyload = load i64, i64* %src.sroa.0.sroa.10.0.src.sroa.0.0..sroa_cast.sroa_idx42, align 8
%src.sroa.0.sroa.11.0.src.sroa.0.0..sroa_cast.sroa_idx43 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 10
%src.sroa.0.sroa.11.0.copyload = load i64, i64* %src.sroa.0.sroa.11.0.src.sroa.0.0..sroa_cast.sroa_idx43, align 8
%src.sroa.0.sroa.12.0.src.sroa.0.0..sroa_cast.sroa_idx44 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 11
%src.sroa.0.sroa.12.0.copyload = load i64, i64* %src.sroa.0.sroa.12.0.src.sroa.0.0..sroa_cast.sroa_idx44, align 8
%src.sroa.0.sroa.13.0.src.sroa.0.0..sroa_cast.sroa_idx45 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 12
%src.sroa.0.sroa.13.0.copyload = load i64, i64* %src.sroa.0.sroa.13.0.src.sroa.0.0..sroa_cast.sroa_idx45, align 8
%src.sroa.0.sroa.14.0.src.sroa.0.0..sroa_cast.sroa_idx46 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 13
%src.sroa.0.sroa.14.0.copyload = load i64, i64* %src.sroa.0.sroa.14.0.src.sroa.0.0..sroa_cast.sroa_idx46, align 8
%src.sroa.0.sroa.15.0.src.sroa.0.0..sroa_cast.sroa_idx47 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 14
%src.sroa.0.sroa.15.0.copyload = load i64, i64* %src.sroa.0.sroa.15.0.src.sroa.0.0..sroa_cast.sroa_idx47, align 8
%src.sroa.0.sroa.16.0.src.sroa.0.0..sroa_cast.sroa_idx48 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 15
%src.sroa.0.sroa.16.0.copyload = load i64, i64* %src.sroa.0.sroa.16.0.src.sroa.0.0..sroa_cast.sroa_idx48, align 8
%src.sroa.0.sroa.17.0.src.sroa.0.0..sroa_cast.sroa_idx49 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 16
%src.sroa.0.sroa.17.0.copyload = load i64, i64* %src.sroa.0.sroa.17.0.src.sroa.0.0..sroa_cast.sroa_idx49, align 8
%src.sroa.0.sroa.18.0.src.sroa.0.0..sroa_cast.sroa_idx50 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 17
%src.sroa.0.sroa.18.0.copyload = load i64, i64* %src.sroa.0.sroa.18.0.src.sroa.0.0..sroa_cast.sroa_idx50, align 8
%src.sroa.0.sroa.19.0.src.sroa.0.0..sroa_cast.sroa_idx51 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 18
%src.sroa.0.sroa.19.0.copyload = load i64, i64* %src.sroa.0.sroa.19.0.src.sroa.0.0..sroa_cast.sroa_idx51, align 8
%src.sroa.0.sroa.20.0.src.sroa.0.0..sroa_cast.sroa_idx52 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 19
%src.sroa.0.sroa.20.0.copyload = load i64, i64* %src.sroa.0.sroa.20.0.src.sroa.0.0..sroa_cast.sroa_idx52, align 8
%src.sroa.0.sroa.21.0.src.sroa.0.0..sroa_cast.sroa_idx53 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 20
%src.sroa.0.sroa.21.0.copyload = load i64, i64* %src.sroa.0.sroa.21.0.src.sroa.0.0..sroa_cast.sroa_idx53, align 8
%src.sroa.0.sroa.22.0.src.sroa.0.0..sroa_cast.sroa_idx54 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 21
%src.sroa.0.sroa.22.0.copyload = load i64, i64* %src.sroa.0.sroa.22.0.src.sroa.0.0..sroa_cast.sroa_idx54, align 8
%src.sroa.0.sroa.23.0.src.sroa.0.0..sroa_cast.sroa_idx55 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 22
%src.sroa.0.sroa.23.0.copyload = load i64, i64* %src.sroa.0.sroa.23.0.src.sroa.0.0..sroa_cast.sroa_idx55, align 8
%src.sroa.0.sroa.24.0.src.sroa.0.0..sroa_cast.sroa_idx56 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 23
%src.sroa.0.sroa.24.0.copyload = load i64, i64* %src.sroa.0.sroa.24.0.src.sroa.0.0..sroa_cast.sroa_idx56, align 8
%src.sroa.0.sroa.25.0.src.sroa.0.0..sroa_cast.sroa_idx57 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 24
%src.sroa.0.sroa.25.0.copyload = load i64, i64* %src.sroa.0.sroa.25.0.src.sroa.0.0..sroa_cast.sroa_idx57, align 8
%src.sroa.0.sroa.26.0.src.sroa.0.0..sroa_cast.sroa_idx58 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 25
%src.sroa.0.sroa.26.0.copyload = load i64, i64* %src.sroa.0.sroa.26.0.src.sroa.0.0..sroa_cast.sroa_idx58, align 8
%src.sroa.0.sroa.27.0.src.sroa.0.0..sroa_cast.sroa_idx59 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 26
%src.sroa.0.sroa.27.0.copyload = load i64, i64* %src.sroa.0.sroa.27.0.src.sroa.0.0..sroa_cast.sroa_idx59, align 8
%src.sroa.0.sroa.28.0.src.sroa.0.0..sroa_cast.sroa_idx60 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 27
%src.sroa.0.sroa.28.0.copyload = load i64, i64* %src.sroa.0.sroa.28.0.src.sroa.0.0..sroa_cast.sroa_idx60, align 8
%src.sroa.0.sroa.29.0.src.sroa.0.0..sroa_cast.sroa_idx61 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 28
%src.sroa.0.sroa.29.0.copyload = load i64, i64* %src.sroa.0.sroa.29.0.src.sroa.0.0..sroa_cast.sroa_idx61, align 8
%src.sroa.0.sroa.30.0.src.sroa.0.0..sroa_cast.sroa_idx62 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 29
%src.sroa.0.sroa.30.0.copyload = load i64, i64* %src.sroa.0.sroa.30.0.src.sroa.0.0..sroa_cast.sroa_idx62, align 8
%src.sroa.0.sroa.31.0.src.sroa.0.0..sroa_cast.sroa_idx63 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 30
%src.sroa.0.sroa.31.0.copyload = load i64, i64* %src.sroa.0.sroa.31.0.src.sroa.0.0..sroa_cast.sroa_idx63, align 8
%src.sroa.0.sroa.32.0.src.sroa.0.0..sroa_cast.sroa_idx64 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 31
%src.sroa.0.sroa.32.0.copyload = load i64, i64* %src.sroa.0.sroa.32.0.src.sroa.0.0..sroa_cast.sroa_idx64, align 8
%.index = getelementptr %E, %E* %0, i32 0, i32 0
%.index.index = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 0
store volatile i64 undef, i64* %.index.index, align 8
%.index.index1 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 1
store volatile i64 undef, i64* %.index.index1, align 8
%.index.index2 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 2
store volatile i64 undef, i64* %.index.index2, align 8
%.index.index3 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 3
store volatile i64 undef, i64* %.index.index3, align 8
%.index.index4 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 4
store volatile i64 undef, i64* %.index.index4, align 8
%.index.index5 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 5
store volatile i64 undef, i64* %.index.index5, align 8
%.index.index6 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 6
store volatile i64 undef, i64* %.index.index6, align 8
%.index.index7 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 7
store volatile i64 undef, i64* %.index.index7, align 8
%.index.index8 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 8
store volatile i64 undef, i64* %.index.index8, align 8
%.index.index9 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 9
store volatile i64 undef, i64* %.index.index9, align 8
%.index.index10 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 10
store volatile i64 undef, i64* %.index.index10, align 8
%.index.index11 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 11
store volatile i64 undef, i64* %.index.index11, align 8
%.index.index12 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 12
store volatile i64 undef, i64* %.index.index12, align 8
%.index.index13 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 13
store volatile i64 undef, i64* %.index.index13, align 8
%.index.index14 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 14
store volatile i64 undef, i64* %.index.index14, align 8
%.index.index15 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 15
store volatile i64 undef, i64* %.index.index15, align 8
%.index.index16 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 16
store volatile i64 undef, i64* %.index.index16, align 8
%.index.index17 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 17
store volatile i64 undef, i64* %.index.index17, align 8
%.index.index18 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 18
store volatile i64 undef, i64* %.index.index18, align 8
%.index.index19 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 19
store volatile i64 undef, i64* %.index.index19, align 8
%.index.index20 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 20
store volatile i64 undef, i64* %.index.index20, align 8
%.index.index21 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 21
store volatile i64 undef, i64* %.index.index21, align 8
%.index.index22 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 22
store volatile i64 undef, i64* %.index.index22, align 8
%.index.index23 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 23
store volatile i64 undef, i64* %.index.index23, align 8
%.index.index24 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 24
store volatile i64 undef, i64* %.index.index24, align 8
%.index.index25 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 25
store volatile i64 undef, i64* %.index.index25, align 8
%.index.index26 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 26
store volatile i64 undef, i64* %.index.index26, align 8
%.index.index27 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 27
store volatile i64 undef, i64* %.index.index27, align 8
%.index.index28 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 28
store volatile i64 undef, i64* %.index.index28, align 8
%.index.index29 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 29
store volatile i64 undef, i64* %.index.index29, align 8
%.index.index30 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 30
store volatile i64 undef, i64* %.index.index30, align 8
%.index.index31 = getelementptr [32 x i64], [32 x i64]* %.index, i32 0, i32 31
store volatile i64 %src.sroa.0.sroa.32.0.copyload, i64* %.index.index31, align 8
ret void
}
; Function Attrs: inlinehint norecurse nounwind
define internal fastcc void @_ZN4core3ptr14write_volatile17h89fe80f6e705ad15E(%E*, %E* noalias nocapture readonly dereferenceable(256)) unnamed_addr #2 personality i32 (...)* bitcast (i32 (i8*)* @rust_eh_personality to i32 (...)*) {
entry-block:
%src.sroa.0.sroa.0.0.src.sroa.0.0..sroa_cast.sroa_idx = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 0
%src.sroa.0.sroa.0.0.copyload = load i64, i64* %src.sroa.0.sroa.0.0.src.sroa.0.0..sroa_cast.sroa_idx, align 8
%src.sroa.0.sroa.2.0.src.sroa.0.0..sroa_cast.sroa_idx34 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 1
%src.sroa.0.sroa.2.0.copyload = load i64, i64* %src.sroa.0.sroa.2.0.src.sroa.0.0..sroa_cast.sroa_idx34, align 8
%src.sroa.0.sroa.3.0.src.sroa.0.0..sroa_cast.sroa_idx35 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 2
%src.sroa.0.sroa.3.0.copyload = load i64, i64* %src.sroa.0.sroa.3.0.src.sroa.0.0..sroa_cast.sroa_idx35, align 8
%src.sroa.0.sroa.4.0.src.sroa.0.0..sroa_cast.sroa_idx36 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 3
%src.sroa.0.sroa.4.0.copyload = load i64, i64* %src.sroa.0.sroa.4.0.src.sroa.0.0..sroa_cast.sroa_idx36, align 8
%src.sroa.0.sroa.5.0.src.sroa.0.0..sroa_cast.sroa_idx37 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 4
%src.sroa.0.sroa.5.0.copyload = load i64, i64* %src.sroa.0.sroa.5.0.src.sroa.0.0..sroa_cast.sroa_idx37, align 8
%src.sroa.0.sroa.6.0.src.sroa.0.0..sroa_cast.sroa_idx38 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 5
%src.sroa.0.sroa.6.0.copyload = load i64, i64* %src.sroa.0.sroa.6.0.src.sroa.0.0..sroa_cast.sroa_idx38, align 8
%src.sroa.0.sroa.7.0.src.sroa.0.0..sroa_cast.sroa_idx39 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 6
%src.sroa.0.sroa.7.0.copyload = load i64, i64* %src.sroa.0.sroa.7.0.src.sroa.0.0..sroa_cast.sroa_idx39, align 8
%src.sroa.0.sroa.8.0.src.sroa.0.0..sroa_cast.sroa_idx40 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 7
%src.sroa.0.sroa.8.0.copyload = load i64, i64* %src.sroa.0.sroa.8.0.src.sroa.0.0..sroa_cast.sroa_idx40, align 8
%src.sroa.0.sroa.9.0.src.sroa.0.0..sroa_cast.sroa_idx41 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 8
%src.sroa.0.sroa.9.0.copyload = load i64, i64* %src.sroa.0.sroa.9.0.src.sroa.0.0..sroa_cast.sroa_idx41, align 8
%src.sroa.0.sroa.10.0.src.sroa.0.0..sroa_cast.sroa_idx42 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 9
%src.sroa.0.sroa.10.0.copyload = load i64, i64* %src.sroa.0.sroa.10.0.src.sroa.0.0..sroa_cast.sroa_idx42, align 8
%src.sroa.0.sroa.11.0.src.sroa.0.0..sroa_cast.sroa_idx43 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 10
%src.sroa.0.sroa.11.0.copyload = load i64, i64* %src.sroa.0.sroa.11.0.src.sroa.0.0..sroa_cast.sroa_idx43, align 8
%src.sroa.0.sroa.12.0.src.sroa.0.0..sroa_cast.sroa_idx44 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 11
%src.sroa.0.sroa.12.0.copyload = load i64, i64* %src.sroa.0.sroa.12.0.src.sroa.0.0..sroa_cast.sroa_idx44, align 8
%src.sroa.0.sroa.13.0.src.sroa.0.0..sroa_cast.sroa_idx45 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 12
%src.sroa.0.sroa.13.0.copyload = load i64, i64* %src.sroa.0.sroa.13.0.src.sroa.0.0..sroa_cast.sroa_idx45, align 8
%src.sroa.0.sroa.14.0.src.sroa.0.0..sroa_cast.sroa_idx46 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 13
%src.sroa.0.sroa.14.0.copyload = load i64, i64* %src.sroa.0.sroa.14.0.src.sroa.0.0..sroa_cast.sroa_idx46, align 8
%src.sroa.0.sroa.15.0.src.sroa.0.0..sroa_cast.sroa_idx47 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 14
%src.sroa.0.sroa.15.0.copyload = load i64, i64* %src.sroa.0.sroa.15.0.src.sroa.0.0..sroa_cast.sroa_idx47, align 8
%src.sroa.0.sroa.16.0.src.sroa.0.0..sroa_cast.sroa_idx48 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 15
%src.sroa.0.sroa.16.0.copyload = load i64, i64* %src.sroa.0.sroa.16.0.src.sroa.0.0..sroa_cast.sroa_idx48, align 8
%src.sroa.0.sroa.17.0.src.sroa.0.0..sroa_cast.sroa_idx49 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 16
%src.sroa.0.sroa.17.0.copyload = load i64, i64* %src.sroa.0.sroa.17.0.src.sroa.0.0..sroa_cast.sroa_idx49, align 8
%src.sroa.0.sroa.18.0.src.sroa.0.0..sroa_cast.sroa_idx50 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 17
%src.sroa.0.sroa.18.0.copyload = load i64, i64* %src.sroa.0.sroa.18.0.src.sroa.0.0..sroa_cast.sroa_idx50, align 8
%src.sroa.0.sroa.19.0.src.sroa.0.0..sroa_cast.sroa_idx51 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 18
%src.sroa.0.sroa.19.0.copyload = load i64, i64* %src.sroa.0.sroa.19.0.src.sroa.0.0..sroa_cast.sroa_idx51, align 8
%src.sroa.0.sroa.20.0.src.sroa.0.0..sroa_cast.sroa_idx52 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 19
%src.sroa.0.sroa.20.0.copyload = load i64, i64* %src.sroa.0.sroa.20.0.src.sroa.0.0..sroa_cast.sroa_idx52, align 8
%src.sroa.0.sroa.21.0.src.sroa.0.0..sroa_cast.sroa_idx53 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 20
%src.sroa.0.sroa.21.0.copyload = load i64, i64* %src.sroa.0.sroa.21.0.src.sroa.0.0..sroa_cast.sroa_idx53, align 8
%src.sroa.0.sroa.22.0.src.sroa.0.0..sroa_cast.sroa_idx54 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 21
%src.sroa.0.sroa.22.0.copyload = load i64, i64* %src.sroa.0.sroa.22.0.src.sroa.0.0..sroa_cast.sroa_idx54, align 8
%src.sroa.0.sroa.23.0.src.sroa.0.0..sroa_cast.sroa_idx55 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 22
%src.sroa.0.sroa.23.0.copyload = load i64, i64* %src.sroa.0.sroa.23.0.src.sroa.0.0..sroa_cast.sroa_idx55, align 8
%src.sroa.0.sroa.24.0.src.sroa.0.0..sroa_cast.sroa_idx56 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 23
%src.sroa.0.sroa.24.0.copyload = load i64, i64* %src.sroa.0.sroa.24.0.src.sroa.0.0..sroa_cast.sroa_idx56, align 8
%src.sroa.0.sroa.25.0.src.sroa.0.0..sroa_cast.sroa_idx57 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 24
%src.sroa.0.sroa.25.0.copyload = load i64, i64* %src.sroa.0.sroa.25.0.src.sroa.0.0..sroa_cast.sroa_idx57, align 8
%src.sroa.0.sroa.26.0.src.sroa.0.0..sroa_cast.sroa_idx58 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 25
%src.sroa.0.sroa.26.0.copyload = load i64, i64* %src.sroa.0.sroa.26.0.src.sroa.0.0..sroa_cast.sroa_idx58, align 8
%src.sroa.0.sroa.27.0.src.sroa.0.0..sroa_cast.sroa_idx59 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 26
%src.sroa.0.sroa.27.0.copyload = load i64, i64* %src.sroa.0.sroa.27.0.src.sroa.0.0..sroa_cast.sroa_idx59, align 8
%src.sroa.0.sroa.28.0.src.sroa.0.0..sroa_cast.sroa_idx60 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 27
%src.sroa.0.sroa.28.0.copyload = load i64, i64* %src.sroa.0.sroa.28.0.src.sroa.0.0..sroa_cast.sroa_idx60, align 8
%src.sroa.0.sroa.29.0.src.sroa.0.0..sroa_cast.sroa_idx61 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 28
%src.sroa.0.sroa.29.0.copyload = load i64, i64* %src.sroa.0.sroa.29.0.src.sroa.0.0..sroa_cast.sroa_idx61, align 8
%src.sroa.0.sroa.30.0.src.sroa.0.0..sroa_cast.sroa_idx62 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 29
%src.sroa.0.sroa.30.0.copyload = load i64, i64* %src.sroa.0.sroa.30.0.src.sroa.0.0..sroa_cast.sroa_idx62, align 8
%src.sroa.0.sroa.31.0.src.sroa.0.0..sroa_cast.sroa_idx63 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 30
%src.sroa.0.sroa.31.0.copyload = load i64, i64* %src.sroa.0.sroa.31.0.src.sroa.0.0..sroa_cast.sroa_idx63, align 8
%src.sroa.0.sroa.32.0.src.sroa.0.0..sroa_cast.sroa_idx64 = getelementptr inbounds %E, %E* %1, i32 0, i32 0, i32 31
%src.sroa.0.sroa.32.0.copyload = load i64, i64* %src.sroa.0.sroa.32.0.src.sroa.0.0..sroa_cast.sroa_idx64, align 8
%.fca.0.0.insert = insertvalue %E undef, i64 %src.sroa.0.sroa.0.0.copyload, 0, 0
%.fca.0.1.insert = insertvalue %E %.fca.0.0.insert, i64 %src.sroa.0.sroa.2.0.copyload, 0, 1
%.fca.0.2.insert = insertvalue %E %.fca.0.1.insert, i64 %src.sroa.0.sroa.3.0.copyload, 0, 2
%.fca.0.3.insert = insertvalue %E %.fca.0.2.insert, i64 %src.sroa.0.sroa.4.0.copyload, 0, 3
%.fca.0.4.insert = insertvalue %E %.fca.0.3.insert, i64 %src.sroa.0.sroa.5.0.copyload, 0, 4
%.fca.0.5.insert = insertvalue %E %.fca.0.4.insert, i64 %src.sroa.0.sroa.6.0.copyload, 0, 5
%.fca.0.6.insert = insertvalue %E %.fca.0.5.insert, i64 %src.sroa.0.sroa.7.0.copyload, 0, 6
%.fca.0.7.insert = insertvalue %E %.fca.0.6.insert, i64 %src.sroa.0.sroa.8.0.copyload, 0, 7
%.fca.0.8.insert = insertvalue %E %.fca.0.7.insert, i64 %src.sroa.0.sroa.9.0.copyload, 0, 8
%.fca.0.9.insert = insertvalue %E %.fca.0.8.insert, i64 %src.sroa.0.sroa.10.0.copyload, 0, 9
%.fca.0.10.insert = insertvalue %E %.fca.0.9.insert, i64 %src.sroa.0.sroa.11.0.copyload, 0, 10
%.fca.0.11.insert = insertvalue %E %.fca.0.10.insert, i64 %src.sroa.0.sroa.12.0.copyload, 0, 11
%.fca.0.12.insert = insertvalue %E %.fca.0.11.insert, i64 %src.sroa.0.sroa.13.0.copyload, 0, 12
%.fca.0.13.insert = insertvalue %E %.fca.0.12.insert, i64 %src.sroa.0.sroa.14.0.copyload, 0, 13
%.fca.0.14.insert = insertvalue %E %.fca.0.13.insert, i64 %src.sroa.0.sroa.15.0.copyload, 0, 14
%.fca.0.15.insert = insertvalue %E %.fca.0.14.insert, i64 %src.sroa.0.sroa.16.0.copyload, 0, 15
%.fca.0.16.insert = insertvalue %E %.fca.0.15.insert, i64 %src.sroa.0.sroa.17.0.copyload, 0, 16
%.fca.0.17.insert = insertvalue %E %.fca.0.16.insert, i64 %src.sroa.0.sroa.18.0.copyload, 0, 17
%.fca.0.18.insert = insertvalue %E %.fca.0.17.insert, i64 %src.sroa.0.sroa.19.0.copyload, 0, 18
%.fca.0.19.insert = insertvalue %E %.fca.0.18.insert, i64 %src.sroa.0.sroa.20.0.copyload, 0, 19
%.fca.0.20.insert = insertvalue %E %.fca.0.19.insert, i64 %src.sroa.0.sroa.21.0.copyload, 0, 20
%.fca.0.21.insert = insertvalue %E %.fca.0.20.insert, i64 %src.sroa.0.sroa.22.0.copyload, 0, 21
%.fca.0.22.insert = insertvalue %E %.fca.0.21.insert, i64 %src.sroa.0.sroa.23.0.copyload, 0, 22
%.fca.0.23.insert = insertvalue %E %.fca.0.22.insert, i64 %src.sroa.0.sroa.24.0.copyload, 0, 23
%.fca.0.24.insert = insertvalue %E %.fca.0.23.insert, i64 %src.sroa.0.sroa.25.0.copyload, 0, 24
%.fca.0.25.insert = insertvalue %E %.fca.0.24.insert, i64 %src.sroa.0.sroa.26.0.copyload, 0, 25
%.fca.0.26.insert = insertvalue %E %.fca.0.25.insert, i64 %src.sroa.0.sroa.27.0.copyload, 0, 26
%.fca.0.27.insert = insertvalue %E %.fca.0.26.insert, i64 %src.sroa.0.sroa.28.0.copyload, 0, 27
%.fca.0.28.insert = insertvalue %E %.fca.0.27.insert, i64 %src.sroa.0.sroa.29.0.copyload, 0, 28
%.fca.0.29.insert = insertvalue %E %.fca.0.28.insert, i64 %src.sroa.0.sroa.30.0.copyload, 0, 29
%.fca.0.30.insert = insertvalue %E %.fca.0.29.insert, i64 %src.sroa.0.sroa.31.0.copyload, 0, 30
%.fca.0.31.insert = insertvalue %E %.fca.0.30.insert, i64 %src.sroa.0.sroa.32.0.copyload, 0, 31
store volatile %E %.fca.0.31.insert, %E* %0, align 8
ret void
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment