; ModuleID = 'tango.net.ftp.FtpClient.bc'
target datalayout = "E-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f128:64:128"
target triple = "powerpc-apple-darwin9.6.0"
- type { i32, i32, i8*, i32, %tango.net.Socket.timeval } ; type %0
- type { i8*, i32 (i8*, %"tango.text.Regex.List!(TNFAFragment).List.Element"**)* } ; type %1
- type { %object.Interface*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i8*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.Conduit*)*, i8*, i8*, i1 (%tango.io.device.Conduit.Conduit*)*, i8*, void (%tango.io.device.Conduit.Conduit*, %"byte[]")* } ; type %2
- type { %object.Interface*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i8*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*)* } ; type %3
- type { %object.Interface*, i64 (%tango.io.device.Array.Array*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Array.Array*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Array.Array*)*, %"byte[]" (%tango.io.device.Array.Array*)*, i1 (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Array.Array*)*, void (%tango.io.device.Conduit.Conduit*, %"byte[]")* } ; type %4
- type { %object.Interface*, i64 (%tango.io.device.Array.Array*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Array.Array*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*)* } ; type %5
- type { %object.Interface*, i64 (%tango.io.device.Array.Array*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Array.Array*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.Conduit*)*, %"byte[]" (%tango.io.device.Array.Array*)*, i1 (%tango.io.device.Array.Array*, %"uint delegate(char[])")*, i32 (%tango.io.device.Array.Array*, %"uint delegate(char[])")* } ; type %6
- type { %object.Interface*, i64 (%tango.io.device.Array.Array*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Array.Array*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*)*, %"byte[]" (%tango.io.device.Array.Array*)*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]")*, i32 (%tango.io.device.Array.Array*, %"uint delegate(char[])")* } ; type %7
- type { %object.Interface* } ; type %8
- type { %object.Interface*, i64 (%tango.io.device.Conduit.InputFilter*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.InputFilter*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.InputFilter*)*, void (%tango.io.device.Conduit.InputFilter*)*, i32 (%tango.io.device.Conduit.InputFilter*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.InputFilter*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.InputFilter*)* } ; type %9
- type { %object.Interface*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Device.Device*)*, %"byte[]" (%tango.io.device.Device.Device*)*, i1 (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Device.Device*)*, void (%tango.io.device.Conduit.Conduit*, %"byte[]")* } ; type %10
- type { %object.Interface*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*)* } ; type %11
- type { %object.Interface*, i32 (%tango.io.device.Device.Device*)* } ; type %12
- type { %object.Interface*, i64 (%tango.io.device.File.File*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Device.Device*)*, %"byte[]" (%tango.io.device.File.File*)*, i1 (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Device.Device*)*, void (%tango.io.device.Conduit.Conduit*, %"byte[]")* } ; type %13
- type { %object.Interface*, i64 (%tango.io.device.File.File*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*)* } ; type %14
- type { %object.Interface*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.net.SocketConduit.SocketConduit*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.net.SocketConduit.SocketConduit*)*, %"byte[]" (%tango.net.SocketConduit.SocketConduit*)*, i1 (%tango.net.SocketConduit.SocketConduit*)*, void (%tango.net.SocketConduit.SocketConduit*)*, void (%tango.io.device.Conduit.Conduit*, %"byte[]")* } ; type %15
- type { %object.Interface*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, void (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.net.SocketConduit.SocketConduit*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*)* } ; type %16
- type { %object.Interface*, i32 (%tango.net.SocketConduit.SocketConduit*)* } ; type %17
- type { i8*, i32 (i8*, %"tango.text.Regex.List!(StateElement).List.Element"**)* } ; type %18
- type { i8*, i32 (i8*, %"tango.text.Regex.List!(SubsetState).List.Element"**)* } ; type %19
- type { %object.TypeInfo.__vtbl*, i8*, %"byte[]", %"byte[]", i8*, i8*, i8*, i8*, i32 } ; type %20
- type { %object.TypeInfo.__vtbl*, i8*, %"byte[]", %"byte[]", i8*, i32 (%tango.net.Socket.timeval*, %tango.net.Socket.timeval*)*, i32 (%tango.net.Socket.timeval*, %tango.net.Socket.timeval*)*, %"byte[]" (%tango.net.Socket.timeval*)*, i32 } ; type %21
- type opaque ; type %22
- type opaque ; type %23
- type opaque ; type %24
- type opaque ; type %25
- type opaque ; type %26
- type opaque ; type %27
- type opaque ; type %28
- type opaque ; type %29
- type opaque ; type %30
- type { i32, void ()* } ; type %31
- type opaque ; type %32
- type { %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFA!(dchar).TNFA"* } ; type %33
- type { %"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.List!(TNFAFragment).List"* } ; type %34
- type { i32, %"byte[]" } ; type %35
- %"Act[]" = type { i32, i32* }
- %"CharRange!(dchar)[]" = type { i32, %tango.net.Socket.timeval* }
- %"ClassInfo[]" = type { i32, %object.ClassInfo** }
- %"Command[]" = type { i32, %tango.net.Socket.timeval* }
- %D_CRITICAL_SECTION = type { %D_CRITICAL_SECTION*, %0 }
- %"FtpFeature[]" = type { i32, %tango.net.ftp.FtpClient.FtpFeature* }
- %"FtpFileInfo[]" = type { i32, %tango.net.ftp.FtpClient.FtpFileInfo* }
- %"Interface[]" = type { i32, %object.Interface* }
- %"Mark[]" = type { i32, %"tango.text.Regex.TDFA!(dchar).TDFA.Mark"* }
- %"ModuleInfo[]" = type { i32, %object.ModuleInfo** }
- %ModuleReference = type { %ModuleReference*, %object.ModuleInfo* }
- %"OffsetTypeInfo[]" = type { i32, %object.OffsetTypeInfo* }
- %"Operator[]" = type { i32, i32* }
- %"Pair!(uint)[]" = type { i32, %tango.net.Socket.timeval* }
- %"Predicate!(dchar)[]" = type { i32, %"tango.text.Regex.Predicate!(dchar).Predicate"* }
- %"StateElement[]" = type { i32, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"** }
- %"State[]" = type { i32, %"tango.text.Regex.TDFA!(dchar).TDFA.State"** }
- %"TNFAState[]" = type { i32, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** }
- %"TNFATransition[]" = type { i32, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** }
- %"Transition[]" = type { i32, %"tango.text.Regex.TDFA!(dchar).TDFA.Transition"** }
- %"TypeInfo[]" = type { i32, %object.TypeInfo** }
- %"_FormatterInfo!(char)[]" = type { i32, %nest.parseListLine* }
%"byte[]" = type { i32, i8* }
- %"char[]" = type { i32, i8* }
- %"char[] delegate(RegExpT)" = type { i8*, %"byte[]" (i8*, %"tango.text.Regex.RegExpT!(char).RegExpT"*)* }
- %"char[][]" = type { i32, %"byte[]"* }
- %"dchar[]" = type { i32, i32* }
- %"dchar[][]" = type { i32, %"Act[]"* }
- %"int delegate(ref Element)" = type { i8*, i32 (i8*, %"tango.text.Regex.List!(TNFATransition).List.Element"**)* }
- %"int delegate(ref FrameInfo fInfo)" = type { i8*, i32 (i8*, %object.Exception.FrameInfo*)* }
- %"int delegate(ref ModuleInfo)" = type { i8*, i32 (i8*, %object.ModuleInfo**)* }
- %"int delegate(ref RegExpT)" = type { i8*, i32 (i8*, %"tango.text.Regex.RegExpT!(char).RegExpT"**)* }
- %"int delegate(ref StateElement)" = type { i8*, i32 (i8*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"**)* }
- %"int delegate(ref SubsetState)" = type { i8*, i32 (i8*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"**)* }
- %"int delegate(ref TNFAFragment)" = type { i8*, i32 (i8*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**)* }
- %"int delegate(ref TNFATransition)" = type { i8*, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* }
- %"int delegate(ref char[])" = type { i8*, i32 (i8*, %"byte[]"*)* }
- %"int delegate(ref int, ref char[])" = type { i8*, i32 (i8*, i32*, %"byte[]"*)* }
- %"int delegate(ref int, ref char[], ref char[])" = type { i8*, i32 (i8*, i32*, %"byte[]"*, %"byte[]"*)* }
- %"int[]" = type { i32, i32* }
- %nest.clone = type { %"tango.text.Regex.TNFAState!(dchar).TNFAState"*, %"tango.text.Regex.TNFA!(dchar).TNFA"* }
- %nest.delimit = type { %"char[][]" }
- %nest.dostime = type { %tango.time.Time.Date }
- %nest.insertAfter = type { %"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.List!(TNFATransition).List"* }
- %nest.insertBefore = type { %"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.List!(TNFATransition).List"* }
- %nest.parse = type { %"tango.text.convert.Layout.Layout!(char).Layout"*, %"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.Stack!(Operator).Stack", %"tango.text.Regex.Stack!(Operator).Stack", %"tango.text.Regex.Stack!(Pair!(uint)).Stack", %"tango.text.Regex.TNFAState!(dchar).TNFAState"*, %"tango.text.Regex.Stack!(TNFATransition).Stack", i32, %"tango.text.Regex.TNFA!(dchar).TNFA"* }
- %nest.parseListLine = type { i32, %"byte[]", %"byte[]" }
- %nest.setEntry = type { %"tango.text.Regex.TNFAState!(dchar).TNFAState"* }
- %nest.setExit = type { %"tango.text.Regex.TNFAState!(dchar).TNFAState"* }
- %nest.splitLines = type { i32, %"char[][]" }
- %object.ClassInfo = type { %object.ClassInfo.__vtbl*, i8*, %"byte[]", %"byte[]", %"void*[]", %"Interface[]", %object.ClassInfo*, i8*, i8*, i32, i8*, %"OffsetTypeInfo[]", i8*, %object.TypeInfo* }
- %object.ClassInfo.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %object.Object* (%object.ClassInfo*)* }
- %object.Exception = type { %object.Exception.__vtbl*, i8*, %"byte[]", %"byte[]", i32, %object.Exception.TraceInfo*, %object.Exception* }
- %object.Exception.FrameInfo = type { i64, i32, i32, i32, %"byte[]", %"byte[]", [256 x i8] }
- %object.Exception.TraceInfo = type { %object.Exception.TraceInfo.__vtbl* }
- %object.Exception.TraceInfo.__vtbl = type { %object.ClassInfo*, i32 (%object.Exception.TraceInfo*, %"int delegate(ref FrameInfo fInfo)")* }
- %object.Exception.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Exception*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%object.Exception*, %"void delegate(char[])")* }
- %object.Interface = type { %object.ClassInfo*, %"void*[]", i32 }
- %object.ModuleInfo = type { %object.ModuleInfo.__vtbl*, i8*, %"byte[]", %"ModuleInfo[]", %"ClassInfo[]", i32, void ()*, void ()*, void ()*, i8*, void ()* }
- %object.ModuleInfo.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %object.Object = type { %object.ModuleInfo.__vtbl*, i8* }
- %object.Object.Monitor = type { %object.Object.Monitor.__vtbl* }
- %object.Object.Monitor.__vtbl = type { %object.ClassInfo*, void (%object.Object.Monitor*)*, void (%object.Object.Monitor*)* }
- %object.Object.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %object.OffsetTypeInfo = type { i32, %object.TypeInfo* }
- %object.TypeInfo = type { %object.TypeInfo.__vtbl*, i8* }
- %object.TypeInfo.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.TypeInfo*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*)*, void (%object.TypeInfo*, i8*, i8*)*, %object.TypeInfo* (%object.TypeInfo*)*, %"byte[]" (%object.TypeInfo*)*, i32 (%object.TypeInfo*)*, %"OffsetTypeInfo[]" (%object.TypeInfo*)* }
- %object.TypeInfo_Array = type { %object.TypeInfo.__vtbl*, i8*, %object.TypeInfo* }
- %object.TypeInfo_Array.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.TypeInfo*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*)*, void (%object.TypeInfo*, i8*, i8*)*, %object.TypeInfo* (%object.TypeInfo*)*, %"byte[]" (%object.TypeInfo*)*, i32 (%object.TypeInfo*)*, %"OffsetTypeInfo[]" (%object.TypeInfo*)* }
- %object.TypeInfo_Class = type { %object.TypeInfo.__vtbl*, i8*, %object.ClassInfo* }
- %object.TypeInfo_Class.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.TypeInfo*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*)*, void (%object.TypeInfo*, i8*, i8*)*, %object.TypeInfo* (%object.TypeInfo*)*, %"byte[]" (%object.TypeInfo*)*, i32 (%object.TypeInfo*)*, %"OffsetTypeInfo[]" (%object.TypeInfo*)* }
- %object.TypeInfo_Enum = type { %object.TypeInfo.__vtbl*, i8*, %object.TypeInfo*, %"byte[]", %"byte[]" }
- %object.TypeInfo_Enum.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.TypeInfo*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*)*, void (%object.TypeInfo*, i8*, i8*)*, %object.TypeInfo* (%object.TypeInfo*)*, %"byte[]" (%object.TypeInfo*)*, i32 (%object.TypeInfo*)*, %"OffsetTypeInfo[]" (%object.TypeInfo*)* }
- %object.TypeInfo_StaticArray = type { %object.TypeInfo.__vtbl*, i8*, %object.TypeInfo*, i32 }
- %object.TypeInfo_StaticArray.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.TypeInfo*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*)*, void (%object.TypeInfo*, i8*, i8*)*, %object.TypeInfo* (%object.TypeInfo*)*, %"byte[]" (%object.TypeInfo*)*, i32 (%object.TypeInfo*)*, %"OffsetTypeInfo[]" (%object.TypeInfo*)* }
- %object.TypeInfo_Struct = type { %object.TypeInfo.__vtbl*, i8*, %"byte[]", %"byte[]", i32 ()*, i32 (i8*)*, i32 (i8*)*, %"byte[]" ()*, i32 }
- %object.TypeInfo_Struct.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.TypeInfo*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*)*, void (%object.TypeInfo*, i8*, i8*)*, %object.TypeInfo* (%object.TypeInfo*)*, %"byte[]" (%object.TypeInfo*)*, i32 (%object.TypeInfo*)*, %"OffsetTypeInfo[]" (%object.TypeInfo*)* }
- %object.TypeInfo_Typedef = type { %object.TypeInfo.__vtbl*, i8*, %object.TypeInfo*, %"byte[]", %"byte[]" }
- %object.TypeInfo_Typedef.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.TypeInfo*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*, i8*, i8*)*, i32 (%object.TypeInfo*)*, void (%object.TypeInfo*, i8*, i8*)*, %object.TypeInfo* (%object.TypeInfo*)*, %"byte[]" (%object.TypeInfo*)*, i32 (%object.TypeInfo*)*, %"OffsetTypeInfo[]" (%object.TypeInfo*)* }
- %"tango.core.Array.IsEqual!(char).IsEqual" = type <{ i8 }>
- %tango.core.Exception.IllegalArgumentException = type { %object.Exception.__vtbl*, i8*, %"byte[]", %"byte[]", i32, %object.Exception.TraceInfo*, %object.Exception* }
- %tango.core.Exception.IllegalArgumentException.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Exception*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%object.Exception*, %"void delegate(char[])")* }
- %tango.io.device.Array.Array = type { %tango.io.device.Array.Array.__vtbl*, i8*, %4*, %5*, %"byte[]", i32, i32, i32, i32, %6*, %7*, %8* }
- %tango.io.device.Array.Array.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.io.device.Array.Array*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%tango.io.device.Array.Array*)*, i32 (%tango.io.device.Array.Array*, %"byte[]")*, i32 (%tango.io.device.Array.Array*, %"byte[]")*, void (%tango.io.device.Array.Array*)*, i1 (%tango.io.device.Conduit.Conduit*)*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, i64 (%tango.io.device.Array.Array*, i64, i32)*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]")*, %tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]", i32)* }
- %tango.io.device.Conduit.Conduit = type { %tango.io.device.Conduit.Conduit.__vtbl*, i8*, %2*, %3* }
- %tango.io.device.Conduit.Conduit.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.io.device.Conduit.Conduit*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%tango.io.device.Conduit.Conduit*)*, i32 (%tango.io.device.Conduit.Conduit*, %"byte[]")*, i32 (%tango.io.device.Conduit.Conduit*, %"byte[]")*, void (%tango.io.device.Conduit.Conduit*)*, i1 (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)* }
- %tango.io.device.Conduit.InputFilter = type { %tango.io.device.Conduit.InputFilter.__vtbl*, i8*, %tango.io.model.IConduit.InputStream*, %9* }
- %tango.io.device.Conduit.InputFilter.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.InputFilter*)*, i32 (%tango.io.device.Conduit.InputFilter*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.InputFilter*, i32)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.InputFilter*)*, i64 (%tango.io.device.Conduit.InputFilter*, i64, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.InputFilter*)*, void (%tango.io.device.Conduit.InputFilter*)* }
- %tango.io.device.Device.Device = type { %tango.io.device.Device.Device.__vtbl*, i8*, %10*, %11*, i32, %12* }
- %tango.io.device.Device.Device.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.io.device.Device.Device*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%tango.io.device.Device.Device*)*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, void (%tango.io.device.Device.Device*)*, i1 (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, void (%tango.io.device.Device.Device*, i32)* }
- %tango.io.device.File.File = type { %tango.io.device.File.File.__vtbl*, i8*, %13*, %14*, i32, %12*, %"byte[]", %tango.io.device.File.File.Style, %8* }
- %tango.io.device.File.File.Style = type <{ i8, i8, i8, i8 }>
- %tango.io.device.File.File.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.io.device.File.File*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%tango.io.device.Device.Device*)*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, i32 (%tango.io.device.Device.Device*, %"byte[]")*, void (%tango.io.device.Device.Device*)*, i1 (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, i64 (%tango.io.device.File.File*, i64, i32)*, void (%tango.io.device.Device.Device*, i32)*, void (%tango.io.device.File.File.Style*, %tango.io.device.File.File*)*, i64 (%tango.io.device.File.File*)*, i64 (%tango.io.device.File.File*)*, void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)*, void (%tango.io.device.File.File*)*, void (%tango.io.device.File.File*, i64)* }
- %tango.io.model.IConduit.IConduit = type { %tango.io.model.IConduit.IConduit.__vtbl* }
- %tango.io.model.IConduit.IConduit.Seek = type { %tango.io.model.IConduit.IConduit.Seek.__vtbl* }
- %tango.io.model.IConduit.IConduit.Seek.__vtbl = type { %object.ClassInfo* }
- %tango.io.model.IConduit.IConduit.__vtbl = type { %object.ClassInfo*, i64 (%tango.io.model.IConduit.IOStream*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.model.IConduit.IOStream*)*, %tango.io.model.IConduit.IOStream* (%tango.io.model.IConduit.IOStream*)*, void (%tango.io.model.IConduit.IOStream*)*, i32 (%tango.io.model.IConduit.InputStream*, %"byte[]")*, %"byte[]" (%tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.model.IConduit.InputStream*)*, i32 (%tango.io.model.IConduit.IConduit*)*, %"byte[]" (%tango.io.model.IConduit.IConduit*)*, i1 (%tango.io.model.IConduit.IConduit*)*, void (%tango.io.model.IConduit.IConduit*)*, void (%tango.io.model.IConduit.IConduit*, %"byte[]")* }
- %tango.io.model.IConduit.IOStream = type { %tango.io.model.IConduit.IOStream.__vtbl* }
- %tango.io.model.IConduit.IOStream.Mutator = type { %tango.io.model.IConduit.IConduit.Seek.__vtbl* }
- %tango.io.model.IConduit.IOStream.Mutator.__vtbl = type { %object.ClassInfo* }
- %tango.io.model.IConduit.IOStream.__vtbl = type { %object.ClassInfo*, i64 (%tango.io.model.IConduit.IOStream*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.model.IConduit.IOStream*)*, %tango.io.model.IConduit.IOStream* (%tango.io.model.IConduit.IOStream*)*, void (%tango.io.model.IConduit.IOStream*)* }
- %tango.io.model.IConduit.ISelectable = type { %tango.io.model.IConduit.ISelectable.__vtbl* }
- %tango.io.model.IConduit.ISelectable.__vtbl = type { %object.ClassInfo*, i32 (%tango.io.model.IConduit.ISelectable*)* }
- %tango.io.model.IConduit.InputBuffer = type { %tango.io.model.IConduit.InputBuffer.__vtbl* }
- %tango.io.model.IConduit.InputBuffer.__vtbl = type { %object.ClassInfo*, i64 (%tango.io.model.IConduit.IOStream*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.model.IConduit.IOStream*)*, %tango.io.model.IConduit.IOStream* (%tango.io.model.IConduit.IOStream*)*, void (%tango.io.model.IConduit.IOStream*)*, i32 (%tango.io.model.IConduit.InputStream*, %"byte[]")*, %"byte[]" (%tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.model.IConduit.InputStream*)*, %"byte[]" (%tango.io.model.IConduit.InputBuffer*)*, i1 (%tango.io.model.IConduit.InputBuffer*, %"uint delegate(char[])")*, i32 (%tango.io.model.IConduit.InputBuffer*, %"uint delegate(char[])")* }
- %tango.io.model.IConduit.InputStream = type { %tango.io.model.IConduit.InputStream.__vtbl* }
- %tango.io.model.IConduit.InputStream.__vtbl = type { %object.ClassInfo*, i64 (%tango.io.model.IConduit.IOStream*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.model.IConduit.IOStream*)*, %tango.io.model.IConduit.IOStream* (%tango.io.model.IConduit.IOStream*)*, void (%tango.io.model.IConduit.IOStream*)*, i32 (%tango.io.model.IConduit.InputStream*, %"byte[]")*, %"byte[]" (%tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.model.IConduit.InputStream*)* }
- %tango.io.model.IConduit.OutputBuffer = type { %tango.io.model.IConduit.OutputBuffer.__vtbl* }
- %tango.io.model.IConduit.OutputBuffer.__vtbl = type { %object.ClassInfo*, i64 (%tango.io.model.IConduit.IOStream*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.model.IConduit.IOStream*)*, %tango.io.model.IConduit.IOStream* (%tango.io.model.IConduit.IOStream*)*, void (%tango.io.model.IConduit.IOStream*)*, i32 (%tango.io.model.IConduit.OutputStream*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.io.model.IConduit.OutputStream*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.model.IConduit.OutputStream*)*, %"byte[]" (%tango.io.model.IConduit.OutputBuffer*)*, %tango.io.model.IConduit.OutputBuffer* (%tango.io.model.IConduit.OutputBuffer*, %"byte[]")*, i32 (%tango.io.model.IConduit.OutputBuffer*, %"uint delegate(char[])")* }
- %tango.io.model.IConduit.OutputStream = type { %tango.io.model.IConduit.OutputStream.__vtbl* }
- %tango.io.model.IConduit.OutputStream.__vtbl = type { %object.ClassInfo*, i64 (%tango.io.model.IConduit.IOStream*, i64, i32)*, %tango.io.model.IConduit.IConduit* (%tango.io.model.IConduit.IOStream*)*, %tango.io.model.IConduit.IOStream* (%tango.io.model.IConduit.IOStream*)*, void (%tango.io.model.IConduit.IOStream*)*, i32 (%tango.io.model.IConduit.OutputStream*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.io.model.IConduit.OutputStream*, %tango.io.model.IConduit.InputStream*, i32)*, %tango.io.model.IConduit.OutputStream* (%tango.io.model.IConduit.OutputStream*)* }
- %"tango.io.stream.Iterator.Iterator!(char).Iterator" = type { %"tango.io.stream.Iterator.Iterator!(char).Iterator.__vtbl"*, i8*, %tango.io.model.IConduit.InputStream*, %9*, %tango.io.model.IConduit.InputBuffer*, %"byte[]", %"byte[]" }
- %"tango.io.stream.Iterator.Iterator!(char).Iterator.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.InputFilter*)*, i32 (%tango.io.device.Conduit.InputFilter*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.InputFilter*, i32)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.InputFilter*)*, i64 (%tango.io.device.Conduit.InputFilter*, i64, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.InputFilter*)*, void (%tango.io.device.Conduit.InputFilter*)*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"byte[]")*, %"tango.io.stream.Iterator.Iterator!(char).Iterator"* (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %tango.io.model.IConduit.InputStream*)*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"int delegate(ref char[])")*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"int delegate(ref int, ref char[])")*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"int delegate(ref int, ref char[], ref char[])")* }
- %"tango.io.stream.Lines.Lines!(char).Lines" = type { %"tango.io.stream.Iterator.Iterator!(char).Iterator.__vtbl"*, i8*, %tango.io.model.IConduit.InputStream*, %9*, %tango.io.model.IConduit.InputBuffer*, %"byte[]", %"byte[]" }
- %"tango.io.stream.Lines.Lines!(char).Lines.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %tango.io.model.IConduit.IConduit* (%tango.io.device.Conduit.InputFilter*)*, i32 (%tango.io.device.Conduit.InputFilter*, %"byte[]")*, %"byte[]" (%tango.io.device.Conduit.InputFilter*, i32)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.InputFilter*)*, i64 (%tango.io.device.Conduit.InputFilter*, i64, i32)*, %tango.io.model.IConduit.InputStream* (%tango.io.device.Conduit.InputFilter*)*, void (%tango.io.device.Conduit.InputFilter*)*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"byte[]")*, %"tango.io.stream.Iterator.Iterator!(char).Iterator"* (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %tango.io.model.IConduit.InputStream*)*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"int delegate(ref char[])")*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"int delegate(ref int, ref char[])")*, i32 (%"tango.io.stream.Iterator.Iterator!(char).Iterator"*, %"int delegate(ref int, ref char[], ref char[])")* }
- %tango.net.Socket.Address = type { %tango.net.Socket.Address.__vtbl*, i8* }
- %tango.net.Socket.Address.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.net.Socket.Address*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %tango.net.Socket.sockaddr* (%tango.net.Socket.Address*)*, i32 (%tango.net.Socket.Address*)*, i32 (%tango.net.Socket.Address*)* }
- %tango.net.Socket.IPv4Address = type { %tango.net.Socket.IPv4Address.__vtbl*, i8*, [8 x i8], %tango.net.Socket.IPv4Address.sockaddr_in }
- %tango.net.Socket.IPv4Address.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.net.Socket.IPv4Address*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %tango.net.Socket.sockaddr* (%tango.net.Socket.IPv4Address*)*, i32 (%tango.net.Socket.IPv4Address*)*, i32 (%tango.net.Socket.IPv4Address*)*, i16 (%tango.net.Socket.IPv4Address*)*, i32 (%tango.net.Socket.IPv4Address*)*, %"byte[]" (%tango.net.Socket.IPv4Address*)*, %"byte[]" (%tango.net.Socket.IPv4Address*)* }
- %tango.net.Socket.IPv4Address.sockaddr_in = type { i16, i16, i32, [8 x i8] }
- %tango.net.Socket.NetHost = type { %tango.net.Socket.NetHost.__vtbl*, i8*, %"byte[]", %"char[][]", %"Act[]" }
- %tango.net.Socket.NetHost.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%tango.net.Socket.NetHost*, %tango.net.Socket.hostent*)*, void (%tango.net.Socket.NetHost*, %tango.net.Socket.hostent*)*, i1 (%tango.net.Socket.NetHost*, %"byte[]")*, i1 (%tango.net.Socket.NetHost*, i32)*, i1 (%tango.net.Socket.NetHost*, %"byte[]")* }
- %tango.net.Socket.Socket = type { %tango.net.Socket.Socket.__vtbl*, i8*, i32, i32, i32, i32 }
- %tango.net.Socket.Socket.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.net.Socket.Socket*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%tango.net.Socket.Socket*)*, void (%tango.net.Socket.Socket*, i32)*, i1 (%tango.net.Socket.Socket*)*, i1 (%tango.net.Socket.Socket*)*, void (%tango.net.Socket.Socket*, i1)*, i32 (%tango.net.Socket.Socket*)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, %tango.net.Socket.Address*)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, %tango.net.Socket.Address*)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, %tango.net.Socket.Socket*)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i1)*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i1)*, void (%tango.net.Socket.Socket*, %tango.net.Socket.IPv4Address*, i1)*, void (%tango.net.Socket.Socket*)*, %tango.net.Socket.Address* (%tango.net.Socket.Socket*)*, %tango.net.Socket.Address* (%tango.net.Socket.Socket*)*, %tango.net.Socket.Address* (%tango.net.Socket.Socket*)*, i32 (%tango.net.Socket.Socket*, %"byte[]", i32)*, i32 (%tango.net.Socket.Socket*, %"byte[]", i32, %tango.net.Socket.Address*)*, i32 (%tango.net.Socket.Socket*, %"byte[]", %tango.net.Socket.Address*)*, i32 (%tango.net.Socket.Socket*, %"byte[]", i32)*, i32 (%tango.net.Socket.Socket*, %"byte[]", i32)*, i32 (%tango.net.Socket.Socket*, %"byte[]", i32, %tango.net.Socket.Address*)*, i32 (%tango.net.Socket.Socket*, %"byte[]", %tango.net.Socket.Address*)*, i32 (%tango.net.Socket.Socket*, %"byte[]", i32)*, i32 (%tango.net.Socket.Socket*, i32, i32, %"byte[]")*, %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32, i32, %"byte[]")* }
- %tango.net.Socket.SocketSet = type { %tango.net.Socket.SocketSet.__vtbl*, i8*, i32, i8*, i32, i32 }
- %tango.net.Socket.SocketSet.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%tango.net.Socket.SocketSet*, i32)*, i32 (%tango.net.Socket.SocketSet*, i32)*, i32* (%tango.net.Socket.SocketSet*)*, i32 (%tango.net.Socket.SocketSet*)*, %tango.net.Socket.SocketSet* (%tango.net.Socket.SocketSet*)*, void (%tango.net.Socket.SocketSet*)*, void (%tango.net.Socket.SocketSet*, i32)*, void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)*, void (%tango.net.Socket.SocketSet*, i32)*, void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)*, i32 (%tango.net.Socket.SocketSet*, i32)*, i32 (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)*, i32 (%tango.net.Socket.SocketSet*)*, %"tango.core.Array.IsEqual!(char).IsEqual"* (%tango.net.Socket.SocketSet*)* }
- %tango.net.Socket.fd_set = type <{ i8 }>
- %tango.net.Socket.hostent = type { i8*, i8**, i32, i32, i8** }
- %tango.net.Socket.sockaddr = type { i16, [14 x i8] }
- %tango.net.Socket.timeval = type { i32, i32 }
- %tango.net.SocketConduit.SocketConduit = type { %tango.net.SocketConduit.SocketConduit.__vtbl*, i8*, %15*, %16*, %tango.net.Socket.timeval, %tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*, i1, %tango.net.SocketConduit.SocketConduit*, i1, %17* }
- %tango.net.SocketConduit.SocketConduit.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.net.SocketConduit.SocketConduit*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%tango.net.SocketConduit.SocketConduit*)*, i32 (%tango.net.SocketConduit.SocketConduit*, %"byte[]")*, i32 (%tango.net.SocketConduit.SocketConduit*, %"byte[]")*, void (%tango.net.SocketConduit.SocketConduit*)*, i1 (%tango.net.SocketConduit.SocketConduit*)*, %tango.io.model.IConduit.IOStream* (%tango.io.device.Conduit.Conduit*)*, %tango.io.model.IConduit.OutputStream* (%tango.io.device.Conduit.Conduit*, %tango.io.model.IConduit.InputStream*, i32)*, %"byte[]" (%tango.io.device.Conduit.Conduit*, i32)*, i64 (%tango.io.device.Conduit.Conduit*, i64, i32)*, %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*, i32 (%tango.net.SocketConduit.SocketConduit*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, float)*, i1 (%tango.net.SocketConduit.SocketConduit*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*)* }
- %tango.net.ftp.FtpClient.FTPConnection = type { %tango.net.ftp.FtpClient.FTPConnection.__vtbl*, i8*, %tango.net.SocketConduit.SocketConduit*, %"tango.io.stream.Iterator.Iterator!(char).Iterator"*, [8192 x i8], %"FtpFeature[]", %tango.net.ftp.FtpClient.FtpConnectionDetail, i32, %"byte[]", %tango.net.SocketConduit.SocketConduit*, %tango.time.Time.Time }
- %tango.net.ftp.FtpClient.FTPConnection.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")*, void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")*, %"byte[]" (%tango.net.ftp.Telnet.Telnet*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.Telnet.Telnet*, %"byte[]", i32)*, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.time.Time.Time*)*, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*, %"FtpFeature[]" (%tango.net.ftp.FtpClient.FTPConnection*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpAddress*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*)*, void (%tango.net.ftp.FtpClient.FTPConnection*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", i16, %"byte[]", i16)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*)*, %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]")*, i32 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, i32 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*, i32)*, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*)*, %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*, void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*, %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)*, i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit**)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*, %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")*, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")*, %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"void delegate(uint pos)", i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)", i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)", i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*, i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*, i64)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"void delegate(uint pos)", i32)*, void (%tango.net.ftp.FtpClient.FTPConnection*)*, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)", i32)*, %tango.io.model.IConduit.InputStream* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*, %tango.io.model.IConduit.OutputStream* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* }
- %tango.net.ftp.FtpClient.FtpAddress = type { %"byte[]", %"byte[]", %"byte[]", %"byte[]", i32 }
- %tango.net.ftp.FtpClient.FtpConnectionDetail = type { i32, %tango.net.Socket.Address*, %tango.net.Socket.Address* }
- %tango.net.ftp.FtpClient.FtpException = type { %tango.net.ftp.FtpClient.FtpException.__vtbl*, i8*, %"byte[]", %"byte[]", i32, %object.Exception.TraceInfo*, %object.Exception*, [3 x i8] }
- %tango.net.ftp.FtpClient.FtpException.__vtbl = type { %object.ClassInfo*, %"byte[]" (%tango.net.ftp.FtpClient.FtpException*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%object.Exception*, %"void delegate(char[])")* }
- %tango.net.ftp.FtpClient.FtpFeature = type { %"byte[]", %"byte[]" }
- %tango.net.ftp.FtpClient.FtpFileInfo = type { %"byte[]", i32, i64, %tango.time.Time.Time, %tango.time.Time.Time, %"byte[]", i8* }
- %tango.net.ftp.FtpClient.FtpResponse = type { [3 x i8], %"byte[]" }
- %tango.net.ftp.Telnet.Telnet = type { %tango.net.ftp.Telnet.Telnet.__vtbl*, i8*, %tango.net.SocketConduit.SocketConduit*, %"tango.io.stream.Iterator.Iterator!(char).Iterator"*, [8192 x i8] }
- %tango.net.ftp.Telnet.Telnet.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")*, void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")*, void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")*, %"byte[]" (%tango.net.ftp.Telnet.Telnet*)*, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.Telnet.Telnet*, %"byte[]", i32)* }
- %"tango.text.Regex.CharClass!(dchar).CharClass" = type { %"CharRange!(dchar)[]" }
- %"tango.text.Regex.CharRange!(dchar).CharRange" = type { i32, i32 }
- %"tango.text.Regex.List!(StateElement).List" = type { %"tango.text.Regex.List!(StateElement).List.__vtbl"*, i8*, i32, %"tango.text.Regex.List!(StateElement).List.Element"*, %"tango.text.Regex.List!(StateElement).List.Element"* }
- %"tango.text.Regex.List!(StateElement).List.Element" = type { %object.ModuleInfo.__vtbl*, i8*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*, %"tango.text.Regex.List!(StateElement).List.Element"*, %"tango.text.Regex.List!(StateElement).List.Element"*, %"tango.text.Regex.List!(StateElement).List"* }
- %"tango.text.Regex.List!(StateElement).List.Element.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %"tango.text.Regex.List!(StateElement).List.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.List!(StateElement).List.Element"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.List!(StateElement).List"*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.List!(StateElement).List.Element"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)*, %"tango.text.Regex.List!(StateElement).List"* (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.List!(StateElement).List"*)*, i32 (%"tango.text.Regex.List!(StateElement).List"*)*, i1 (%"tango.text.Regex.List!(StateElement).List"*)*, void (%"tango.text.Regex.List!(StateElement).List"*)*, void (%"tango.text.Regex.List!(StateElement).List"*)*, void (%"tango.text.Regex.List!(StateElement).List"*, %"tango.text.Regex.List!(StateElement).List.Element"*)*, i32 (%"tango.text.Regex.List!(StateElement).List"*, %18)*, i32 (%"tango.text.Regex.List!(StateElement).List"*, %18)*, i32 (%"tango.text.Regex.List!(StateElement).List"*, %"int delegate(ref StateElement)")*, i32 (%"tango.text.Regex.List!(StateElement).List"*, %"int delegate(ref StateElement)")* }
- %"tango.text.Regex.List!(SubsetState).List" = type { %"tango.text.Regex.List!(SubsetState).List.__vtbl"*, i8*, i32, %"tango.text.Regex.List!(SubsetState).List.Element"*, %"tango.text.Regex.List!(SubsetState).List.Element"* }
- %"tango.text.Regex.List!(SubsetState).List.Element" = type { %object.ModuleInfo.__vtbl*, i8*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*, %"tango.text.Regex.List!(SubsetState).List.Element"*, %"tango.text.Regex.List!(SubsetState).List.Element"*, %"tango.text.Regex.List!(SubsetState).List"* }
- %"tango.text.Regex.List!(SubsetState).List.Element.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %"tango.text.Regex.List!(SubsetState).List.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.List!(SubsetState).List.Element"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.List!(SubsetState).List"*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.List!(SubsetState).List.Element"*, %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*)*, %"tango.text.Regex.List!(SubsetState).List"* (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.List!(SubsetState).List"*)*, i32 (%"tango.text.Regex.List!(SubsetState).List"*)*, i1 (%"tango.text.Regex.List!(SubsetState).List"*)*, void (%"tango.text.Regex.List!(SubsetState).List"*)*, void (%"tango.text.Regex.List!(SubsetState).List"*)*, void (%"tango.text.Regex.List!(SubsetState).List"*, %"tango.text.Regex.List!(SubsetState).List.Element"*)*, i32 (%"tango.text.Regex.List!(SubsetState).List"*, %19)*, i32 (%"tango.text.Regex.List!(SubsetState).List"*, %19)*, i32 (%"tango.text.Regex.List!(SubsetState).List"*, %"int delegate(ref SubsetState)")*, i32 (%"tango.text.Regex.List!(SubsetState).List"*, %"int delegate(ref SubsetState)")* }
- %"tango.text.Regex.List!(TNFAFragment).List" = type { %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*, i8*, i32, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"* }
- %"tango.text.Regex.List!(TNFAFragment).List.Element" = type { %object.ModuleInfo.__vtbl*, i8*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.List!(TNFAFragment).List"* }
- %"tango.text.Regex.List!(TNFAFragment).List.Element.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %"tango.text.Regex.List!(TNFAFragment).List.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List"*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List"*)*, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*)*, i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*, void (%"tango.text.Regex.List!(TNFAFragment).List"*)*, void (%"tango.text.Regex.List!(TNFAFragment).List"*)*, void (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*)*, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)*, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)*, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %"int delegate(ref TNFAFragment)")*, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %"int delegate(ref TNFAFragment)")* }
- %"tango.text.Regex.List!(TNFATransition).List" = type { %"tango.text.Regex.List!(TNFATransition).List.__vtbl"*, i8*, i32, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.List!(TNFATransition).List.Element"* }
- %"tango.text.Regex.List!(TNFATransition).List.Element" = type { %object.ModuleInfo.__vtbl*, i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.List!(TNFATransition).List"* }
- %"tango.text.Regex.List!(TNFATransition).List.Element.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %"tango.text.Regex.List!(TNFATransition).List.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*, i32 (%"tango.text.Regex.List!(TNFATransition).List"*)*, i1 (%"tango.text.Regex.List!(TNFATransition).List"*)*, void (%"tango.text.Regex.List!(TNFATransition).List"*)*, void (%"tango.text.Regex.List!(TNFATransition).List"*)*, void (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*)*, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")*, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")*, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")* }
- %"tango.text.Regex.Pair!(uint).Pair" = type { i32, i32 }
- %"tango.text.Regex.Predicate!(dchar).Predicate" = type { %"tango.text.Regex.CharClass!(dchar).CharClass", i32, i32, %"byte[]", i32 }
- %tango.text.Regex.RegExpException = type { %object.Exception.__vtbl*, i8*, %"byte[]", %"byte[]", i32, %object.Exception.TraceInfo*, %object.Exception* }
- %tango.text.Regex.RegExpException.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Exception*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%object.Exception*, %"void delegate(char[])")* }
- %"tango.text.Regex.RegExpT!(char).RegExpT" = type { %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*, i8*, %"Act[]", i32, i32, %"tango.text.Regex.TDFA!(dchar).TDFA"*, %"byte[]", %"byte[]" }
- %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %"tango.text.Regex.RegExpT!(char).RegExpT"* (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")*, i32 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"int delegate(ref RegExpT)")*, i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")*, i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*)*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*)*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*)*, %"char[][]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]", %"byte[]", %"byte[]")*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]", %"byte[]", %"byte[]")*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]", %"byte[]", %"byte[]")*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]", %"char[] delegate(RegExpT)", %"byte[]")*, %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]", i1)*, i32 (%"tango.text.Regex.RegExpT!(char).RegExpT"*)* }
- %"tango.text.Regex.Stack!(Operator).Stack" = type { i32, %"Act[]" }
- %"tango.text.Regex.Stack!(Pair!(uint)).Stack" = type { i32, %"CharRange!(dchar)[]" }
- %"tango.text.Regex.Stack!(TNFATransition).Stack" = type { i32, %"TNFATransition[]" }
- %"tango.text.Regex.Stack!(uint).Stack" = type { i32, %"Act[]" }
- %"tango.text.Regex.TDFA!(dchar).TDFA" = type { %"tango.text.Regex.TDFA!(dchar).TDFA.__vtbl"*, i8*, %"State[]", %"tango.text.Regex.TDFA!(dchar).TDFA.State"*, %"CharRange!(dchar)[]", i32, i8*, i32, %"Mark[]" }
- %"tango.text.Regex.TDFA!(dchar).TDFA.Command" = type { i32, i32 }
- %"tango.text.Regex.TDFA!(dchar).TDFA.Mark" = type { i32, i1, i8, i16 }
- %"tango.text.Regex.TDFA!(dchar).TDFA.State" = type { %"tango.text.Regex.TDFA!(dchar).TDFA.State.__vtbl"*, i8*, i1, i32, %"Transition[]", %"Transition[]", %"CharRange!(dchar)[]", %"byte[]", i32, %"tango.text.Regex.TDFA!(dchar).TDFA"* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.State.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%"tango.text.Regex.TDFA!(dchar).TDFA.State"*)*, void (%"tango.text.Regex.TDFA!(dchar).TDFA.State"*)* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement" = type { %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement.__vtbl"*, i8*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*, i8*, i32, i32, %"tango.text.Regex.TDFA!(dchar).TDFA"* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)*, i32 (%object.Object*)*, i32 (%"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i1 (%"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*, %"tango.text.Regex.TDFA!(dchar).TDFA.StateElement"*)* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState" = type { %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState.__vtbl"*, i8*, %"StateElement[]", %"tango.text.Regex.TDFA!(dchar).TDFA.State"*, %"tango.text.Regex.TDFA!(dchar).TDFA"* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%"tango.text.Regex.TDFA!(dchar).TDFA.SubsetState"*, %"int delegate(ref TNFATransition)")* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.TagIndex" = type { i32, i32 }
- %"tango.text.Regex.TDFA!(dchar).TDFA.Transition" = type { %"tango.text.Regex.TDFA!(dchar).TDFA.Transition.__vtbl"*, i8*, %"tango.text.Regex.TDFA!(dchar).TDFA.State"*, %"tango.text.Regex.Predicate!(dchar).Predicate", %"CharRange!(dchar)[]", %"tango.text.Regex.TDFA!(dchar).TDFA"* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.Transition.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%"tango.text.Regex.TDFA!(dchar).TDFA.Transition"*, %object.Object*)*, i32 (%"tango.text.Regex.TDFA!(dchar).TDFA.Transition"*, %object.Object*)*, i1 (%"tango.text.Regex.TDFA!(dchar).TDFA.Transition"*, %"tango.text.Regex.TDFA!(dchar).TDFA.Transition"*)* }
- %"tango.text.Regex.TDFA!(dchar).TDFA.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%"tango.text.Regex.TDFA!(dchar).TDFA"*)* }
- %"tango.text.Regex.TNFA!(dchar).TNFA" = type { %"tango.text.Regex.TNFA!(dchar).TNFA.__vtbl"*, i8*, %"Act[]", %"TNFAState[]", %"tango.text.Regex.TNFAState!(dchar).TNFAState"*, i1, i32, i32, i32, %"tango.text.Regex.List!(TNFATransition).List"*, i8*, i8* }
- %"tango.text.Regex.TNFA!(dchar).TNFA.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%"tango.text.Regex.TNFA!(dchar).TNFA"*)*, void (%"tango.text.Regex.TNFA!(dchar).TNFA"*, i1)* }
- %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment" = type { %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*, i8*, %"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*, i1 }
- %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*, void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)* }
- %"tango.text.Regex.TNFAState!(dchar).TNFAState" = type { %object.ModuleInfo.__vtbl*, i8*, i1, i1, i32, %"tango.text.Regex.List!(TNFATransition).List"* }
- %"tango.text.Regex.TNFAState!(dchar).TNFAState.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %"tango.text.Regex.TNFATransition!(dchar).TNFATransition" = type { %object.ModuleInfo.__vtbl*, i8*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*, %"tango.text.Regex.Predicate!(dchar).Predicate", i32, i32, i32 }
- %"tango.text.Regex.TNFATransition!(dchar).TNFATransition.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)* }
- %"tango.text.Util.DelimFruct!(char).DelimFruct" = type { %"byte[]", %"byte[]" }
- %"tango.text.Util.LineFruct!(char).LineFruct" = type { %"byte[]" }
- %"tango.text.convert.Integer._FormatterInfo!(char)._FormatterInfo" = type { i32, %"byte[]", %"byte[]" }
- %"tango.text.convert.Integer._FormatterInfo!(dchar)._FormatterInfo" = type { i32, %"Act[]", %"Act[]" }
- %"tango.text.convert.Integer._FormatterInfo!(wchar)._FormatterInfo" = type { i32, %"wchar[]", %"wchar[]" }
- %"tango.text.convert.Layout.Layout!(char).Layout" = type { %"tango.text.convert.Layout.Layout!(char).Layout.__vtbl"*, i8* }
- %"tango.text.convert.Layout.Layout!(char).Layout.__vtbl" = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, %"byte[]" (%"tango.text.convert.Layout.Layout!(char).Layout"*, %"byte[]", %"byte[]", %object.TypeInfo*, i8*)*, %"byte[]" (%"tango.text.convert.Layout.Layout!(char).Layout"*, %"byte[]", i64, %"byte[]", i64, %"byte[]")*, %"byte[]" (%"tango.text.convert.Layout.Layout!(char).Layout"*, %"byte[]", double, %"byte[]")* }
- %tango.time.Time.Date = type { i32, i32, i32, i32, i32, i32 }
- %tango.time.Time.DateTime = type { %tango.time.Time.Date, %tango.time.Time.TimeOfDay }
- %tango.time.Time.Time = type { i64 }
- %tango.time.Time.TimeOfDay = type { i32, i32, i32, i32 }
- %tango.time.Time.TimeSpan = type { i64 }
- %tango.time.chrono.Calendar.Calendar = type { %tango.time.chrono.Calendar.Calendar.__vtbl*, i8* }
- %tango.time.chrono.Calendar.Calendar.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%tango.time.Time.Date*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, void (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*, i32*, i32*, i32*, i32*, i32*, i32*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, i32, i32, i32, i32, i32, i32, i32)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Date*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.DateTime*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Date*, %tango.time.Time.TimeOfDay*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, i32, i32, i32, i32, i32, i32, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*, i32, i32)*, i1 (%tango.time.chrono.Calendar.Calendar*, i32)*, i1 (%tango.time.chrono.Calendar.Calendar*, i32, i32)*, %"Act[]" (%tango.time.chrono.Calendar.Calendar*)*, i32 (%tango.time.chrono.Calendar.Calendar*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*, i32, i1)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*, i32)* }
- %tango.time.chrono.Gregorian.Gregorian = type { %tango.time.chrono.Gregorian.Gregorian.__vtbl*, i8*, i32 }
- %tango.time.chrono.Gregorian.Gregorian.__vtbl = type { %object.ClassInfo*, %"byte[]" (%object.Object*)*, i32 (%object.Object*)*, i32 (%object.Object*, %object.Object*)*, i32 (%object.Object*, %object.Object*)*, void (%tango.time.Time.Date*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*)*, void (%tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*, i32*, i32*, i32*, i32*, i32*, i32*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, i32, i32, i32, i32, i32, i32, i32)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Date*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.DateTime*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Date*, %tango.time.Time.TimeOfDay*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Gregorian.Gregorian*, i32, i32, i32, i32, i32, i32, i32, i32)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32, i32)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, i32, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, i32)*, i32 (%tango.time.chrono.Gregorian.Gregorian*, i32, i32)*, i32 (%tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Time*, i32, i32)*, i1 (%tango.time.chrono.Calendar.Calendar*, i32)*, i1 (%tango.time.chrono.Gregorian.Gregorian*, i32, i32)*, %"Act[]" (%tango.time.chrono.Gregorian.Gregorian*)*, i32 (%tango.time.chrono.Gregorian.Gregorian*)*, void (%tango.time.Time.Time*, %tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*, i32, i1)*, void (%tango.time.Time.Time*, %tango.time.chrono.Gregorian.Gregorian*, %tango.time.Time.Time*, i32)*, i32 (%tango.time.chrono.Gregorian.Gregorian*)* }
- %"ubyte[]" = type { i32, i8* }
- %"uint delegate(char[])" = type { i8*, i32 (i8*, %"byte[]")* }
- %"uint delegate(void[])" = type { i8*, i32 (i8*, %"byte[]")* }
- %"uint[]" = type { i32, i32* }
- %"void delegate(char[])" = type { i8*, void (i8*, %"byte[]")* }
- %"void delegate(uint pos)" = type { i8*, void (i8*, i32)* }
- %"void*[]" = type { i32, i8** }
- %"void[]" = type { i32, i8* }
- %"wchar[]" = type { i32, i16* }
- %"wchar[][]" = type { i32, %"wchar[]"* }
-@_D5tango3net3ftp9FtpClient10FtpAddress6__initZ = constant %tango.net.ftp.FtpClient.FtpAddress { %"byte[]" zeroinitializer, %"byte[]" zeroinitializer, %"byte[]" { i32 9, i8* getelementptr ([10 x i8]* @.str, i32 0, i32 0) }, %"byte[]" { i32 19, i8* getelementptr ([20 x i8]* @.str1, i32 0, i32 0) }, i32 21 }, align 4 ; <%tango.net.ftp.FtpClient.FtpAddress*> [#uses=1]
-@.str = internal constant [10 x i8] c"anonymous\00" ; <[10 x i8]*> [#uses=1]
-@.str1 = internal constant [20 x i8] c"anonymous@anonymous\00" ; <[20 x i8]*> [#uses=1]
-@_D46TypeInfo_S5tango3net3ftp9FtpClient10FtpAddress6__initZ = linkonce_odr constant %20 { %object.TypeInfo.__vtbl* @_D15TypeInfo_Struct6__vtblZ, i8* null, %"byte[]" { i32 34, i8* getelementptr ([35 x i8]* @.str2, i32 0, i32 0) }, %"byte[]" { i32 36, i8* bitcast (%tango.net.ftp.FtpClient.FtpAddress* @_D5tango3net3ftp9FtpClient10FtpAddress6__initZ to i8*) }, i8* null, i8* null, i8* null, i8* null, i32 1 } ; <%20*> [#uses=1]
-@_D6Object7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=11]
-@_D15TypeInfo_Struct6__vtblZ = external constant %object.TypeInfo.__vtbl ; <%object.TypeInfo.__vtbl*> [#uses=5]
-@.str2 = internal constant [35 x i8] c"tango.net.ftp.FtpClient.FtpAddress\00" ; <[35 x i8]*> [#uses=1]
-@_D5tango3net3ftp9FtpClient11FtpResponse6__initZ = constant %tango.net.ftp.FtpClient.FtpResponse { [3 x i8] c"000", %"byte[]" zeroinitializer }, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
-@_D5tango3net3ftp9FtpClient19FtpConnectionDetail6__initZ = constant %tango.net.ftp.FtpClient.FtpConnectionDetail { i32 1, %tango.net.Socket.Address* null, %tango.net.Socket.Address* null }, align 4 ; <%tango.net.ftp.FtpClient.FtpConnectionDetail*> [#uses=0]
-@_D5tango3net3ftp9FtpClient10FtpFeature6__initZ = constant %tango.net.ftp.FtpClient.FtpFeature zeroinitializer, align 4 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=1]
-@_D46TypeInfo_S5tango3net3ftp9FtpClient10FtpFeature6__initZ = linkonce_odr constant %20 { %object.TypeInfo.__vtbl* @_D15TypeInfo_Struct6__vtblZ, i8* null, %"byte[]" { i32 34, i8* getelementptr ([35 x i8]* @.str5, i32 0, i32 0) }, %"byte[]" { i32 16, i8* bitcast (%tango.net.ftp.FtpClient.FtpFeature* @_D5tango3net3ftp9FtpClient10FtpFeature6__initZ to i8*) }, i8* null, i8* null, i8* null, i8* null, i32 1 } ; <%20*> [#uses=1]
-@.str5 = internal constant [35 x i8] c"tango.net.ftp.FtpClient.FtpFeature\00" ; <[35 x i8]*> [#uses=1]
-@_D5tango3net3ftp9FtpClient11FtpFileInfo6__initZ = constant %tango.net.ftp.FtpClient.FtpFileInfo { %"byte[]" zeroinitializer, i32 0, i64 -1, %tango.time.Time.Time { i64 3155378975999999999 }, %tango.time.Time.Time { i64 3155378975999999999 }, %"byte[]" zeroinitializer, i8* null }, align 4 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=1]
-@_D5tango4time4Time4Time3maxS5tango4time4Time4Time = external constant %tango.time.Time.Time, align 4 ; <%tango.time.Time.Time*> [#uses=1]
-@_D47TypeInfo_S5tango3net3ftp9FtpClient11FtpFileInfo6__initZ = linkonce_odr constant %20 { %object.TypeInfo.__vtbl* @_D15TypeInfo_Struct6__vtblZ, i8* null, %"byte[]" { i32 35, i8* getelementptr ([36 x i8]* @.str6, i32 0, i32 0) }, %"byte[]" { i32 48, i8* bitcast (%tango.net.ftp.FtpClient.FtpFileInfo* @_D5tango3net3ftp9FtpClient11FtpFileInfo6__initZ to i8*) }, i8* null, i8* null, i8* null, i8* null, i32 1 } ; <%20*> [#uses=1]
-@.str6 = internal constant [36 x i8] c"tango.net.ftp.FtpClient.FtpFileInfo\00" ; <[36 x i8]*> [#uses=1]
-@_D9Exception7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=1]
-@_D5tango3net3ftp9FtpClient12FtpException7__ClassZ = global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 40, i8* bitcast (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ to i8*) }, %"byte[]" { i32 36, i8* getelementptr ([37 x i8]* @.str7, i32 0, i32 0) }, %"void*[]" { i32 6, i8** bitcast (%tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D9Exception7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D48TypeInfo_C5tango3net3ftp9FtpClient12FtpException6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=17]
-@_D5tango3net3ftp9FtpClient12FtpException6__initZ = constant %tango.net.ftp.FtpClient.FtpException { %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, i8* null, %"byte[]" zeroinitializer, %"byte[]" zeroinitializer, i32 0, %object.Exception.TraceInfo* null, %object.Exception* null, [3 x i8] c"000" }, align 4 ; <%tango.net.ftp.FtpClient.FtpException*> [#uses=2]
-@_D5tango3net3ftp9FtpClient12FtpException6__vtblZ = constant %tango.net.ftp.FtpClient.FtpException.__vtbl { %object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ, %"byte[]" (%tango.net.ftp.FtpClient.FtpException*)* @_D5tango3net3ftp9FtpClient12FtpException8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi, void (%object.Exception*, %"void delegate(char[])")* @_D6object9Exception8writeOutMFDFAaZvZv } ; <%tango.net.ftp.FtpClient.FtpException.__vtbl*> [#uses=12]
-@_D48TypeInfo_C5tango3net3ftp9FtpClient12FtpException6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@_D14TypeInfo_Class6__vtblZ = external constant %object.TypeInfo.__vtbl ; <%object.TypeInfo.__vtbl*> [#uses=10]
-@_D9ClassInfo6__vtblZ = external constant %object.ClassInfo.__vtbl ; <%object.ClassInfo.__vtbl*> [#uses=10]
-@.str7 = internal constant [37 x i8] c"tango.net.ftp.FtpClient.FtpException\00" ; <[37 x i8]*> [#uses=1]
-@_D5tango3net3ftp6Telnet6Telnet7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=1]
-@_D5tango3net3ftp9FtpClient13FTPConnection7__ClassZ = global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 8252, i8* bitcast (%tango.net.ftp.FtpClient.FTPConnection* @_D5tango3net3ftp9FtpClient13FTPConnection6__initZ to i8*) }, %"byte[]" { i32 37, i8* getelementptr ([38 x i8]* @.str9, i32 0, i32 0) }, %"void*[]" { i32 63, i8** bitcast (%tango.net.ftp.FtpClient.FTPConnection.__vtbl* @_D5tango3net3ftp9FtpClient13FTPConnection6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D5tango3net3ftp6Telnet6Telnet7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* bitcast (%tango.net.ftp.FtpClient.FTPConnection* (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection5_ctorMFZC5tango3net3ftp9FtpClient13FTPConnection to i8*), %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D49TypeInfo_C5tango3net3ftp9FtpClient13FTPConnection6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=3]
-@_D5tango3net3ftp9FtpClient13FTPConnection6__initZ = constant %tango.net.ftp.FtpClient.FTPConnection { %tango.net.ftp.FtpClient.FTPConnection.__vtbl* @_D5tango3net3ftp9FtpClient13FTPConnection6__vtblZ, i8* null, %tango.net.SocketConduit.SocketConduit* null, %"tango.io.stream.Iterator.Iterator!(char).Iterator"* null, [8192 x i8] c"\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF\FF", %"FtpFeature[]" zeroinitializer, %tango.net.ftp.FtpClient.FtpConnectionDetail { i32 1, %tango.net.Socket.Address* null, %tango.net.Socket.Address* null }, i32 0, %"byte[]" { i32 0, i8* getelementptr ([1 x i8]* @.str8, i32 0, i32 0) }, %tango.net.SocketConduit.SocketConduit* null, %tango.time.Time.Time { i64 50000000 } }, align 4 ; <%tango.net.ftp.FtpClient.FTPConnection*> [#uses=1]
-@_D5tango3net3ftp9FtpClient13FTPConnection6__vtblZ = constant %tango.net.ftp.FtpClient.FTPConnection.__vtbl { %object.ClassInfo* @_D5tango3net3ftp9FtpClient13FTPConnection7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection9exceptionMFAaZv, void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")* @_D5tango3net3ftp6Telnet6Telnet8sendlineMFAvZv, void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")* @_D5tango3net3ftp6Telnet6Telnet8sendDataMFAvZv, %"byte[]" (%tango.net.ftp.Telnet.Telnet*)* @_D5tango3net3ftp6Telnet6Telnet8readLineMFZAa, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.Telnet.Telnet*, %"byte[]", i32)* @_D5tango3net3ftp6Telnet6Telnet19findAvailableServerMFAaiZC5tango3net13SocketConduit13SocketConduit, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection7timeoutMFZS5tango4time4Time8TimeSpan, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.time.Time.Time*)* @_D5tango3net3ftp9FtpClient13FTPConnection7timeoutMFS5tango4time4Time8TimeSpanZv, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection12shutdownTimeMFZS5tango4time4Time8TimeSpan, %"FtpFeature[]" (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection17supportedFeaturesMFZAS5tango3net3ftp9FtpClient10FtpFeature, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)* @_D5tango3net3ftp9FtpClient13FTPConnection9exceptionMFS5tango3net3ftp9FtpClient11FtpResponseZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpAddress*)* @_D5tango3net3ftp9FtpClient13FTPConnection7connectMFS5tango3net3ftp9FtpClient10FtpAddressZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection7connectMFAaAaAakZv, void (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection5closeMFZv, void (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection10setPassiveMFZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", i16, %"byte[]", i16)* @_D5tango3net3ftp9FtpClient13FTPConnection9setActiveMFAatAatZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection2cdMFAaZv, void (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection4cdupMFZv, %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection3cwdMFZAa, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection5chmodMFAaiZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection3delMFAaZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection2rmMFAaZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection6renameMFAaAaZv, i32 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection5existMFAaZi, i32 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection4sizeMFAaE5tango3net3ftp9FtpClient9FtpFormatZk, void (%tango.net.ftp.FtpClient.FTPConnection*, i32)* @_D5tango3net3ftp9FtpClient13FTPConnection4typeMFE5tango3net3ftp9FtpClient9FtpFormatZv, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection8modifiedMFAaZS5tango4time4Time4Time, void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection12parseTimevalMFAaZS5tango4time4Time4Time, void (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection4noopMFZv, %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection5mkdirMFAaZAa, void (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection11getFeaturesMFZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")* @_D5tango3net3ftp9FtpClient13FTPConnection11sendCommandMFAaAAaXv, void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection12readResponseMFAaZS5tango3net3ftp9FtpClient11FtpResponse, void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection12readResponseMFZS5tango3net3ftp9FtpClient11FtpResponse, %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)* @_D5tango3net3ftp9FtpClient13FTPConnection8parse257MFS5tango3net3ftp9FtpClient11FtpResponseZAa, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection13getDataSocketMFZC5tango3net13SocketConduit13SocketConduit, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection14connectPassiveMFZC5tango3net13SocketConduit13SocketConduit, i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection11isSupportedMFAaZb, i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection12is_supportedMFAaZb, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit**)* @_D5tango3net3ftp9FtpClient13FTPConnection17prepareDataSocketMFKC5tango3net13SocketConduit13SocketConduitZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)* @_D5tango3net3ftp9FtpClient13FTPConnection17finishDataCommandMFC5tango3net13SocketConduit13SocketConduitZv, %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")* @_D5tango3net3ftp9FtpClient13FTPConnection18processDataCommandMFAaAAaXC5tango3net13SocketConduit13SocketConduit, %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection2lsMFAaZAS5tango3net3ftp9FtpClient11FtpFileInfo, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")* @_D5tango3net3ftp9FtpClient13FTPConnection10readStreamMFC5tango3net13SocketConduit13SocketConduitC5tango2io5model8IConduit12OutputStreamDFkZvZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")* @_D5tango3net3ftp9FtpClient13FTPConnection10sendStreamMFC5tango3net13SocketConduit13SocketConduitC5tango2io5model8IConduit11InputStreamDFkZvZv, %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection15sendListCommandMFAaZAS5tango3net3ftp9FtpClient11FtpFileInfo, void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo, void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection13parseMlstLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo, void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection11getFileInfoMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"void delegate(uint pos)", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection3putMFAaAaDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection3putMFAaC5tango2io5model8IConduit11InputStreamDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection6appendMFAaC5tango2io5model8IConduit11InputStreamDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv, void (%tango.net.ftp.FtpClient.FTPConnection*, i32)* @_D5tango3net3ftp9FtpClient13FTPConnection11restartSeekMFkZv, void (%tango.net.ftp.FtpClient.FTPConnection*, i64)* @_D5tango3net3ftp9FtpClient13FTPConnection8allocateMFlZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"void delegate(uint pos)", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection3getMFAaAaDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv, void (%tango.net.ftp.FtpClient.FTPConnection*)* @_D5tango3net3ftp9FtpClient13FTPConnection10enableUTF8MFZv, void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)", i32)* @_D5tango3net3ftp9FtpClient13FTPConnection3getMFAaC5tango2io5model8IConduit12OutputStreamDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv, %tango.io.model.IConduit.InputStream* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection5inputMFAaZC5tango2io5model8IConduit11InputStream, %tango.io.model.IConduit.OutputStream* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")* @_D5tango3net3ftp9FtpClient13FTPConnection6outputMFAaZC5tango2io5model8IConduit12OutputStream } ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=2]
-@.str8 = internal constant [1 x i8] zeroinitializer ; <[1 x i8]*> [#uses=1]
-@_D49TypeInfo_C5tango3net3ftp9FtpClient13FTPConnection6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango3net3ftp9FtpClient13FTPConnection7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str9 = internal constant [38 x i8] c"tango.net.ftp.FtpClient.FTPConnection\00" ; <[38 x i8]*> [#uses=1]
-@_D5tango4text5Regex11__T4TNFATwZ4TNFA7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 56, i8* bitcast (%"tango.text.Regex.TNFA!(dchar).TNFA"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA6__initZ to i8*) }, %"byte[]" { i32 34, i8* getelementptr ([35 x i8]* @.str51, i32 0, i32 0) }, %"void*[]" { i32 7, i8** bitcast (%"tango.text.Regex.TNFA!(dchar).TNFA.__vtbl"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D45TypeInfo_C5tango4text5Regex11__T4TNFATwZ4TNFA6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=2]
-@_D5tango4text5Regex11__T4TNFATwZ4TNFA6__initZ = weak_odr constant %"tango.text.Regex.TNFA!(dchar).TNFA" { %"tango.text.Regex.TNFA!(dchar).TNFA.__vtbl"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA6__vtblZ, i8* null, %"Act[]" zeroinitializer, %"TNFAState[]" zeroinitializer, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* null, i1 false, i32 0, i32 0, i32 0, %"tango.text.Regex.List!(TNFATransition).List"* null, i8* null, i8* null }, align 4 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
-@_D5tango4text5Regex11__T4TNFATwZ4TNFA6__vtblZ = weak_odr constant %"tango.text.Regex.TNFA!(dchar).TNFA.__vtbl" { %object.ClassInfo* @_D5tango4text5Regex11__T4TNFATwZ4TNFA7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi, i32 (%"tango.text.Regex.TNFA!(dchar).TNFA"*)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA8tagCountMFZk, void (%"tango.text.Regex.TNFA!(dchar).TNFA"*, i1)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv } ; <%"tango.text.Regex.TNFA!(dchar).TNFA.__vtbl"*> [#uses=2]
-@_D5tango4text5Regex11__T4TNFATwZ4TNFA14operator_namesAAa = weak_odr constant %"char[][]" { i32 17, %"byte[]"* getelementptr ([17 x %"byte[]"]* @.constarray, i32 0, i32 0) }, align 4 ; <%"char[][]"*> [#uses=0]
-@.str10 = internal constant [4 x i8] c"EOS\00" ; <[4 x i8]*> [#uses=1]
-@.str11 = internal constant [7 x i8] c"concat\00" ; <[7 x i8]*> [#uses=1]
-@.str12 = internal constant [2 x i8] c"|\00" ; <[2 x i8]*> [#uses=1]
-@.str13 = internal constant [2 x i8] c"(\00" ; <[2 x i8]*> [#uses=1]
-@.str14 = internal constant [2 x i8] c")\00" ; <[2 x i8]*> [#uses=1]
-@.str15 = internal constant [2 x i8] c"?\00" ; <[2 x i8]*> [#uses=1]
-@.str16 = internal constant [2 x i8] c"*\00" ; <[2 x i8]*> [#uses=1]
-@.str17 = internal constant [2 x i8] c"+\00" ; <[2 x i8]*> [#uses=1]
-@.str18 = internal constant [3 x i8] c"??\00" ; <[3 x i8]*> [#uses=1]
-@.str19 = internal constant [3 x i8] c"*?\00" ; <[3 x i8]*> [#uses=1]
-@.str20 = internal constant [3 x i8] c"+?\00" ; <[3 x i8]*> [#uses=1]
-@.str21 = internal constant [4 x i8] c"??x\00" ; <[4 x i8]*> [#uses=1]
-@.str22 = internal constant [4 x i8] c"*?x\00" ; <[4 x i8]*> [#uses=1]
-@.str23 = internal constant [4 x i8] c"+?x\00" ; <[4 x i8]*> [#uses=1]
-@.str24 = internal constant [3 x i8] c"(?\00" ; <[3 x i8]*> [#uses=1]
-@.str25 = internal constant [6 x i8] c"{x,y}\00" ; <[6 x i8]*> [#uses=1]
-@.str26 = internal constant [7 x i8] c"{x,y}?\00" ; <[7 x i8]*> [#uses=1]
-@.constarray = internal global [17 x %"byte[]"] [%"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str10, i32 0, i32 0) }, %"byte[]" { i32 6, i8* getelementptr ([7 x i8]* @.str11, i32 0, i32 0) }, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str12, i32 0, i32 0) }, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str13, i32 0, i32 0) }, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str14, i32 0, i32 0) }, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str15, i32 0, i32 0) }, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str16, i32 0, i32 0) }, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str17, i32 0, i32 0) }, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str18, i32 0, i32 0) }, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str19, i32 0, i32 0) }, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str20, i32 0, i32 0) }, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str21, i32 0, i32 0) }, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str22, i32 0, i32 0) }, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str23, i32 0, i32 0) }, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str24, i32 0, i32 0) }, %"byte[]" { i32 5, i8* getelementptr ([6 x i8]* @.str25, i32 0, i32 0) }, %"byte[]" { i32 6, i8* getelementptr ([7 x i8]* @.str26, i32 0, i32 0) }] ; <[17 x %"byte[]"]*> [#uses=1]
-@_D5tango4text5Regex11__T4TNFATwZ4TNFA12action_namesAAa = weak_odr constant %"char[][]" { i32 6, %"byte[]"* getelementptr ([6 x %"byte[]"]* @.constarray33, i32 0, i32 0) }, align 4 ; <%"char[][]"*> [#uses=0]
-@.str27 = internal constant [13 x i8] c"push+advance\00" ; <[13 x i8]*> [#uses=1]
-@.str28 = internal constant [9 x i8] c"pop+copy\00" ; <[9 x i8]*> [#uses=1]
-@.str29 = internal constant [12 x i8] c"pop+advance\00" ; <[12 x i8]*> [#uses=1]
-@.str30 = internal constant [17 x i8] c"pop+copy+advance\00" ; <[17 x i8]*> [#uses=1]
-@.str31 = internal constant [5 x i8] c"done\00" ; <[5 x i8]*> [#uses=1]
-@.str32 = internal constant [6 x i8] c"error\00" ; <[6 x i8]*> [#uses=1]
-@.constarray33 = internal global [6 x %"byte[]"] [%"byte[]" { i32 12, i8* getelementptr ([13 x i8]* @.str27, i32 0, i32 0) }, %"byte[]" { i32 8, i8* getelementptr ([9 x i8]* @.str28, i32 0, i32 0) }, %"byte[]" { i32 11, i8* getelementptr ([12 x i8]* @.str29, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str30, i32 0, i32 0) }, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str31, i32 0, i32 0) }, %"byte[]" { i32 5, i8* getelementptr ([6 x i8]* @.str32, i32 0, i32 0) }] ; <[6 x %"byte[]"]*> [#uses=1]
-@_D5tango4text5Regex11__T4TNFATwZ4TNFA13action_lookupAE5tango4text5Regex11__T4TNFATwZ4TNFA3Act = weak_odr constant %"Act[]" { i32 289, i32* getelementptr ([289 x i32]* @.constarray34, i32 0, i32 0) }, align 4 ; <%"Act[]"*> [#uses=0]
-@.constarray34 = internal global [289 x i32] [i32 4, i32 0, i32 0, i32 0, i32 5, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1, i32 1, i32 1, i32 0, i32 1, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 5, i32 0, i32 0, i32 0, i32 3, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 5, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 5, i32 0, i32 0, i32 0, i32 3, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 0, i32 1, i32 1] ; <[289 x i32]*> [#uses=2]
-@_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 52, i8* bitcast (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to i8*) }, %"byte[]" { i32 54, i8* getelementptr ([55 x i8]* @.str47, i32 0, i32 0) }, %"void*[]" { i32 5, i8** bitcast (%object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D67TypeInfo_C5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=19]
-@_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ = weak_odr constant %"tango.text.Regex.TNFATransition!(dchar).TNFATransition" { %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, i8* null, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* null, %"tango.text.Regex.Predicate!(dchar).Predicate" { %"tango.text.Regex.CharClass!(dchar).CharClass" zeroinitializer, i32 0, i32 0, %"byte[]" zeroinitializer, i32 65535 }, i32 0, i32 0, i32 0 }, align 4 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=2]
-@_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ = weak_odr constant %object.ModuleInfo.__vtbl { %object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi } ; <%object.ModuleInfo.__vtbl*> [#uses=19]
-@_D5tango4text5Regex16__T9CharClassTwZ9CharClass13line_startendS5tango4text5Regex16__T9CharClassTwZ9CharClass = external constant %"tango.text.Regex.CharClass!(dchar).CharClass", align 4 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=2]
-@_D5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ = external constant %tango.net.Socket.timeval, align 4 ; <%tango.net.Socket.timeval*> [#uses=1]
-@_D55TypeInfo_S5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ = linkonce_odr constant %21 { %object.TypeInfo.__vtbl* @_D15TypeInfo_Struct6__vtblZ, i8* null, %"byte[]" { i32 44, i8* getelementptr ([45 x i8]* @.str35, i32 0, i32 0) }, %"byte[]" { i32 8, i8* bitcast (%tango.net.Socket.timeval* @_D5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to i8*) }, i8* null, i32 (%tango.net.Socket.timeval*, %tango.net.Socket.timeval*)* @_D5tango4text5Regex16__T9CharRangeTwZ9CharRange8opEqualsMFPS5tango4text5Regex16__T9CharRangeTwZ9CharRangeZi, i32 (%tango.net.Socket.timeval*, %tango.net.Socket.timeval*)* @_D5tango4text5Regex16__T9CharRangeTwZ9CharRange5opCmpMFPS5tango4text5Regex16__T9CharRangeTwZ9CharRangeZi, %"byte[]" (%tango.net.Socket.timeval*)* @_D5tango4text5Regex16__T9CharRangeTwZ9CharRange8toStringMFZAa, i32 0 } ; <%21*> [#uses=1]
-@.str35 = internal constant [45 x i8] c"tango.text.Regex.CharRange!(dchar).CharRange\00" ; <[45 x i8]*> [#uses=1]
-@_D5tango4text5Regex16__T9CharClassTwZ9CharClass5digitS5tango4text5Regex16__T9CharClassTwZ9CharClass = external constant %"tango.text.Regex.CharClass!(dchar).CharClass", align 4 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=2]
-@_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass = external constant %"tango.text.Regex.CharClass!(dchar).CharClass", align 4 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=6]
-@_D5tango4text5Regex16__T9CharClassTwZ9CharClass8any_charS5tango4text5Regex16__T9CharClassTwZ9CharClass = external constant %"tango.text.Regex.CharClass!(dchar).CharClass", align 4 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=3]
-@_D5tango4text5Regex16__T9CharClassTwZ9CharClass8dot_operS5tango4text5Regex16__T9CharClassTwZ9CharClass = external constant %"tango.text.Regex.CharClass!(dchar).CharClass", align 4 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=1]
-@_D5tango4text5Regex16__T9CharClassTwZ9CharClass9alphanum_S5tango4text5Regex16__T9CharClassTwZ9CharClass = external constant %"tango.text.Regex.CharClass!(dchar).CharClass", align 4 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=2]
-@_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 20, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to i8*) }, %"byte[]" { i32 44, i8* getelementptr ([45 x i8]* @.str46, i32 0, i32 0) }, %"void*[]" { i32 5, i8** bitcast (%object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* (%"tango.text.Regex.TNFAState!(dchar).TNFAState"*)* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState5_ctorMFZC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState to i8*), %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D55TypeInfo_C5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=16]
-@_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ = weak_odr constant %"tango.text.Regex.TNFAState!(dchar).TNFAState" { %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, i8* null, i1 false, i1 false, i32 0, %"tango.text.Regex.List!(TNFATransition).List"* null }, align 4 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
-@_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ = weak_odr constant %object.ModuleInfo.__vtbl { %object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi } ; <%object.ModuleInfo.__vtbl*> [#uses=16]
-@_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 20, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ to i8*) }, %"byte[]" { i32 43, i8* getelementptr ([44 x i8]* @.str45, i32 0, i32 0) }, %"void*[]" { i32 22, i8** bitcast (%"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 36, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D102TypeInfo_C5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=67]
-@_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ = weak_odr constant %"tango.text.Regex.List!(TNFATransition).List" { %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, i8* null, i32 0, %"tango.text.Regex.List!(TNFATransition).List.Element"* null, %"tango.text.Regex.List!(TNFATransition).List.Element"* null }, align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
-@_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ = weak_odr constant %"tango.text.Regex.List!(TNFATransition).List.__vtbl" { %object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11opCatAssignMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11insertAfterMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11insertAfterMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11opCatAssignMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4ListZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List9pushFrontMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List12insertBeforeMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List12insertBeforeMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List9pushFrontMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4ListZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List, i32 (%"tango.text.Regex.List!(TNFATransition).List"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6lengthMFZk, i1 (%"tango.text.Regex.List!(TNFATransition).List"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List5emptyMFZb, void (%"tango.text.Regex.List!(TNFATransition).List"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List5clearMFZv, void (%"tango.text.Regex.List!(TNFATransition).List"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List3popMFZv, void (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6removeMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZv, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List8elementsMFDFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZiZi, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List16elements_reverseMFDFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZiZi, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7opApplyMFDFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZiZi, i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List14opApplyReverseMFDFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZiZi } ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=67]
-@_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 24, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ to i8*) }, %"byte[]" { i32 51, i8* getelementptr ([52 x i8]* @.str44, i32 0, i32 0) }, %"void*[]" { i32 5, i8** bitcast (%object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D110TypeInfo_C5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=8]
-@_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ = weak_odr constant %"tango.text.Regex.List!(TNFATransition).List.Element" { %object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ, i8* null, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* null, %"tango.text.Regex.List!(TNFATransition).List.Element"* null, %"tango.text.Regex.List!(TNFATransition).List.Element"* null, %"tango.text.Regex.List!(TNFATransition).List"* null }, align 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
-@_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ = weak_odr constant %object.ModuleInfo.__vtbl { %object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi } ; <%object.ModuleInfo.__vtbl*> [#uses=8]
-@_D110TypeInfo_C5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str44 = internal constant [52 x i8] c"tango.text.Regex.List!(TNFATransition).List.Element\00" ; <[52 x i8]*> [#uses=1]
-@_D102TypeInfo_C5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str45 = internal constant [44 x i8] c"tango.text.Regex.List!(TNFATransition).List\00" ; <[44 x i8]*> [#uses=1]
-@_D55TypeInfo_C5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str46 = internal constant [45 x i8] c"tango.text.Regex.TNFAState!(dchar).TNFAState\00" ; <[45 x i8]*> [#uses=1]
-@_D67TypeInfo_C5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str47 = internal constant [55 x i8] c"tango.text.Regex.TNFATransition!(dchar).TNFATransition\00" ; <[55 x i8]*> [#uses=1]
-@_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 28, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ to i8*) }, %"byte[]" { i32 50, i8* getelementptr ([51 x i8]* @.str48, i32 0, i32 0) }, %"void*[]" { i32 7, i8** bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment5_ctorMFZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment to i8*), %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D63TypeInfo_C5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=13]
-@_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ = weak_odr constant %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment" { %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, i8* null, %"tango.text.Regex.List!(TNFATransition).List"* null, %"tango.text.Regex.List!(TNFATransition).List"* null, %"tango.text.Regex.List!(TNFATransition).List"* null, %"tango.text.Regex.List!(TNFATransition).List"* null, i1 false }, align 4 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
-@_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ = weak_odr constant %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl" { %object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi, void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment8setEntryMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv, void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7setExitMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv } ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=13]
-@_D63TypeInfo_C5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str48 = internal constant [51 x i8] c"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment\00" ; <[51 x i8]*> [#uses=1]
-@_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 20, i8* bitcast (%"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__initZ to i8*) }, %"byte[]" { i32 41, i8* getelementptr ([42 x i8]* @.str50, i32 0, i32 0) }, %"void*[]" { i32 22, i8** bitcast (%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 36, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D98TypeInfo_C5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=3]
-@_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__initZ = weak_odr constant %"tango.text.Regex.List!(TNFAFragment).List" { %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__vtblZ, i8* null, i32 0, %"tango.text.Regex.List!(TNFAFragment).List.Element"* null, %"tango.text.Regex.List!(TNFAFragment).List.Element"* null }, align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
-@_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__vtblZ = weak_odr constant %"tango.text.Regex.List!(TNFAFragment).List.__vtbl" { %object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11opCatAssignMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11insertAfterMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11insertAfterMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11opCatAssignMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List9pushFrontMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List12insertBeforeMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List12insertBeforeMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List9pushFrontMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6lengthMFZk, i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List5emptyMFZb, void (%"tango.text.Regex.List!(TNFAFragment).List"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List5clearMFZv, void (%"tango.text.Regex.List!(TNFAFragment).List"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List3popMFZv, void (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6removeMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZv, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List8elementsMFDFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZiZi, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List16elements_reverseMFDFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZiZi, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %"int delegate(ref TNFAFragment)")* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7opApplyMFDFKC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZiZi, i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %"int delegate(ref TNFAFragment)")* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List14opApplyReverseMFDFKC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZiZi } ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=3]
-@_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ = weak_odr global %object.ClassInfo { %object.ClassInfo.__vtbl* @_D9ClassInfo6__vtblZ, i8* null, %"byte[]" { i32 24, i8* bitcast (%"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ to i8*) }, %"byte[]" { i32 49, i8* getelementptr ([50 x i8]* @.str49, i32 0, i32 0) }, %"void*[]" { i32 5, i8** bitcast (%object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ to i8**) }, %"Interface[]" zeroinitializer, %object.ClassInfo* @_D6Object7__ClassZ, i8* null, i8* null, i32 44, i8* null, %"OffsetTypeInfo[]" zeroinitializer, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D106TypeInfo_C5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ to %object.TypeInfo*) } ; <%object.ClassInfo*> [#uses=8]
-@_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ = weak_odr constant %"tango.text.Regex.List!(TNFAFragment).List.Element" { %object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ, i8* null, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* null, %"tango.text.Regex.List!(TNFAFragment).List.Element"* null, %"tango.text.Regex.List!(TNFAFragment).List.Element"* null, %"tango.text.Regex.List!(TNFAFragment).List"* null }, align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
-@_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ = weak_odr constant %object.ModuleInfo.__vtbl { %object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ, %"byte[]" (%object.Object*)* @_D6object6Object8toStringMFZAa, i32 (%object.Object*)* @_D6object6Object6toHashMFZk, i32 (%object.Object*, %object.Object*)* @_D6object6Object5opCmpMFC6ObjectZi, i32 (%object.Object*, %object.Object*)* @_D6object6Object8opEqualsMFC6ObjectZi } ; <%object.ModuleInfo.__vtbl*> [#uses=8]
-@_D106TypeInfo_C5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str49 = internal constant [50 x i8] c"tango.text.Regex.List!(TNFAFragment).List.Element\00" ; <[50 x i8]*> [#uses=1]
-@_D98TypeInfo_C5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str50 = internal constant [42 x i8] c"tango.text.Regex.List!(TNFAFragment).List\00" ; <[42 x i8]*> [#uses=1]
-@_D45TypeInfo_C5tango4text5Regex11__T4TNFATwZ4TNFA6__initZ = linkonce_odr constant %object.TypeInfo_Class { %object.TypeInfo.__vtbl* @_D14TypeInfo_Class6__vtblZ, i8* null, %object.ClassInfo* @_D5tango4text5Regex11__T4TNFATwZ4TNFA7__ClassZ } ; <%object.TypeInfo_Class*> [#uses=1]
-@.str51 = internal constant [35 x i8] c"tango.text.Regex.TNFA!(dchar).TNFA\00" ; <[35 x i8]*> [#uses=1]
-@_D5tango4text7convert7Integer22__T14_FormatterInfoTaZ14_FormatterInfo6__initZ = weak_odr constant %nest.parseListLine zeroinitializer, align 4 ; <%nest.parseListLine*> [#uses=0]
-@_D5tango4text4Util16__T9LineFructTaZ9LineFruct6__initZ = weak_odr constant %"tango.text.Util.LineFruct!(char).LineFruct" zeroinitializer, align 4 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=0]
-@_D5tango4core5Array14__T7IsEqualTaZ7IsEqual6__initZ = weak_odr constant %"tango.core.Array.IsEqual!(char).IsEqual" zeroinitializer, align 1 ; <%"tango.core.Array.IsEqual!(char).IsEqual"*> [#uses=0]
-@_D5tango4core6Traits63__T14isCallableTypeTS5tango4core5Array14__T7IsEqualTaZ7IsEqualZ14isCallableTypeb = weak_odr constant i1 true, align 1 ; <i1*> [#uses=0]
-@_D12TypeInfo_G4a6__initZ = linkonce_odr constant %object.TypeInfo_StaticArray { %object.TypeInfo.__vtbl* @_D20TypeInfo_StaticArray6__vtblZ, i8* null, %object.TypeInfo* @_D10TypeInfo_a6__initZ, i32 4 } ; <%object.TypeInfo_StaticArray*> [#uses=1]
-@_D20TypeInfo_StaticArray6__vtblZ = external constant %object.TypeInfo.__vtbl ; <%object.TypeInfo.__vtbl*> [#uses=1]
-@_D10TypeInfo_a6__initZ = external constant %object.TypeInfo ; <%object.TypeInfo*> [#uses=1]
-@_D5tango4text4Util18__T10DelimFructTaZ10DelimFruct6__initZ = weak_odr constant %tango.net.ftp.FtpClient.FtpFeature zeroinitializer, align 4 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=0]
-@_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack6__initZ = weak_odr constant %"tango.text.Regex.Stack!(Operator).Stack" zeroinitializer, align 4 ; <%"tango.text.Regex.Stack!(Operator).Stack"*> [#uses=0]
-@_D55TypeInfo_AE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Enum* @_D54TypeInfo_E5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ to %object.TypeInfo*) } ; <%object.TypeInfo_Array*> [#uses=1]
-@_D14TypeInfo_Array6__vtblZ = external constant %object.TypeInfo.__vtbl ; <%object.TypeInfo.__vtbl*> [#uses=8]
-@_D54TypeInfo_E5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ = linkonce_odr constant %object.TypeInfo_Enum { %object.TypeInfo.__vtbl* @_D13TypeInfo_Enum6__vtblZ, i8* null, %object.TypeInfo* @_D10TypeInfo_i6__initZ, %"byte[]" { i32 43, i8* getelementptr ([44 x i8]* @.str57, i32 0, i32 0) }, %"byte[]" zeroinitializer } ; <%object.TypeInfo_Enum*> [#uses=1]
-@_D13TypeInfo_Enum6__vtblZ = external constant %object.TypeInfo.__vtbl ; <%object.TypeInfo.__vtbl*> [#uses=1]
-@_D10TypeInfo_i6__initZ = external constant %object.TypeInfo ; <%object.TypeInfo*> [#uses=1]
-@.str57 = internal constant [44 x i8] c"tango.text.Regex.TNFA!(dchar).TNFA.Operator\00" ; <[44 x i8]*> [#uses=1]
-@_D5tango4text5Regex12__T5StackTkZ5Stack6__initZ = weak_odr constant %"tango.text.Regex.Stack!(Operator).Stack" zeroinitializer, align 4 ; <%"tango.text.Regex.Stack!(Operator).Stack"*> [#uses=0]
-@_D5tango4text5Regex11__T4PairTkZ4Pair6__initZ = weak_odr constant %tango.net.Socket.timeval zeroinitializer, align 4 ; <%tango.net.Socket.timeval*> [#uses=1]
-@_D45TypeInfo_S5tango4text5Regex11__T4PairTkZ4Pair6__initZ = linkonce_odr constant %20 { %object.TypeInfo.__vtbl* @_D15TypeInfo_Struct6__vtblZ, i8* null, %"byte[]" { i32 33, i8* getelementptr ([34 x i8]* @.str59, i32 0, i32 0) }, %"byte[]" { i32 8, i8* bitcast (%tango.net.Socket.timeval* @_D5tango4text5Regex11__T4PairTkZ4Pair6__initZ to i8*) }, i8* null, i8* null, i8* null, i8* null, i32 0 } ; <%20*> [#uses=1]
-@.str59 = internal constant [34 x i8] c"tango.text.Regex.Pair!(uint).Pair\00" ; <[34 x i8]*> [#uses=1]
-@_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack6__initZ = weak_odr constant %"tango.text.Regex.Stack!(Pair!(uint)).Stack" zeroinitializer, align 4 ; <%"tango.text.Regex.Stack!(Pair!(uint)).Stack"*> [#uses=0]
-@_D46TypeInfo_AS5tango4text5Regex11__T4PairTkZ4Pair6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* bitcast (%20* @_D45TypeInfo_S5tango4text5Regex11__T4PairTkZ4Pair6__initZ to %object.TypeInfo*) } ; <%object.TypeInfo_Array*> [#uses=1]
-@_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack6__initZ = weak_odr constant %"tango.text.Regex.Stack!(TNFATransition).Stack" zeroinitializer, align 4 ; <%"tango.text.Regex.Stack!(TNFATransition).Stack"*> [#uses=0]
-@_D68TypeInfo_AC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D67TypeInfo_C5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*) } ; <%object.TypeInfo_Array*> [#uses=1]
-@_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* bitcast (%21* @_D55TypeInfo_S5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*) } ; <%object.TypeInfo_Array*> [#uses=1]
-@.str65 = internal constant [7 x i8] c"ftp://\00" ; <[7 x i8]*> [#uses=1]
-@_D11TypeInfo_Aa6__initZ = external constant %object.TypeInfo ; <%object.TypeInfo*> [#uses=67]
-@.str66 = internal constant [4 x i8] c"420\00" ; <[4 x i8]*> [#uses=1]
-@.str67 = internal constant [4 x i8] c"220\00" ; <[4 x i8]*> [#uses=1]
-@.str68 = internal constant [5 x i8] c"USER\00" ; <[5 x i8]*> [#uses=1]
-@.str69 = internal constant [4 x i8] c"331\00" ; <[4 x i8]*> [#uses=1]
-@.str70 = internal constant [5 x i8] c"PASS\00" ; <[5 x i8]*> [#uses=1]
-@.str71 = internal constant [4 x i8] c"230\00" ; <[4 x i8]*> [#uses=1]
-@.str72 = internal constant [4 x i8] c"202\00" ; <[4 x i8]*> [#uses=1]
-@.str73 = internal constant [5 x i8] c"QUIT\00" ; <[5 x i8]*> [#uses=1]
-@.str74 = internal constant [4 x i8] c"221\00" ; <[4 x i8]*> [#uses=1]
-@_D5tango3net6Socket11IPv4Address7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=8]
-@_D5tango3net6Socket11IPv4Address6__initZ = external constant %22, align 4 ; <%22*> [#uses=1]
-@_D5tango3net6Socket11IPv4Address6__vtblZ = external constant %tango.net.Socket.IPv4Address.__vtbl ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=5]
-@.str75 = internal constant [4 x i8] c"CWD\00" ; <[4 x i8]*> [#uses=1]
-@.str76 = internal constant [4 x i8] c"250\00" ; <[4 x i8]*> [#uses=1]
-@.str77 = internal constant [5 x i8] c"CDUP\00" ; <[5 x i8]*> [#uses=1]
-@.str78 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str79 = internal constant [4 x i8] c"250\00" ; <[4 x i8]*> [#uses=1]
-@.str80 = internal constant [4 x i8] c"PWD\00" ; <[4 x i8]*> [#uses=1]
-@.str81 = internal constant [4 x i8] c"257\00" ; <[4 x i8]*> [#uses=1]
-@.str82 = internal constant [4 x i8] c"000\00" ; <[4 x i8]*> [#uses=3]
-@.str84 = internal constant [11 x i8] c"SITE CHMOD\00" ; <[11 x i8]*> [#uses=1]
-@.str85 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str86 = internal constant [5 x i8] c"DELE\00" ; <[5 x i8]*> [#uses=1]
-@.str87 = internal constant [4 x i8] c"250\00" ; <[4 x i8]*> [#uses=1]
-@.str88 = internal constant [4 x i8] c"250\00" ; <[4 x i8]*> [#uses=1]
-@.str89 = internal constant [4 x i8] c"RMD\00" ; <[4 x i8]*> [#uses=1]
-@.str90 = internal constant [4 x i8] c"250\00" ; <[4 x i8]*> [#uses=1]
-@.str91 = internal constant [5 x i8] c"RNFR\00" ; <[5 x i8]*> [#uses=1]
-@.str92 = internal constant [4 x i8] c"350\00" ; <[4 x i8]*> [#uses=1]
-@.str93 = internal constant [5 x i8] c"RNTO\00" ; <[5 x i8]*> [#uses=1]
-@.str94 = internal constant [4 x i8] c"250\00" ; <[4 x i8]*> [#uses=1]
-@.str95 = internal constant [4 x i8] c"501\00" ; <[4 x i8]*> [#uses=1]
-@.str96 = internal constant [5 x i8] c"SIZE\00" ; <[5 x i8]*> [#uses=1]
-@.str97 = internal constant [4 x i8] c"213\00" ; <[4 x i8]*> [#uses=1]
-@.str98 = internal constant [5 x i8] c"TYPE\00" ; <[5 x i8]*> [#uses=1]
-@.str99 = internal constant [2 x i8] c"A\00" ; <[2 x i8]*> [#uses=1]
-@.str100 = internal constant [5 x i8] c"TYPE\00" ; <[5 x i8]*> [#uses=1]
-@.str101 = internal constant [2 x i8] c"I\00" ; <[2 x i8]*> [#uses=1]
-@.str102 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str103 = internal constant [5 x i8] c"MDTM\00" ; <[5 x i8]*> [#uses=1]
-@.str104 = internal constant [4 x i8] c"213\00" ; <[4 x i8]*> [#uses=1]
-@.str105 = internal constant [32 x i8] c"CLIENT: Unable to parse timeval\00" ; <[32 x i8]*> [#uses=1]
-@.str106 = internal constant [4 x i8] c"501\00" ; <[4 x i8]*> [#uses=1]
-@_D5tango4time6chrono9Gregorian9Gregorian7genericC5tango4time6chrono9Gregorian9Gregorian = external global %tango.time.chrono.Gregorian.Gregorian*, align 4 ; <%tango.time.chrono.Gregorian.Gregorian**> [#uses=2]
-@.str109 = internal constant [5 x i8] c"NOOP\00" ; <[5 x i8]*> [#uses=1]
-@.str110 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str111 = internal constant [4 x i8] c"MKD\00" ; <[4 x i8]*> [#uses=1]
-@.str112 = internal constant [4 x i8] c"257\00" ; <[4 x i8]*> [#uses=1]
-@.str113 = internal constant [5 x i8] c"FEAT\00" ; <[5 x i8]*> [#uses=1]
-@.str114 = internal constant [4 x i8] c"211\00" ; <[4 x i8]*> [#uses=1]
-@_D47TypeInfo_AS5tango3net3ftp9FtpClient10FtpFeature6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* bitcast (%20* @_D46TypeInfo_S5tango3net3ftp9FtpClient10FtpFeature6__initZ to %object.TypeInfo*) } ; <%object.TypeInfo_Array*> [#uses=1]
-@.str115 = internal constant [5 x i8] c"FEAT\00" ; <[5 x i8]*> [#uses=1]
-@.str117 = internal constant [3 x i8] c"\0D\0A\00", align 2 ; <[3 x i8]*> [#uses=1]
-@.str118 = internal constant [4 x i8] c"500\00" ; <[4 x i8]*> [#uses=1]
-@.str120 = internal constant [24 x i8] c"unknown connection type\00" ; <[24 x i8]*> [#uses=1]
-@_D5tango3net13SocketConduit13SocketConduit7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=2]
-@_D5tango3net13SocketConduit13SocketConduit6__initZ = external constant %23, align 4 ; <%23*> [#uses=1]
-@_D5tango3net13SocketConduit13SocketConduit6__vtblZ = external constant %tango.net.SocketConduit.SocketConduit.__vtbl ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=2]
-@.str122 = internal constant [5 x i8] c"EPRT\00" ; <[5 x i8]*> [#uses=1]
-@.str123 = internal constant [5 x i8] c"EPRT\00" ; <[5 x i8]*> [#uses=1]
-@.str124 = internal constant [10 x i8] c"|1|%0|%1|\00" ; <[10 x i8]*> [#uses=1]
-@.str125 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str126 = internal constant [18 x i8] c"%0,%1,%2,%3,%4,%5\00" ; <[18 x i8]*> [#uses=1]
-@.str127 = internal constant [5 x i8] c"PORT\00" ; <[5 x i8]*> [#uses=1]
-@.str128 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str129 = internal constant [5 x i8] c"SPSV\00" ; <[5 x i8]*> [#uses=1]
-@.str130 = internal constant [5 x i8] c"SPSV\00" ; <[5 x i8]*> [#uses=1]
-@.str131 = internal constant [4 x i8] c"227\00" ; <[4 x i8]*> [#uses=1]
-@.str132 = internal constant [5 x i8] c"EPSV\00" ; <[5 x i8]*> [#uses=1]
-@.str133 = internal constant [5 x i8] c"EPSV\00" ; <[5 x i8]*> [#uses=1]
-@.str134 = internal constant [4 x i8] c"229\00" ; <[4 x i8]*> [#uses=1]
-@.str135 = internal constant [34 x i8] c"\5C([^0-9][^0-9][^0-9](\5Cd+)[^0-9]\5C)\00" ; <[34 x i8]*> [#uses=1]
-@.str136 = internal constant [32 x i8] c"CLIENT: Unable to parse address\00" ; <[32 x i8]*> [#uses=1]
-@.str137 = internal constant [4 x i8] c"501\00" ; <[4 x i8]*> [#uses=1]
-@.str138 = internal constant [5 x i8] c"PASV\00" ; <[5 x i8]*> [#uses=1]
-@.str139 = internal constant [4 x i8] c"227\00" ; <[4 x i8]*> [#uses=1]
-@.str140 = internal constant [54 x i8] c"(\5Cd+),\5Cs*(\5Cd+),\5Cs*(\5Cd+),\5Cs*(\5Cd+),\5Cs*(\5Cd+)(,\5Cs*(\5Cd+))?\00" ; <[54 x i8]*> [#uses=1]
-@.str141 = internal constant [32 x i8] c"CLIENT: Unable to parse address\00" ; <[32 x i8]*> [#uses=1]
-@.str142 = internal constant [4 x i8] c"501\00" ; <[4 x i8]*> [#uses=1]
-@.str146 = internal constant [24 x i8] c"unknown connection type\00" ; <[24 x i8]*> [#uses=1]
-@_D5tango3net6Socket9SocketSet7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=3]
-@_D5tango3net6Socket9SocketSet6__initZ = external constant %24, align 4 ; <%24*> [#uses=1]
-@_D5tango3net6Socket9SocketSet6__vtblZ = external constant %tango.net.Socket.SocketSet.__vtbl ; <%tango.net.Socket.SocketSet.__vtbl*> [#uses=3]
-@.str147 = internal constant [34 x i8] c"CLIENT: No connection from server\00" ; <[34 x i8]*> [#uses=1]
-@.str148 = internal constant [4 x i8] c"420\00" ; <[4 x i8]*> [#uses=1]
-@_D5tango3net6Socket6Socket7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=2]
-@_D5tango3net6Socket6Socket6__initZ = external constant %25, align 4 ; <%25*> [#uses=1]
-@_D5tango3net6Socket6Socket6__vtblZ = external constant %tango.net.Socket.Socket.__vtbl ; <%tango.net.Socket.Socket.__vtbl*> [#uses=2]
-@.str149 = internal constant [4 x i8] c"226\00" ; <[4 x i8]*> [#uses=1]
-@.str150 = internal constant [4 x i8] c"420\00" ; <[4 x i8]*> [#uses=1]
-@.str151 = internal constant [11 x i8] c"Bad finish\00" ; <[11 x i8]*> [#uses=1]
-@.str152 = internal constant [4 x i8] c"150\00" ; <[4 x i8]*> [#uses=1]
-@.str153 = internal constant [4 x i8] c"125\00" ; <[4 x i8]*> [#uses=1]
-@.str154 = internal constant [5 x i8] c"MLST\00" ; <[5 x i8]*> [#uses=1]
-@.str155 = internal constant [5 x i8] c"MLSD\00" ; <[5 x i8]*> [#uses=1]
-@.str156 = internal constant [5 x i8] c"MLSD\00" ; <[5 x i8]*> [#uses=1]
-@_D5tango2io6device5Array5Array7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=2]
-@_D5tango2io6device5Array5Array6__initZ = external constant %26, align 4 ; <%26*> [#uses=1]
-@_D5tango2io6device5Array5Array6__vtblZ = external constant %tango.io.device.Array.Array.__vtbl ; <%tango.io.device.Array.Array.__vtbl*> [#uses=2]
-@_D48TypeInfo_AS5tango3net3ftp9FtpClient11FtpFileInfo6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* bitcast (%20* @_D47TypeInfo_S5tango3net3ftp9FtpClient11FtpFileInfo6__initZ to %object.TypeInfo*) } ; <%object.TypeInfo_Array*> [#uses=1]
-@.str161 = internal constant [34 x i8] c"CLIENT: Timeout when reading data\00" ; <[34 x i8]*> [#uses=1]
-@.str162 = internal constant [4 x i8] c"420\00" ; <[4 x i8]*> [#uses=1]
-@.str163 = internal constant [34 x i8] c"CLIENT: Timeout when sending data\00" ; <[34 x i8]*> [#uses=1]
-@.str164 = internal constant [4 x i8] c"420\00" ; <[4 x i8]*> [#uses=1]
-@.str165 = internal constant [5 x i8] c"LIST\00" ; <[5 x i8]*> [#uses=1]
-@.str166 = internal constant [5 x i8] c"LIST\00" ; <[5 x i8]*> [#uses=1]
-@.str167 = internal constant [11 x i8] c"0123456789\00" ; <[11 x i8]*> [#uses=2]
-@.str168 = internal constant [5 x i8] c"0000\00" ; <[5 x i8]*> [#uses=1]
-@.str169 = internal constant [10 x i8] c"UNIX.mode\00" ; <[10 x i8]*> [#uses=1]
-@.str170 = internal constant [11 x i8] c"0123456789\00" ; <[11 x i8]*> [#uses=2]
-@.str171 = internal constant [5 x i8] c" -> \00" ; <[5 x i8]*> [#uses=1]
-@.str172 = internal constant [7 x i8] c"target\00" ; <[7 x i8]*> [#uses=1]
-@.str173 = internal constant [5 x i8] c"type\00" ; <[5 x i8]*> [#uses=1]
-@.str174 = internal constant [5 x i8] c"link\00" ; <[5 x i8]*> [#uses=1]
-@.str175 = internal constant [43 x i8] c"(\5Cd\5Cd)-(\5Cd\5Cd)-(\5Cd\5Cd)\5Cs+(\5Cd\5Cd):(\5Cd\5Cd)(A|P)M\00" ; <[43 x i8]*> [#uses=1]
-@.str176 = internal constant [32 x i8] c"CLIENT: Unsupported LIST format\00" ; <[32 x i8]*> [#uses=1]
-@.str177 = internal constant [4 x i8] c"501\00" ; <[4 x i8]*> [#uses=1]
-@.str178 = internal constant [2 x i8] c".\00" ; <[2 x i8]*> [#uses=1]
-@.str179 = internal constant [3 x i8] c"..\00" ; <[3 x i8]*> [#uses=1]
-@.str180 = internal constant [36 x i8] c"CLIENT: Bad syntax in MLSx response\00" ; <[36 x i8]*> [#uses=1]
-@.str181 = internal constant [4 x i8] c"501\00" ; <[4 x i8]*> [#uses=1]
-@.str182 = internal constant [2 x i8] c";\00" ; <[2 x i8]*> [#uses=1]
-@.str183 = internal constant [5 x i8] c"type\00" ; <[5 x i8]*> [#uses=1]
-@.str184 = internal constant [4 x i8] c"dir\00" ; <[4 x i8]*> [#uses=1]
-@.str185 = internal constant [5 x i8] c"cdir\00" ; <[5 x i8]*> [#uses=1]
-@.str186 = internal constant [5 x i8] c"file\00" ; <[5 x i8]*> [#uses=1]
-@.str187 = internal constant [5 x i8] c"pdir\00" ; <[5 x i8]*> [#uses=1]
-@.string_switch_table_data = internal constant [4 x %"byte[]"] [%"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str184, i32 0, i32 0) }, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str185, i32 0, i32 0) }, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str186, i32 0, i32 0) }, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str187, i32 0, i32 0) }] ; <[4 x %"byte[]"]*> [#uses=1]
-@.str188 = internal constant [5 x i8] c"type\00" ; <[5 x i8]*> [#uses=1]
-@.str189 = internal constant [5 x i8] c"size\00" ; <[5 x i8]*> [#uses=1]
-@.str190 = internal constant [5 x i8] c"size\00" ; <[5 x i8]*> [#uses=1]
-@.str191 = internal constant [11 x i8] c"media-type\00" ; <[11 x i8]*> [#uses=1]
-@.str192 = internal constant [11 x i8] c"media-type\00" ; <[11 x i8]*> [#uses=1]
-@.str193 = internal constant [7 x i8] c"modify\00" ; <[7 x i8]*> [#uses=1]
-@.str194 = internal constant [7 x i8] c"modify\00" ; <[7 x i8]*> [#uses=1]
-@.str195 = internal constant [7 x i8] c"create\00" ; <[7 x i8]*> [#uses=1]
-@.str196 = internal constant [7 x i8] c"create\00" ; <[7 x i8]*> [#uses=1]
-@.str197 = internal constant [38 x i8] c"CLIENT: Bad LIST response from server\00" ; <[38 x i8]*> [#uses=1]
-@.str198 = internal constant [4 x i8] c"501\00" ; <[4 x i8]*> [#uses=1]
-@_D5tango2io6device4File4File7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=2]
-@_D5tango2io6device4File4File6__initZ = external constant %27, align 4 ; <%27*> [#uses=1]
-@_D5tango2io6device4File4File6__vtblZ = external constant %tango.io.device.File.File.__vtbl ; <%tango.io.device.File.File.__vtbl*> [#uses=2]
-@_D5tango2io6device4File4File12ReadExistingS5tango2io6device4File4File5Style = external constant %tango.io.device.File.File.Style, align 1 ; <%tango.io.device.File.File.Style*> [#uses=1]
-@_D5tango2io6device4File4File17ReadWriteExistingS5tango2io6device4File4File5Style = external constant %tango.io.device.File.File.Style, align 1 ; <%tango.io.device.File.File.Style*> [#uses=1]
-@_D5tango2io6device4File4File15ReadWriteCreateS5tango2io6device4File4File5Style = external constant %tango.io.device.File.File.Style, align 1 ; <%tango.io.device.File.File.Style*> [#uses=1]
-@.str199 = internal constant [5 x i8] c"STOR\00" ; <[5 x i8]*> [#uses=1]
-@.str200 = internal constant [5 x i8] c"APPE\00" ; <[5 x i8]*> [#uses=1]
-@.str201 = internal constant [5 x i8] c"REST\00" ; <[5 x i8]*> [#uses=1]
-@.str202 = internal constant [4 x i8] c"350\00" ; <[4 x i8]*> [#uses=1]
-@.str203 = internal constant [5 x i8] c"ALLO\00" ; <[5 x i8]*> [#uses=1]
-@.str204 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str205 = internal constant [4 x i8] c"202\00" ; <[4 x i8]*> [#uses=1]
-@.str206 = internal constant [13 x i8] c"OPTS UTF8 ON\00" ; <[13 x i8]*> [#uses=1]
-@.str207 = internal constant [4 x i8] c"200\00" ; <[4 x i8]*> [#uses=1]
-@.str208 = internal constant [5 x i8] c"RETR\00" ; <[5 x i8]*> [#uses=1]
-@.str209 = internal constant [5 x i8] c"RETR\00" ; <[5 x i8]*> [#uses=1]
-@.str210 = internal constant [5 x i8] c"STOR\00" ; <[5 x i8]*> [#uses=1]
-@_D5tango4text5Regex15RegExpException7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=17]
-@_D5tango4text5Regex15RegExpException6__initZ = external constant %28, align 4 ; <%28*> [#uses=1]
-@_D5tango4text5Regex15RegExpException6__vtblZ = external constant %object.Exception.__vtbl ; <%object.Exception.__vtbl*> [#uses=17]
-@.str211 = internal constant [28 x i8] c"cannot process operand at \22\00" ; <[28 x i8]*> [#uses=1]
-@._arguments.storage = internal constant [2 x %object.TypeInfo*] [%object.TypeInfo* @_D10TypeInfo_k6__initZ, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ] ; <[2 x %object.TypeInfo*]*> [#uses=1]
-@_D10TypeInfo_k6__initZ = external constant %object.TypeInfo ; <%object.TypeInfo*> [#uses=2]
-@.str213 = internal constant [68 x i8] c"Missing opening parentheses for closing parentheses at char {} \22{}\22\00" ; <[68 x i8]*> [#uses=1]
-@._arguments.storage214 = internal constant [3 x %object.TypeInfo*] [%object.TypeInfo* @_D10TypeInfo_k6__initZ, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ] ; <[3 x %object.TypeInfo*]*> [#uses=1]
-@.str216 = internal constant [43 x i8] c"Unexpected operand at char {} \22{}\22 in \22{}\22\00" ; <[43 x i8]*> [#uses=1]
-@.str217 = internal constant [56 x i8] c"Escape sequence \5Cb not allowed in look-ahead or -behind\00" ; <[56 x i8]*> [#uses=1]
-@.str218 = internal constant [56 x i8] c"Escape sequence \5CB not allowed in look-ahead or -behind\00" ; <[56 x i8]*> [#uses=1]
-@_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D55TypeInfo_C5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*) } ; <%object.TypeInfo_Array*> [#uses=1]
-@.str219 = internal constant [29 x i8] c"Invalid occurence range at \22\00" ; <[29 x i8]*> [#uses=1]
-@.str221 = internal constant [29 x i8] c"Invalid occurence range at \22\00" ; <[29 x i8]*> [#uses=1]
-@.str223 = internal constant [41 x i8] c"Invalid occurence range (max < min) at \22\00" ; <[41 x i8]*> [#uses=1]
-@.str225 = internal constant [45 x i8] c"Missing range start for '-' operator after \22\00" ; <[45 x i8]*> [#uses=1]
-@.str227 = internal constant [43 x i8] c"Missing range end for '-' operator after \22\00" ; <[43 x i8]*> [#uses=1]
-@.str229 = internal constant [33 x i8] c"unexpected end of string after \22\00" ; <[33 x i8]*> [#uses=1]
-@.str231 = internal constant [29 x i8] c"too few arguments for + at \22\00" ; <[29 x i8]*> [#uses=1]
-@.str233 = internal constant [29 x i8] c"too few arguments for * at \22\00" ; <[29 x i8]*> [#uses=1]
-@.str235 = internal constant [29 x i8] c"too few arguments for ? at \22\00" ; <[29 x i8]*> [#uses=1]
-@.str237 = internal constant [33 x i8] c"too few arguments for {x,y} at \22\00" ; <[33 x i8]*> [#uses=1]
-@.str239 = internal constant [29 x i8] c"too few arguments for | at \22\00" ; <[29 x i8]*> [#uses=1]
-@.str241 = internal constant [40 x i8] c"too few operands for concatenation at \22\00" ; <[40 x i8]*> [#uses=1]
-@_D5tango4core9Exception24IllegalArgumentException7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=2]
-@_D5tango4core9Exception24IllegalArgumentException6__initZ = external constant %29, align 4 ; <%29*> [#uses=1]
-@_D5tango4core9Exception24IllegalArgumentException6__vtblZ = external constant %object.Exception.__vtbl ; <%object.Exception.__vtbl*> [#uses=2]
-@.str244 = internal constant [34 x i8] c"Integer.toLong :: invalid literal\00" ; <[34 x i8]*> [#uses=1]
-@_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa5lowerAa = weak_odr constant %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str245, i32 0, i32 0) }, align 4 ; <%"byte[]"*> [#uses=0]
-@.str245 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa5upperAa = weak_odr constant %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str246, i32 0, i32 0) }, align 4 ; <%"byte[]"*> [#uses=0]
-@.str246 = internal constant [17 x i8] c"0123456789ABCDEF\00" ; <[17 x i8]*> [#uses=1]
-@_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa7formatsAS5tango4text7convert7Integer22__T14_FormatterInfoTaZ14_FormatterInfo = weak_odr constant %"_FormatterInfo!(char)[]" { i32 8, %nest.parseListLine* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0) }, align 4 ; <%"_FormatterInfo!(char)[]"*> [#uses=0]
-@.str247 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@.str248 = internal constant [2 x i8] c"-\00" ; <[2 x i8]*> [#uses=1]
-@.str249 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@.str250 = internal constant [2 x i8] c" \00" ; <[2 x i8]*> [#uses=1]
-@.str251 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@.str252 = internal constant [2 x i8] c"+\00" ; <[2 x i8]*> [#uses=1]
-@.str253 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@.str254 = internal constant [3 x i8] c"0b\00" ; <[3 x i8]*> [#uses=1]
-@.str255 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@.str256 = internal constant [3 x i8] c"0o\00" ; <[3 x i8]*> [#uses=1]
-@.str257 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@.str258 = internal constant [3 x i8] c"0x\00" ; <[3 x i8]*> [#uses=1]
-@.str259 = internal constant [17 x i8] c"0123456789abcdef\00" ; <[17 x i8]*> [#uses=1]
-@.str260 = internal constant [3 x i8] c"0X\00" ; <[3 x i8]*> [#uses=1]
-@.str261 = internal constant [17 x i8] c"0123456789ABCDEF\00" ; <[17 x i8]*> [#uses=1]
-@.constarray262 = internal global [8 x %nest.parseListLine] [%nest.parseListLine { i32 10, %"byte[]" zeroinitializer, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str247, i32 0, i32 0) } }, %nest.parseListLine { i32 10, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str248, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str249, i32 0, i32 0) } }, %nest.parseListLine { i32 10, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str250, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str251, i32 0, i32 0) } }, %nest.parseListLine { i32 10, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str252, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str253, i32 0, i32 0) } }, %nest.parseListLine { i32 2, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str254, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str255, i32 0, i32 0) } }, %nest.parseListLine { i32 8, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str256, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str257, i32 0, i32 0) } }, %nest.parseListLine { i32 16, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str258, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str259, i32 0, i32 0) } }, %nest.parseListLine { i32 16, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str260, i32 0, i32 0) }, %"byte[]" { i32 16, i8* getelementptr ([17 x i8]* @.str261, i32 0, i32 0) } }] ; <[8 x %nest.parseListLine]*> [#uses=13]
-@.str263 = internal constant [18 x i8] c"{unknown format '\00" ; <[18 x i8]*> [#uses=1]
-@.str264 = internal constant [3 x i8] c"'}\00", align 2 ; <[3 x i8]*> [#uses=1]
-@.str265 = internal constant [25 x i8] c"{output width too small}\00" ; <[25 x i8]*> [#uses=1]
-@_D12TypeInfo_AAa6__initZ = linkonce_odr constant %object.TypeInfo_Array { %object.TypeInfo.__vtbl* @_D14TypeInfo_Array6__vtblZ, i8* null, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ } ; <%object.TypeInfo_Array*> [#uses=1]
-@_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi2nla = weak_odr constant i8 10, align 1 ; <i8*> [#uses=0]
-@_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi2cra = weak_odr constant i8 13, align 1 ; <i8*> [#uses=0]
-@_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa6badargAa = weak_odr global %"byte[]" { i32 20, i8* getelementptr ([21 x i8]* @.str266, i32 0, i32 0) }, align 8 ; <%"byte[]"*> [#uses=1]
-@.str266 = internal constant [21 x i8] c"{index out of range}\00" ; <[21 x i8]*> [#uses=1]
-@_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa8toosmallAa = weak_odr global %"byte[]" { i32 25, i8* getelementptr ([26 x i8]* @.str267, i32 0, i32 0) }, align 8 ; <%"byte[]"*> [#uses=2]
-@.str267 = internal constant [26 x i8] c"{output buffer too small}\00" ; <[26 x i8]*> [#uses=1]
-@_D11TypeInfo_Ak6__initZ = external constant %object.TypeInfo ; <%object.TypeInfo*> [#uses=4]
-@_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT7__ClassZ = external global %object.ClassInfo ; <%object.ClassInfo*> [#uses=3]
-@_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__initZ = external constant %30, align 4 ; <%30*> [#uses=1]
-@_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__vtblZ = external constant %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl" ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=3]
-@_D11TypeInfo_Ag6__initZ = external constant %object.TypeInfo ; <%object.TypeInfo*> [#uses=3]
-@_D11TypeInfo_Ah6__initZ = external constant %object.TypeInfo ; <%object.TypeInfo*> [#uses=2]
-@.str280 = internal constant [9 x i8] c"RegExp: \00", align 8 ; <[9 x i8]*> [#uses=1]
-@_D10ModuleInfo6__vtblZ = external constant %object.ModuleInfo.__vtbl ; <%object.ModuleInfo.__vtbl*> [#uses=1]
-@.str289 = internal constant [24 x i8] c"tango.net.ftp.FtpClient\00" ; <[24 x i8]*> [#uses=1]
-@_D5tango4text5Regex8__ModuleZ = external global %object.ModuleInfo ; <%object.ModuleInfo*> [#uses=1]
-@_D5tango4time6chrono9Gregorian8__ModuleZ = external global %object.ModuleInfo ; <%object.ModuleInfo*> [#uses=1]
-@_D5tango4text7convert9TimeStamp8__ModuleZ = external global %object.ModuleInfo ; <%object.ModuleInfo*> [#uses=1]
-@_D5tango3net3ftp9FtpClient9__importsZ = internal constant [3 x %object.ModuleInfo*] [%object.ModuleInfo* @_D5tango4text5Regex8__ModuleZ, %object.ModuleInfo* @_D5tango4time6chrono9Gregorian8__ModuleZ, %object.ModuleInfo* @_D5tango4text7convert9TimeStamp8__ModuleZ] ; <[3 x %object.ModuleInfo*]*> [#uses=1]
-@_D5tango3net3ftp9FtpClient9__classesZ = internal constant [2 x %object.ClassInfo*] [%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ, %object.ClassInfo* @_D5tango3net3ftp9FtpClient13FTPConnection7__ClassZ] ; <[2 x %object.ClassInfo*]*> [#uses=1]
-@_D5tango3net3ftp9FtpClient8__ModuleZ = global %object.ModuleInfo { %object.ModuleInfo.__vtbl* @_D10ModuleInfo6__vtblZ, i8* null, %"byte[]" { i32 23, i8* getelementptr ([24 x i8]* @.str289, i32 0, i32 0) }, %"ModuleInfo[]" { i32 3, %object.ModuleInfo** getelementptr ([3 x %object.ModuleInfo*]* @_D5tango3net3ftp9FtpClient9__importsZ, i32 0, i32 0) }, %"ClassInfo[]" { i32 2, %object.ClassInfo** getelementptr ([2 x %object.ClassInfo*]* @_D5tango3net3ftp9FtpClient9__classesZ, i32 0, i32 0) }, i32 0, void ()* null, void ()* null, void ()* null, i8* null, void ()* null } ; <%object.ModuleInfo*> [#uses=1]
-@_D5tango3net3ftp9FtpClient11__moduleRefZ = internal global %ModuleReference { %ModuleReference* null, %object.ModuleInfo* @_D5tango3net3ftp9FtpClient8__ModuleZ } ; <%ModuleReference*> [#uses=2]
-@_Dmodule_ref = external global %ModuleReference* ; <%ModuleReference**> [#uses=2]
-@llvm.global_ctors = appending constant [1 x %31] [%31 { i32 65535, void ()* @_D5tango3net3ftp9FtpClient16__moduleinfoCtorZ }] ; <[1 x %31]*> [#uses=0]
+@.str167 = external constant [11 x i8] ; <[11 x i8]*> [#uses=1]
+@.str170 = external constant [11 x i8] ; <[11 x i8]*> [#uses=2]
+@.str171 = external constant [5 x i8] ; <[5 x i8]*> [#uses=1]
+@llvm.used = appending global [1 x i8*] [i8* bitcast (void (%"byte[]")* @foo to i8*)], section "llvm.metadata" ; <[1 x i8*]*> [#uses=0]
+
+define fastcc void @foo(%"byte[]" %line_arg) {
+entry:
+ %line_arg830 = extractvalue %"byte[]" %line_arg, 0 ; <i32> [#uses=12]
+ %line_arg831 = extractvalue %"byte[]" %line_arg, 1 ; <i8*> [#uses=17]
+ %t5 = load i8* %line_arg831 ; <i8> [#uses=1]
+ br label %forcondi
+
+forcondi: ; preds = %forbodyi, %entry
+ %l.0i = phi i32 [ 10, %entry ], [ %t4i, %forbodyi ] ; <i32> [#uses=2]
+ %p.0i = phi i8* [ getelementptr ([11 x i8]* @.str167, i32 0, i32 -1), %entry ], [ %t7i, %forbodyi ] ; <i8*> [#uses=1]
+ %t4i = add i32 %l.0i, -1 ; <i32> [#uses=1]
+ %t5i = icmp eq i32 %l.0i, 0 ; <i1> [#uses=1]
+ br i1 %t5i, label %forcond.i, label %forbodyi
+
+forbodyi: ; preds = %forcondi
+ %t7i = getelementptr i8* %p.0i, i32 1 ; <i8*> [#uses=2]
+ %t8i = load i8* %t7i ; <i8> [#uses=1]
+ %t12i = icmp eq i8 %t8i, %t5 ; <i1> [#uses=1]
+ br i1 %t12i, label %forcond.i, label %forcondi
+
+forcond.i: ; preds = %forbody.i, %forbodyi, %forcondi
+ %storemerge.i = phi i32 [ %t106.i, %forbody.i ], [ 1, %forcondi ], [ 1, %forbodyi ] ; <i32> [#uses=1]
+ %t77.i286 = phi i1 [ %phit3, %forbody.i ], [ false, %forcondi ], [ false, %forbodyi ] ; <i1> [#uses=1]
+ br i1 %t77.i286, label %forcond.i295, label %forbody.i
-define fastcc noalias %tango.net.ftp.FtpClient.FtpAddress* @_D5tango3net3ftp9FtpClient10FtpAddress6opCallFAaZPS5tango3net3ftp9FtpClient10FtpAddress(%"byte[]" %str_arg) {
-entry:
- %len.i = alloca i32, align 4 ; <i32*> [#uses=3]
- %str_arg171 = extractvalue %"byte[]" %str_arg, 0 ; <i32> [#uses=8]
- %str_arg172 = extractvalue %"byte[]" %str_arg, 1 ; <i8*> [#uses=4]
- %tmp1 = icmp eq i32 %str_arg171, 0 ; <i1> [#uses=1]
- br i1 %tmp1, label %if, label %try
-
-if: ; preds = %entry
- ret %tango.net.ftp.FtpClient.FtpAddress* null
-
-try: ; preds = %entry
- %.gc_mem = invoke noalias i8* @_d_allocmemoryT(%object.TypeInfo* bitcast (%20* @_D46TypeInfo_S5tango3net3ftp9FtpClient10FtpAddress6__initZ to %object.TypeInfo*))
- to label %postinvoke unwind label %landingpad ; <i8*> [#uses=11]
-
-postinvoke: ; preds = %try
- %.gc_mem3 = bitcast i8* %.gc_mem to %tango.net.ftp.FtpClient.FtpAddress* ; <%tango.net.ftp.FtpClient.FtpAddress*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.gc_mem, i8* bitcast (%tango.net.ftp.FtpClient.FtpAddress* @_D5tango3net3ftp9FtpClient10FtpAddress6__initZ to i8*), i32 36, i32 1)
- %tmp9.i = add i32 %str_arg171, -5 ; <i32> [#uses=2]
- %tmp16.i = icmp ugt i32 %tmp9.i, %str_arg171 ; <i1> [#uses=1]
- br i1 %tmp16.i, label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit, label %whilecond.i
-
-whilecond.i: ; preds = %else40.i, %postinvoke
- %source_arg60.pn.i = phi i8* [ %p.0.i, %else40.i ], [ %str_arg172, %postinvoke ] ; <i8*> [#uses=4]
- %start_arg.pn.i = phi i32 [ %tmp49.i, %else40.i ], [ 0, %postinvoke ] ; <i32> [#uses=3]
- %extent.0.i = phi i32 [ %tmp51.i, %else40.i ], [ %tmp9.i, %postinvoke ] ; <i32> [#uses=5]
- %p.0.i = getelementptr i8* %source_arg60.pn.i, i32 %start_arg.pn.i ; <i8*> [#uses=2]
- %tmp18.i = icmp eq i32 %extent.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp18.i, label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit, label %whilebody.i
-
-whilebody.i: ; preds = %whilecond.i
- %p.0.sum63.i = add i32 %start_arg.pn.i, -1 ; <i32> [#uses=1]
- %tmp2.i.i = getelementptr i8* %source_arg60.pn.i, i32 %p.0.sum63.i ; <i8*> [#uses=1]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %whilebody.i
- %len.0.i.i = phi i32 [ %extent.0.i, %whilebody.i ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %p.0.i.i = phi i8* [ %tmp2.i.i, %whilebody.i ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp12.i.i = icmp eq i8 %tmp8.i.i, 102 ; <i1> [#uses=1]
- br i1 %tmp12.i.i, label %if.i.i, label %forcond.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp15.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp16.i.i = ptrtoint i8* %p.0.i to i32 ; <i32> [#uses=1]
- %tmp17.i.i = sub i32 %tmp15.i.i, %tmp16.i.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i
-
-_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i: ; preds = %if.i.i, %forcond.i.i
- %tmp2561.i = phi i32 [ %tmp17.i.i, %if.i.i ], [ %extent.0.i, %forcond.i.i ] ; <i32> [#uses=3]
- %tmp27.i = icmp eq i32 %tmp2561.i, %extent.0.i ; <i1> [#uses=1]
- br i1 %tmp27.i, label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit, label %else.i
-
-else.i: ; preds = %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i
- %p.0.sum.i = add i32 %start_arg.pn.i, %tmp2561.i ; <i32> [#uses=2]
- %tmp32.i = getelementptr i8* %source_arg60.pn.i, i32 %p.0.sum.i ; <i8*> [#uses=2]
- %tmp32.sum.i = add i32 %p.0.sum.i, -1 ; <i32> [#uses=1]
- %tmp2.i.i.i = getelementptr i8* %source_arg60.pn.i, i32 %tmp32.sum.i ; <i8*> [#uses=1]
- br label %forcond.i.i.i
-
-forcond.i.i.i: ; preds = %forbody.i.i.i, %else.i
- %len.0.i.i.i = phi i32 [ 6, %else.i ], [ %tmp4.i.i.i, %forbody.i.i.i ] ; <i32> [#uses=2]
- %s2.0.i.i.i = phi i8* [ getelementptr ([7 x i8]* @.str65, i32 0, i32 0), %else.i ], [ %tmp11.i.i.i, %forbody.i.i.i ] ; <i8*> [#uses=2]
- %p.0.i.i.i = phi i8* [ %tmp2.i.i.i, %else.i ], [ %tmp7.i.i.i, %forbody.i.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i.i = add i32 %len.0.i.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i.i = icmp eq i32 %len.0.i.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i.i, label %if38.i, label %forbody.i.i.i
-
-forbody.i.i.i: ; preds = %forcond.i.i.i
- %tmp7.i.i.i = getelementptr i8* %p.0.i.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i.i = load i8* %tmp7.i.i.i ; <i8> [#uses=1]
- %tmp11.i.i.i = getelementptr i8* %s2.0.i.i.i, i32 1 ; <i8*> [#uses=1]
- %tmp12.i.i.i = load i8* %s2.0.i.i.i ; <i8> [#uses=1]
- %tmp14.i.i.i = icmp eq i8 %tmp8.i.i.i, %tmp12.i.i.i ; <i1> [#uses=1]
- br i1 %tmp14.i.i.i, label %forcond.i.i.i, label %if.i.i.i
-
-if.i.i.i: ; preds = %forbody.i.i.i
- %tmp17.i.i.i = ptrtoint i8* %tmp7.i.i.i to i32 ; <i32> [#uses=1]
- %tmp18.i.i.i = ptrtoint i8* %tmp32.i to i32 ; <i32> [#uses=1]
- %tmp19.i.i.i = sub i32 %tmp17.i.i.i, %tmp18.i.i.i ; <i32> [#uses=1]
- %phitmp = icmp eq i32 %tmp19.i.i.i, 6 ; <i1> [#uses=1]
- br i1 %phitmp, label %if38.i, label %else40.i
-
-if38.i: ; preds = %if.i.i.i, %forcond.i.i.i
- %tmp44.i = ptrtoint i8* %tmp32.i to i32 ; <i32> [#uses=1]
- %tmp45.i = ptrtoint i8* %str_arg172 to i32 ; <i32> [#uses=1]
- %tmp46.i = sub i32 %tmp44.i, %tmp45.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit
-
-else40.i: ; preds = %if.i.i.i
- %tmp49.i = add i32 %tmp2561.i, 1 ; <i32> [#uses=2]
- %tmp51.i = sub i32 %extent.0.i, %tmp49.i ; <i32> [#uses=1]
- br label %whilecond.i
-
-_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit: ; preds = %if38.i, %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i, %whilecond.i, %postinvoke
- %tmp7173 = phi i32 [ %tmp46.i, %if38.i ], [ %str_arg171, %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i ], [ %str_arg171, %whilecond.i ], [ %str_arg171, %postinvoke ] ; <i32> [#uses=1]
- %tmp9 = icmp eq i32 %tmp7173, 0 ; <i1> [#uses=1]
- br i1 %tmp9, label %if10, label %endif11
-
-if10: ; preds = %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit
- %tmp15 = getelementptr i8* %str_arg172, i32 6 ; <i8*> [#uses=1]
- %tmp16 = add i32 %str_arg171, -6 ; <i32> [#uses=1]
- br label %endif11
-
-endif11: ; preds = %if10, %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit
- %str.1.2 = phi i8* [ %tmp15, %if10 ], [ %str_arg172, %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit ] ; <i8*> [#uses=8]
- %str.0.2 = phi i32 [ %tmp16, %if10 ], [ %str_arg171, %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit ] ; <i32> [#uses=6]
- %tmp2.i235 = icmp eq i32 %str.0.2, -1 ; <i1> [#uses=1]
- br i1 %tmp2.i235, label %whilecond.i239, label %if.i236
-
-if.i236: ; preds = %endif11
- br label %whilecond.i239
-
-whilecond.i239: ; preds = %whilebody.i244, %if.i236, %endif11
- %start.0.i237 = phi i32 [ %str.0.2, %if.i236 ], [ %tmp8.i240, %whilebody.i244 ], [ -1, %endif11 ] ; <i32> [#uses=2]
- %tmp6.i238 = icmp eq i32 %start.0.i237, 0 ; <i1> [#uses=1]
- br i1 %tmp6.i238, label %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit247, label %whilebody.i244
-
-whilebody.i244: ; preds = %whilecond.i239
- %tmp8.i240 = add i32 %start.0.i237, -1 ; <i32> [#uses=3]
- %tmp10.i241 = getelementptr i8* %str.1.2, i32 %tmp8.i240 ; <i8*> [#uses=1]
- %tmp11.i242 = load i8* %tmp10.i241 ; <i8> [#uses=1]
- %tmp15.i243 = icmp eq i8 %tmp11.i242, 64 ; <i1> [#uses=1]
- br i1 %tmp15.i243, label %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit247, label %whilecond.i239
-
-_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit247: ; preds = %whilebody.i244, %whilecond.i239
- %tmp21248 = phi i32 [ %tmp8.i240, %whilebody.i244 ], [ %str.0.2, %whilecond.i239 ] ; <i32> [#uses=7]
- %tmp25 = icmp eq i32 %tmp21248, %str.0.2 ; <i1> [#uses=1]
- br i1 %tmp25, label %endif27, label %if26
-
-if26: ; preds = %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit247
- %tmp38 = add i32 %tmp21248, 1 ; <i32> [#uses=2]
- %tmp41 = getelementptr i8* %str.1.2, i32 %tmp38 ; <i8*> [#uses=2]
- %tmp42 = sub i32 %str.0.2, %tmp38 ; <i32> [#uses=2]
- %tmp2.i.i214 = getelementptr i8* %str.1.2, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i.i219
-
-forcond.i.i219: ; preds = %forbody.i.i223, %if26
- %len.0.i.i215 = phi i32 [ %tmp21248, %if26 ], [ %tmp4.i.i217, %forbody.i.i223 ] ; <i32> [#uses=2]
- %p.0.i.i216 = phi i8* [ %tmp2.i.i214, %if26 ], [ %tmp7.i.i220, %forbody.i.i223 ] ; <i8*> [#uses=1]
- %tmp4.i.i217 = add i32 %len.0.i.i215, -1 ; <i32> [#uses=1]
- %tmp5.i.i218 = icmp eq i32 %len.0.i.i215, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i218, label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit232, label %forbody.i.i223
-
-forbody.i.i223: ; preds = %forcond.i.i219
- %tmp7.i.i220 = getelementptr i8* %p.0.i.i216, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i221 = load i8* %tmp7.i.i220 ; <i8> [#uses=1]
- %tmp12.i.i222 = icmp eq i8 %tmp8.i.i221, 58 ; <i1> [#uses=1]
- br i1 %tmp12.i.i222, label %if.i.i227, label %forcond.i.i219
-
-if.i.i227: ; preds = %forbody.i.i223
- %tmp15.i.i224 = ptrtoint i8* %tmp7.i.i220 to i32 ; <i32> [#uses=1]
- %tmp16.i.i225 = ptrtoint i8* %str.1.2 to i32 ; <i32> [#uses=1]
- %tmp17.i.i226 = sub i32 %tmp15.i.i224, %tmp16.i.i225 ; <i32> [#uses=1]
- br label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit232
-
-_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit232: ; preds = %if.i.i227, %forcond.i.i219
- %tmp1318.i229 = phi i32 [ %tmp17.i.i226, %if.i.i227 ], [ %tmp21248, %forcond.i.i219 ] ; <i32> [#uses=3]
- %tmp51 = icmp eq i32 %tmp1318.i229, %tmp21248 ; <i1> [#uses=1]
- %tmp55 = getelementptr i8* %.gc_mem, i32 16 ; <i8*> [#uses=2]
- br i1 %tmp51, label %else, label %if52
-
-if52: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit232
- %0 = bitcast i8* %tmp55 to i32* ; <i32*> [#uses=1]
- store i32 %tmp1318.i229, i32* %0
- %tmp62 = getelementptr i8* %.gc_mem, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp62 to i8** ; <i8**> [#uses=1]
- store i8* %str.1.2, i8** %1
- %tmp68 = add i32 %tmp1318.i229, 1 ; <i32> [#uses=2]
- %tmp71 = getelementptr i8* %str.1.2, i32 %tmp68 ; <i8*> [#uses=1]
- %tmp72 = sub i32 %tmp21248, %tmp68 ; <i32> [#uses=1]
- %tmp73 = getelementptr i8* %.gc_mem, i32 24 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp73 to i32* ; <i32*> [#uses=1]
- store i32 %tmp72, i32* %2
- %tmp74 = getelementptr i8* %.gc_mem, i32 28 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp74 to i8** ; <i8**> [#uses=1]
- store i8* %tmp71, i8** %3
- br label %endif27
-
-else: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit232
- %4 = bitcast i8* %tmp55 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %insert = insertvalue %"byte[]" undef, i32 %tmp21248, 0 ; <%"byte[]"> [#uses=1]
- %insert150 = insertvalue %"byte[]" %insert, i8* %str.1.2, 1 ; <%"byte[]"> [#uses=1]
- store %"byte[]" %insert150, %"byte[]"* %4
- br label %endif27
-
-endif27: ; preds = %else, %if52, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit247
- %str.1.1 = phi i8* [ %tmp41, %if52 ], [ %tmp41, %else ], [ %str.1.2, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit247 ] ; <i8*> [#uses=6]
- %str.0.1 = phi i32 [ %tmp42, %if52 ], [ %tmp42, %else ], [ %str.0.2, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit247 ] ; <i32> [#uses=6]
- %tmp2.i197 = icmp eq i32 %str.0.1, -1 ; <i1> [#uses=1]
- br i1 %tmp2.i197, label %whilecond.i201, label %if.i198
-
-if.i198: ; preds = %endif27
- br label %whilecond.i201
-
-whilecond.i201: ; preds = %whilebody.i205, %if.i198, %endif27
- %start.0.i199 = phi i32 [ %str.0.1, %if.i198 ], [ %tmp8.i202, %whilebody.i205 ], [ -1, %endif27 ] ; <i32> [#uses=2]
- %tmp6.i200 = icmp eq i32 %start.0.i199, 0 ; <i1> [#uses=1]
- br i1 %tmp6.i200, label %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit, label %whilebody.i205
-
-whilebody.i205: ; preds = %whilecond.i201
- %tmp8.i202 = add i32 %start.0.i199, -1 ; <i32> [#uses=3]
- %tmp10.i = getelementptr i8* %str.1.1, i32 %tmp8.i202 ; <i8*> [#uses=1]
- %tmp11.i203 = load i8* %tmp10.i ; <i8> [#uses=1]
- %tmp15.i204 = icmp eq i8 %tmp11.i203, 58 ; <i1> [#uses=1]
- br i1 %tmp15.i204, label %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit, label %whilecond.i201
-
-_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit: ; preds = %whilebody.i205, %whilecond.i201
- %tmp80206 = phi i32 [ %tmp8.i202, %whilebody.i205 ], [ %str.0.1, %whilecond.i201 ] ; <i32> [#uses=3]
- %tmp84 = icmp eq i32 %tmp80206, %str.0.1 ; <i1> [#uses=1]
- br i1 %tmp84, label %endif86, label %if85
-
-if85: ; preds = %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit
- %tmp92 = add i32 %tmp80206, 1 ; <i32> [#uses=2]
- %tmp95 = getelementptr i8* %str.1.1, i32 %tmp92 ; <i8*> [#uses=1]
- %tmp96 = sub i32 %str.0.1, %tmp92 ; <i32> [#uses=2]
- store i32 0, i32* %len.i
- %insert.i = insertvalue %"byte[]" undef, i32 %tmp96, 0 ; <%"byte[]"> [#uses=1]
- %insert14.i = insertvalue %"byte[]" %insert.i, i8* %tmp95, 1 ; <%"byte[]"> [#uses=1]
- %tmp2.i191 = call fastcc i64 @_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl(%"byte[]" %insert14.i, i32 0, i32* %len.i) ; <i64> [#uses=1]
- %tmp4.i = load i32* %len.i ; <i32> [#uses=1]
- %tmp5.i192 = icmp ult i32 %tmp4.i, %tmp96 ; <i1> [#uses=1]
- br i1 %tmp5.i192, label %if.i, label %_D5tango4text7convert7Integer13__T6toLongTaZ6toLongFAakZl.exit
-
-if.i: ; preds = %if85
- %.newclass_gc_alloc.i195 = invoke noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4core9Exception24IllegalArgumentException7__ClassZ)
- to label %.newclass_gc_alloc.i.noexc unwind label %landingpad ; <i8*> [#uses=5]
-
-.newclass_gc_alloc.i.noexc: ; preds = %if.i
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i195 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i195 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4core9Exception24IllegalArgumentException6__vtblZ, %object.Exception.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i195, i32 4 ; <i8*> [#uses=1]
- %5 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %5
- %tmp6.i = getelementptr i8* %.newclass_gc_alloc.i195, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp6.i, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%29* @_D5tango4core9Exception24IllegalArgumentException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp2.i.i193196 = invoke fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc.i, %"byte[]" { i32 33, i8* getelementptr ([34 x i8]* @.str244, i32 0, i32 0) }, %object.Exception* null)
- to label %tmp2.i.i193.noexc unwind label %landingpad ; <%object.Exception*> [#uses=0]
-
-tmp2.i.i193.noexc: ; preds = %.newclass_gc_alloc.i.noexc
- %tmp11.i = bitcast i8* %.newclass_gc_alloc.i195 to %object.Object* ; <%object.Object*> [#uses=1]
- invoke void @_d_throw_exception(%object.Object* %tmp11.i)
- to label %.noexc unwind label %landingpad
-
-.noexc: ; preds = %tmp2.i.i193.noexc
- unreachable
-
-_D5tango4text7convert7Integer13__T6toLongTaZ6toLongFAakZl.exit: ; preds = %if85
- %tmp88 = getelementptr i8* %.gc_mem, i32 32 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp88 to i32* ; <i32*> [#uses=1]
- %tmp101 = trunc i64 %tmp2.i191 to i32 ; <i32> [#uses=1]
- store i32 %tmp101, i32* %6
- br label %endif86
-
-endif86: ; preds = %_D5tango4text7convert7Integer13__T6toLongTaZ6toLongFAakZl.exit, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit
- %str.0.0 = phi i32 [ %tmp80206, %_D5tango4text7convert7Integer13__T6toLongTaZ6toLongFAakZl.exit ], [ %str.0.1, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit ] ; <i32> [#uses=4]
- %tmp2.i.i175 = getelementptr i8* %str.1.1, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i.i180
-
-forcond.i.i180: ; preds = %forbody.i.i184, %endif86
- %len.0.i.i176 = phi i32 [ %str.0.0, %endif86 ], [ %tmp4.i.i178, %forbody.i.i184 ] ; <i32> [#uses=2]
- %p.0.i.i177 = phi i8* [ %tmp2.i.i175, %endif86 ], [ %tmp7.i.i181, %forbody.i.i184 ] ; <i8*> [#uses=1]
- %tmp4.i.i178 = add i32 %len.0.i.i176, -1 ; <i32> [#uses=1]
- %tmp5.i.i179 = icmp eq i32 %len.0.i.i176, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i179, label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit, label %forbody.i.i184
-
-forbody.i.i184: ; preds = %forcond.i.i180
- %tmp7.i.i181 = getelementptr i8* %p.0.i.i177, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i182 = load i8* %tmp7.i.i181 ; <i8> [#uses=1]
- %tmp12.i.i183 = icmp eq i8 %tmp8.i.i182, 47 ; <i1> [#uses=1]
- br i1 %tmp12.i.i183, label %if.i.i188, label %forcond.i.i180
-
-if.i.i188: ; preds = %forbody.i.i184
- %tmp15.i.i185 = ptrtoint i8* %tmp7.i.i181 to i32 ; <i32> [#uses=1]
- %tmp16.i.i186 = ptrtoint i8* %str.1.1 to i32 ; <i32> [#uses=1]
- %tmp17.i.i187 = sub i32 %tmp15.i.i185, %tmp16.i.i186 ; <i32> [#uses=1]
- br label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
-
-_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit: ; preds = %if.i.i188, %forcond.i.i180
- %tmp1318.i = phi i32 [ %tmp17.i.i187, %if.i.i188 ], [ %str.0.0, %forcond.i.i180 ] ; <i32> [#uses=4]
- %tmp115 = icmp eq i32 %tmp1318.i, %str.0.0 ; <i1> [#uses=1]
- br i1 %tmp115, label %endif117, label %if116
-
-if116: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp123 = add i32 %tmp1318.i, 1 ; <i32> [#uses=2]
- %tmp126 = getelementptr i8* %str.1.1, i32 %tmp123 ; <i8*> [#uses=1]
- %tmp127 = sub i32 %str.0.0, %tmp123 ; <i32> [#uses=1]
- %tmp128 = getelementptr i8* %.gc_mem, i32 8 ; <i8*> [#uses=1]
- %7 = bitcast i8* %tmp128 to i32* ; <i32*> [#uses=1]
- store i32 %tmp127, i32* %7
- %tmp129 = getelementptr i8* %.gc_mem, i32 12 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp129 to i8** ; <i8**> [#uses=1]
- store i8* %tmp126, i8** %8
- br label %endif117
-
-endif117: ; preds = %if116, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp137 = bitcast i8* %.gc_mem to i32* ; <i32*> [#uses=1]
- store i32 %tmp1318.i, i32* %tmp137
- %tmp138 = getelementptr i8* %.gc_mem, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %tmp138 to i8** ; <i8**> [#uses=1]
- store i8* %str.1.1, i8** %9
- %tmp143 = icmp eq i32 %tmp1318.i, 0 ; <i1> [#uses=1]
- %retval = select i1 %tmp143, %tango.net.ftp.FtpClient.FtpAddress* null, %tango.net.ftp.FtpClient.FtpAddress* %.gc_mem3 ; <%tango.net.ftp.FtpClient.FtpAddress*> [#uses=1]
- ret %tango.net.ftp.FtpClient.FtpAddress* %retval
-
-landingpad: ; preds = %tmp2.i.i193.noexc, %.newclass_gc_alloc.i.noexc, %if.i, %try
- %10 = tail call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %11 = tail call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %10, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), %object.ClassInfo* @_D6Object7__ClassZ) ; <i32> [#uses=1]
- %cond = icmp eq i32 %11, 1 ; <i1> [#uses=1]
- br i1 %cond, label %catch, label %switchdefault
-
-catch: ; preds = %landingpad
- ret %tango.net.ftp.FtpClient.FtpAddress* null
-
-switchdefault: ; preds = %landingpad
- tail call void @_d_eh_resume_unwind(i8* %10)
- unreachable
-}
-
-declare fastcc %"byte[]" @_D6object6Object8toStringMFZAa(%object.Object*)
-
-declare fastcc i32 @_D6object6Object6toHashMFZk(%object.Object*)
-
-declare fastcc i32 @_D6object6Object5opCmpMFC6ObjectZi(%object.Object*, %object.Object*)
-
-declare fastcc i32 @_D6object6Object8opEqualsMFC6ObjectZi(%object.Object*, %object.Object*)
-
-declare fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception*, %"byte[]", %object.Exception*)
-
-declare fastcc void @_D6object9Exception8writeOutMFDFAaZvZv(%object.Exception*, %"void delegate(char[])")
-
-define fastcc %"byte[]" @_D5tango3net3ftp9FtpClient12FtpException8toStringMFZAa(%tango.net.ftp.FtpClient.FtpException* nocapture %.this_arg) {
-entry:
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FtpException* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp2 ; <i32> [#uses=2]
- %tmp3 = add i32 %.len, 4 ; <i32> [#uses=2]
- %.gc_mem = tail call noalias i8* @_d_newarrayiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp3) ; <i8*> [#uses=4]
- %tmp10 = getelementptr %tango.net.ftp.FtpClient.FtpException* %.this_arg, i32 0, i32 7, i32 0 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.gc_mem, i8* %tmp10, i32 3, i32 1)
- %tmp13 = getelementptr i8* %.gc_mem, i32 3 ; <i8*> [#uses=1]
- store i8 32, i8* %tmp13
- %tmp18 = getelementptr i8* %.gc_mem, i32 4 ; <i8*> [#uses=1]
- %tmp23 = getelementptr %tango.net.ftp.FtpClient.FtpException* %.this_arg, i32 0, i32 2, i32 1 ; <i8**> [#uses=1]
- %.ptr24 = load i8** %tmp23 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp18, i8* %.ptr24, i32 %.len, i32 1)
- %insert = insertvalue %"byte[]" undef, i32 %tmp3, 0 ; <%"byte[]"> [#uses=1]
- %insert30 = insertvalue %"byte[]" %insert, i8* %.gc_mem, 1 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %insert30
-}
-
-define fastcc %tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException(%tango.net.ftp.FtpClient.FtpException* %.this_arg, %"byte[]" %message_arg, [3 x i8]* nocapture %code_arg) {
-entry:
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FtpException* %.this_arg, i32 0, i32 7, i32 0 ; <i8*> [#uses=1]
- %tmp3 = getelementptr [3 x i8]* %code_arg, i32 0, i32 0 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2, i8* %tmp3, i32 3, i32 1)
- %tmp5 = bitcast %tango.net.ftp.FtpClient.FtpException* %.this_arg to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7 = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5, %"byte[]" %message_arg, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- ret %tango.net.ftp.FtpClient.FtpException* %.this_arg
-}
-
-define fastcc %tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException5_ctorMFS5tango3net3ftp9FtpClient11FtpResponseZC5tango3net3ftp9FtpClient12FtpException(%tango.net.ftp.FtpClient.FtpException* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* nocapture byval %r_arg) {
-entry:
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FtpException* %.this_arg, i32 0, i32 7, i32 0 ; <i8*> [#uses=1]
- %tmp4 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %r_arg, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2, i8* %tmp4, i32 3, i32 1)
- %tmp6 = bitcast %tango.net.ftp.FtpClient.FtpException* %.this_arg to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %r_arg, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp8 = load %"byte[]"* %tmp7 ; <%"byte[]"> [#uses=1]
- %tmp9 = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp6, %"byte[]" %tmp8, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- ret %tango.net.ftp.FtpClient.FtpException* %.this_arg
-}
-
-declare fastcc void @_D5tango3net3ftp6Telnet6Telnet8sendlineMFAvZv(%tango.net.ftp.Telnet.Telnet*, %"byte[]")
-
-declare fastcc void @_D5tango3net3ftp6Telnet6Telnet8sendDataMFAvZv(%tango.net.ftp.Telnet.Telnet*, %"byte[]")
-
-declare fastcc %"byte[]" @_D5tango3net3ftp6Telnet6Telnet8readLineMFZAa(%tango.net.ftp.Telnet.Telnet*)
-
-declare fastcc %tango.net.SocketConduit.SocketConduit* @_D5tango3net3ftp6Telnet6Telnet19findAvailableServerMFAaiZC5tango3net13SocketConduit13SocketConduit(%tango.net.ftp.Telnet.Telnet*, %"byte[]", i32)
-
-declare fastcc void @_D5tango4time4Time8TimeSpan10fromMillisFlZS5tango4time4Time8TimeSpan(%tango.time.Time.Time* noalias nocapture sret, i64)
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection9exceptionMFAaZv(%tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg, %"byte[]" %message_arg) noreturn {
-entry:
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i8*> [#uses=6]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc, i32 36 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i, i8* getelementptr ([4 x i8]* @.str66, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" %message_arg, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp6 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp6)
- unreachable
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection7timeoutMFZS5tango4time4Time8TimeSpan(%tango.time.Time.Time* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg) nounwind {
-entry:
- %tmp34 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 10, i32 0 ; <i64*> [#uses=1]
- %tmp = load i64* %tmp34, align 1 ; <i64> [#uses=1]
- %0 = getelementptr %tango.time.Time.Time* %.sret_arg, i32 0, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp, i64* %0
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection7timeoutMFS5tango4time4Time8TimeSpanZv(%tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg, %tango.time.Time.Time* nocapture byval %t_arg) nounwind {
-entry:
- %tmp34 = getelementptr %tango.time.Time.Time* %t_arg, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp = load i64* %tmp34, align 1 ; <i64> [#uses=1]
- %0 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 10, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp, i64* %0
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection12shutdownTimeMFZS5tango4time4Time8TimeSpan(%tango.time.Time.Time* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg) nounwind {
-entry:
- %tmp1.0 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 10, i32 0 ; <i64*> [#uses=1]
- %tmp = load i64* %tmp1.0, align 1 ; <i64> [#uses=1]
- %tmp5.i = shl i64 %tmp, 1 ; <i64> [#uses=1]
- %0 = getelementptr %tango.time.Time.Time* %.sret_arg, i32 0, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp5.i, i64* %0
- ret void
-}
-
-define fastcc %"FtpFeature[]" @_D5tango3net3ftp9FtpClient13FTPConnection17supportedFeaturesMFZAS5tango3net3ftp9FtpClient10FtpFeature(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %tmp3 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp4 = icmp eq i32 %.len, 0 ; <i1> [#uses=1]
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 1 ; <%tango.net.ftp.FtpClient.FtpFeature**> [#uses=1]
- %.ptr = load %tango.net.ftp.FtpClient.FtpFeature** %tmp5 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=1]
- %tmp6 = icmp eq %tango.net.ftp.FtpClient.FtpFeature* %.ptr, null ; <i1> [#uses=1]
- %tmp7 = and i1 %tmp4, %tmp6 ; <i1> [#uses=1]
- br i1 %tmp7, label %endif, label %if
-
-if: ; preds = %entry
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5 ; <%"FtpFeature[]"*> [#uses=1]
- %tmp10 = load %"FtpFeature[]"* %tmp9 ; <%"FtpFeature[]"> [#uses=1]
- ret %"FtpFeature[]" %tmp10
-
-endif: ; preds = %entry
- %tmp12 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp13 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp12 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.getFeatures@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp13, i32 0, i32 34 ; <void (%tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.getFeatures = load void (%tango.net.ftp.FtpClient.FTPConnection*)** %"this.getFeatures@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- tail call fastcc void %this.getFeatures(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- %tmp16 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5 ; <%"FtpFeature[]"*> [#uses=1]
- %tmp17 = load %"FtpFeature[]"* %tmp16 ; <%"FtpFeature[]"> [#uses=1]
- ret %"FtpFeature[]" %tmp17
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection9exceptionMFS5tango3net3ftp9FtpClient11FtpResponseZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* nocapture byval %fr_arg) {
-entry:
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 5 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp4 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %fr_arg, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp5 = load %"byte[]"* %tmp4 ; <%"byte[]"> [#uses=1]
- tail call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %tmp5)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection7connectMFS5tango3net3ftp9FtpClient10FtpAddressZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpAddress* nocapture byval %fad_arg) {
-entry:
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.connect@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 16 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)**> [#uses=1]
- %this.connect = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)** %"this.connect@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)*> [#uses=1]
- %tmp4 = getelementptr %tango.net.ftp.FtpClient.FtpAddress* %fad_arg, i32 0, i32 0 ; <%"byte[]"*> [#uses=1]
- %tmp5 = load %"byte[]"* %tmp4 ; <%"byte[]"> [#uses=1]
- %tmp6 = getelementptr %tango.net.ftp.FtpClient.FtpAddress* %fad_arg, i32 0, i32 2 ; <%"byte[]"*> [#uses=1]
- %tmp7 = load %"byte[]"* %tmp6 ; <%"byte[]"> [#uses=1]
- %tmp8 = getelementptr %tango.net.ftp.FtpClient.FtpAddress* %fad_arg, i32 0, i32 3 ; <%"byte[]"*> [#uses=1]
- %tmp9 = load %"byte[]"* %tmp8 ; <%"byte[]"> [#uses=1]
- %tmp10 = getelementptr %tango.net.ftp.FtpClient.FtpAddress* %fad_arg, i32 0, i32 4 ; <i32*> [#uses=1]
- %tmp11 = load i32* %tmp10 ; <i32> [#uses=1]
- tail call fastcc void %this.connect(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %tmp5, %"byte[]" %tmp7, %"byte[]" %tmp9, i32 %tmp11)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection7connectMFAaAaAakZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %hostname_arg, %"byte[]" %username_arg, %"byte[]" %password_arg, i32 %port_arg) {
-entry:
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %__arrayArg120 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp44 = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %__arrayArg121 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp73 = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %username_arg100 = extractvalue %"byte[]" %username_arg, 0 ; <i32> [#uses=2]
- %username_arg101 = extractvalue %"byte[]" %username_arg, 1 ; <i8*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 2 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=1]
- %tmp2 = load %tango.net.SocketConduit.SocketConduit** %tmp1 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=3]
- %tmp3 = icmp eq %tango.net.SocketConduit.SocketConduit* %tmp2, null ; <i1> [#uses=1]
- br i1 %tmp3, label %endif, label %if
-
-if: ; preds = %entry
- %tmp7 = bitcast %tango.net.SocketConduit.SocketConduit* %tmp2 to %tango.io.device.Conduit.Conduit* ; <%tango.io.device.Conduit.Conduit*> [#uses=1]
- %tmp1.i = bitcast %tango.net.SocketConduit.SocketConduit* %tmp2 to %tango.io.device.Conduit.Conduit.__vtbl** ; <%tango.io.device.Conduit.Conduit.__vtbl**> [#uses=1]
- %tmp2.i = load %tango.io.device.Conduit.Conduit.__vtbl** %tmp1.i ; <%tango.io.device.Conduit.Conduit.__vtbl*> [#uses=1]
- %"this.detach@vtbl.i" = getelementptr %tango.io.device.Conduit.Conduit.__vtbl* %tmp2.i, i32 0, i32 8 ; <void (%tango.io.device.Conduit.Conduit*)**> [#uses=1]
- %this.detach.i = load void (%tango.io.device.Conduit.Conduit*)** %"this.detach@vtbl.i", align 4 ; <void (%tango.io.device.Conduit.Conduit*)*> [#uses=1]
- call fastcc void %this.detach.i(%tango.io.device.Conduit.Conduit* %tmp7)
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp9 = bitcast %tango.net.ftp.FtpClient.FTPConnection* %.this_arg to %tango.net.ftp.Telnet.Telnet* ; <%tango.net.ftp.Telnet.Telnet*> [#uses=1]
- %tmp10 = bitcast %tango.net.ftp.FtpClient.FTPConnection* %.this_arg to %tango.net.ftp.Telnet.Telnet.__vtbl** ; <%tango.net.ftp.Telnet.Telnet.__vtbl**> [#uses=1]
- %tmp11 = load %tango.net.ftp.Telnet.Telnet.__vtbl** %tmp10 ; <%tango.net.ftp.Telnet.Telnet.__vtbl*> [#uses=1]
- %"(cast(Telnet)this).findAvailableServer@vtbl" = getelementptr %tango.net.ftp.Telnet.Telnet.__vtbl* %tmp11, i32 0, i32 9 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.Telnet.Telnet*, %"byte[]", i32)**> [#uses=1]
- %"(cast(Telnet)this).findAvailableServer" = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.Telnet.Telnet*, %"byte[]", i32)** %"(cast(Telnet)this).findAvailableServer@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.Telnet.Telnet*, %"byte[]", i32)*> [#uses=1]
- %tmp15 = call fastcc %tango.net.SocketConduit.SocketConduit* %"(cast(Telnet)this).findAvailableServer"(%tango.net.ftp.Telnet.Telnet* %tmp9, %"byte[]" %hostname_arg, i32 %port_arg) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=0]
- %tmp22 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=7]
- %tmp23 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp22 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp23, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- invoke fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str67, i32 0, i32 0) })
- to label %postinvoke unwind label %landingpad
-
-postinvoke: ; preds = %endif
- %tmp26 = icmp eq i32 %username_arg100, 0 ; <i1> [#uses=1]
- br i1 %tmp26, label %if27, label %endif28
-
-if27: ; preds = %postinvoke
- ret void
-
-endif28: ; preds = %postinvoke
- %tmp31 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp22 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp31, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp33 = getelementptr [1 x %"byte[]"]* %__arrayArg120, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- %insert = insertvalue %"byte[]" undef, i32 %username_arg100, 0 ; <%"byte[]"> [#uses=1]
- %insert99 = insertvalue %"byte[]" %insert, i8* %username_arg101, 1 ; <%"byte[]"> [#uses=1]
- store %"byte[]" %insert99, %"byte[]"* %tmp33, align 8
- %tmp36 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp33, 1 ; <%"char[][]"> [#uses=1]
- invoke fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str68, i32 0, i32 0) }, %"char[][]" %tmp36)
- to label %postinvoke37 unwind label %landingpad
-
-postinvoke37: ; preds = %endif28
- %tmp40 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp22 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl41" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp40, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse43 = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl41", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.readResponse43(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp44, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke45 unwind label %landingpad
-
-postinvoke45: ; preds = %postinvoke37
- %tmp46 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=5]
- %tmp47 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp44, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp46, i8* %tmp47, i32 12, i32 4)
- %tmp50 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp46, 1 ; <%"byte[]"> [#uses=1]
- %tmp52 = invoke i32 @_adEq(%"byte[]" %tmp50, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str69, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly
- to label %postinvoke51 unwind label %landingpad ; <i32> [#uses=1]
-
-postinvoke51: ; preds = %postinvoke45
- %tmp53 = icmp eq i32 %tmp52, 0 ; <i1> [#uses=1]
- br i1 %tmp53, label %endif55, label %if54
-
-if54: ; preds = %postinvoke51
- %tmp58 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp22 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl59" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp58, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand61 = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl59", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp62 = getelementptr [1 x %"byte[]"]* %__arrayArg121, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %password_arg, %"byte[]"* %tmp62, align 8
- %tmp65 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp62, 1 ; <%"char[][]"> [#uses=1]
- invoke fastcc void %this.sendCommand61(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str70, i32 0, i32 0) }, %"char[][]" %tmp65)
- to label %postinvoke66 unwind label %landingpad
-
-postinvoke66: ; preds = %if54
- %tmp69 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp22 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl70" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp69, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse72 = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl70", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.readResponse72(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp73, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke74 unwind label %landingpad
-
-postinvoke74: ; preds = %postinvoke66
- %tmp76 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp73, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp46, i8* %tmp76, i32 12, i32 4)
- br label %endif55
-
-endif55: ; preds = %postinvoke74, %postinvoke51
- %tmp79 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp46, 1 ; <%"byte[]"> [#uses=1]
- %tmp81 = invoke i32 @_adEq(%"byte[]" %tmp79, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str71, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly
- to label %postinvoke80 unwind label %landingpad ; <i32> [#uses=1]
-
-postinvoke80: ; preds = %endif55
- %tmp82 = icmp eq i32 %tmp81, 0 ; <i1> [#uses=1]
- br i1 %tmp82, label %andand, label %endtrycatch
-
-andand: ; preds = %postinvoke80
- %tmp86 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp46, 1 ; <%"byte[]"> [#uses=1]
- %tmp88 = invoke i32 @_adEq(%"byte[]" %tmp86, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str72, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly
- to label %postinvoke87 unwind label %landingpad ; <i32> [#uses=1]
-
-postinvoke87: ; preds = %andand
- %tmp89 = icmp eq i32 %tmp88, 0 ; <i1> [#uses=1]
- br i1 %tmp89, label %if91, label %endtrycatch
-
-if91: ; preds = %postinvoke87
- %tmp95 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp22 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp95, i32 0, i32 14 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- invoke fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response)
- to label %endtrycatch unwind label %landingpad
-
-landingpad: ; preds = %if91, %andand, %endif55, %postinvoke66, %if54, %postinvoke45, %postinvoke37, %endif28, %endif
- %0 = call i8* @llvm.eh.exception() ; <i8*> [#uses=3]
- %1 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %0, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), %object.ClassInfo* @_D6Object7__ClassZ) ; <i32> [#uses=1]
- %cond = icmp eq i32 %1, 1 ; <i1> [#uses=1]
- br i1 %cond, label %catch, label %switchdefault
-
-catch: ; preds = %landingpad
- %2 = bitcast i8* %0 to %object.Object* ; <%object.Object*> [#uses=1]
- %tmp18 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp22 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.close@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp18, i32 0, i32 17 ; <void (%tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.close = load void (%tango.net.ftp.FtpClient.FTPConnection*)** %"this.close@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- call fastcc void %this.close(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- call void @_d_throw_exception(%object.Object* %2)
- unreachable
-
-switchdefault: ; preds = %landingpad
- call void @_d_eh_resume_unwind(i8* %0)
- unreachable
-
-endtrycatch: ; preds = %if91, %postinvoke87, %postinvoke80
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection5closeMFZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 9 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=1]
- %tmp2 = load %tango.net.SocketConduit.SocketConduit** %tmp1 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp3 = icmp eq %tango.net.SocketConduit.SocketConduit* %tmp2, null ; <i1> [#uses=1]
- br i1 %tmp3, label %endif, label %if
-
-if: ; preds = %entry
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp5 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.finishDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 44 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.finishDataCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)** %"this.finishDataCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %this.finishDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp2)
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp12 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 2 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=4]
- %tmp13 = load %tango.net.SocketConduit.SocketConduit** %tmp12 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
- %tmp14 = icmp eq %tango.net.SocketConduit.SocketConduit* %tmp13, null ; <i1> [#uses=1]
- br i1 %tmp14, label %endif16, label %try
-
-try: ; preds = %endif
- %tmp18 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp19 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp18 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp19, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- invoke fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str73, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- to label %postinvoke unwind label %landingpad
-
-postinvoke: ; preds = %try
- %tmp23 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp18 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp23, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- invoke fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str74, i32 0, i32 0) })
- to label %endtrycatch unwind label %landingpad
-
-landingpad: ; preds = %postinvoke, %try
- %0 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %1 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %0, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), %object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i32> [#uses=1]
- %cond = icmp eq i32 %1, 1 ; <i1> [#uses=1]
- br i1 %cond, label %endtrycatch, label %switchdefault
-
-switchdefault: ; preds = %landingpad
- call void @_d_eh_resume_unwind(i8* %0)
- unreachable
-
-endtrycatch: ; preds = %landingpad, %postinvoke
- %tmp28 = load %tango.net.SocketConduit.SocketConduit** %tmp12 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp29 = bitcast %tango.net.SocketConduit.SocketConduit* %tmp28 to %tango.io.device.Conduit.Conduit* ; <%tango.io.device.Conduit.Conduit*> [#uses=1]
- %tmp1.i = bitcast %tango.net.SocketConduit.SocketConduit* %tmp28 to %tango.io.device.Conduit.Conduit.__vtbl** ; <%tango.io.device.Conduit.Conduit.__vtbl**> [#uses=1]
- %tmp2.i = load %tango.io.device.Conduit.Conduit.__vtbl** %tmp1.i ; <%tango.io.device.Conduit.Conduit.__vtbl*> [#uses=1]
- %"this.detach@vtbl.i" = getelementptr %tango.io.device.Conduit.Conduit.__vtbl* %tmp2.i, i32 0, i32 8 ; <void (%tango.io.device.Conduit.Conduit*)**> [#uses=1]
- %this.detach.i = load void (%tango.io.device.Conduit.Conduit*)** %"this.detach@vtbl.i", align 4 ; <void (%tango.io.device.Conduit.Conduit*)*> [#uses=1]
- call fastcc void %this.detach.i(%tango.io.device.Conduit.Conduit* %tmp29)
- %tmp31 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5 ; <%"FtpFeature[]"*> [#uses=1]
- %tmp32 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp32 ; <i32> [#uses=1]
- %tmp33 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 1 ; <%tango.net.ftp.FtpClient.FtpFeature**> [#uses=1]
- %.ptr = load %tango.net.ftp.FtpClient.FtpFeature** %tmp33 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=1]
- %.tmp = bitcast %tango.net.ftp.FtpClient.FtpFeature* %.ptr to i8* ; <i8*> [#uses=1]
- call void @_d_delarray(i32 %.len, i8* %.tmp)
- store %"FtpFeature[]" zeroinitializer, %"FtpFeature[]"* %tmp31
- %tmp36 = load %tango.net.SocketConduit.SocketConduit** %tmp12 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
- %.tmp37 = bitcast %tango.net.SocketConduit.SocketConduit* %tmp36 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp37)
- store %tango.net.SocketConduit.SocketConduit* null, %tango.net.SocketConduit.SocketConduit** %tmp12
- ret void
-
-endif16: ; preds = %endif
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection10setPassiveMFZv(%tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg) {
-entry:
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 0 ; <i32*> [#uses=1]
- store i32 1, i32* %tmp2
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 1 ; <%tango.net.Socket.Address**> [#uses=2]
- %tmp6 = load %tango.net.Socket.Address** %tmp5 ; <%tango.net.Socket.Address*> [#uses=1]
- %.tmp = bitcast %tango.net.Socket.Address* %tmp6 to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_delclass(%object.Object* %.tmp)
- store %tango.net.Socket.Address* null, %tango.net.Socket.Address** %tmp5
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 2 ; <%tango.net.Socket.Address**> [#uses=2]
- %tmp10 = load %tango.net.Socket.Address** %tmp9 ; <%tango.net.Socket.Address*> [#uses=1]
- %.tmp11 = bitcast %tango.net.Socket.Address* %tmp10 to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_delclass(%object.Object* %.tmp11)
- store %tango.net.Socket.Address* null, %tango.net.Socket.Address** %tmp9
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection9setActiveMFAatAatZv(%tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg, %"byte[]" %ip_arg, i16 zeroext %port_arg, %"byte[]" %listen_ip_arg, i16 zeroext %listen_port_arg) {
-entry:
- %listen_ip_arg64 = extractvalue %"byte[]" %listen_ip_arg, 0 ; <i32> [#uses=2]
- %listen_ip_arg65 = extractvalue %"byte[]" %listen_ip_arg, 1 ; <i8*> [#uses=2]
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 0 ; <i32*> [#uses=1]
- store i32 0, i32* %tmp2
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 1 ; <%tango.net.Socket.Address**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.IPv4Address* ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=1]
- store %tango.net.Socket.IPv4Address.__vtbl* @_D5tango3net6Socket11IPv4Address6__vtblZ, %tango.net.Socket.IPv4Address.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp6 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp6, i8* getelementptr (%tango.net.Socket.IPv4Address* bitcast (%22* @_D5tango3net6Socket11IPv4Address6__initZ to %tango.net.Socket.IPv4Address*), i32 0, i32 2, i32 0), i32 24, i32 1)
- %tmp12 = zext i16 %port_arg to i32 ; <i32> [#uses=1]
- %tmp13 = tail call fastcc %tango.net.Socket.IPv4Address* @_D5tango3net6Socket11IPv4Address5_ctorMFAaiZC5tango3net6Socket11IPv4Address(%tango.net.Socket.IPv4Address* %.newclass_gc, %"byte[]" %ip_arg, i32 %tmp12) ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %tmp14 = bitcast %tango.net.Socket.IPv4Address* %tmp13 to %tango.net.Socket.Address* ; <%tango.net.Socket.Address*> [#uses=1]
- store %tango.net.Socket.Address* %tmp14, %tango.net.Socket.Address** %tmp5
- %tmp17 = icmp eq i16 %listen_port_arg, 0 ; <i1> [#uses=1]
- %listen_port.0 = select i1 %tmp17, i16 %port_arg, i16 %listen_port_arg ; <i16> [#uses=2]
- %tmp22 = insertvalue %"byte[]" undef, i32 %listen_ip_arg64, 0 ; <%"byte[]"> [#uses=1]
- %tmp23 = insertvalue %"byte[]" %tmp22, i8* %listen_ip_arg65, 1 ; <%"byte[]"> [#uses=1]
- %tmp24 = tail call i32 @_adEq(%"byte[]" %tmp23, %"byte[]" zeroinitializer, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp25 = icmp eq i32 %tmp24, 0 ; <i1> [#uses=1]
- %tmp30 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 2 ; <%tango.net.Socket.Address**> [#uses=2]
- %.newclass_gc_alloc31 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) ; <i8*> [#uses=7]
- %vtbl33 = bitcast i8* %.newclass_gc_alloc31 to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=1]
- store %tango.net.Socket.IPv4Address.__vtbl* @_D5tango3net6Socket11IPv4Address6__vtblZ, %tango.net.Socket.IPv4Address.__vtbl** %vtbl33
- %monitor34 = getelementptr i8* %.newclass_gc_alloc31, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor34 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp35 = getelementptr i8* %.newclass_gc_alloc31, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp35, i8* getelementptr (%tango.net.Socket.IPv4Address* bitcast (%22* @_D5tango3net6Socket11IPv4Address6__initZ to %tango.net.Socket.IPv4Address*), i32 0, i32 2, i32 0), i32 24, i32 1)
- br i1 %tmp25, label %else, label %if26
-
-if26: ; preds = %entry
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc31, i32 20 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp2.i to i32* ; <i32*> [#uses=1]
- store i32 0, i32* %2
- %tmp7.i = getelementptr i8* %.newclass_gc_alloc31, i32 18 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp7.i to i16* ; <i16*> [#uses=1]
- store i16 %listen_port.0, i16* %3
- %tmp41 = bitcast i8* %.newclass_gc_alloc31 to %tango.net.Socket.Address* ; <%tango.net.Socket.Address*> [#uses=1]
- store %tango.net.Socket.Address* %tmp41, %tango.net.Socket.Address** %tmp30
- ret void
-
-else: ; preds = %entry
- %.newclass_gc32 = bitcast i8* %.newclass_gc_alloc31 to %tango.net.Socket.IPv4Address* ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %insert = insertvalue %"byte[]" undef, i32 %listen_ip_arg64, 0 ; <%"byte[]"> [#uses=1]
- %insert59 = insertvalue %"byte[]" %insert, i8* %listen_ip_arg65, 1 ; <%"byte[]"> [#uses=1]
- %tmp55 = zext i16 %listen_port.0 to i32 ; <i32> [#uses=1]
- %tmp56 = tail call fastcc %tango.net.Socket.IPv4Address* @_D5tango3net6Socket11IPv4Address5_ctorMFAaiZC5tango3net6Socket11IPv4Address(%tango.net.Socket.IPv4Address* %.newclass_gc32, %"byte[]" %insert59, i32 %tmp55) ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %tmp57 = bitcast %tango.net.Socket.IPv4Address* %tmp56 to %tango.net.Socket.Address* ; <%tango.net.Socket.Address*> [#uses=1]
- store %tango.net.Socket.Address* %tmp57, %tango.net.Socket.Address** %tmp30
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection2cdMFAaZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %dir_arg) {
-entry:
- %__arrayArg123 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp4 = getelementptr [1 x %"byte[]"]* %__arrayArg123, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %dir_arg, %"byte[]"* %tmp4, align 8
- %tmp7 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp4, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str75, i32 0, i32 0) }, %"char[][]" %tmp7)
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str76, i32 0, i32 0) })
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection4cdupMFZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %fr = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str77, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- %tmp8 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %fr, i32 0, i32 0, i32 0 ; <i8*> [#uses=3]
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp8, i8* %tmp9, i32 12, i32 4)
- %tmp12 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp8, 1 ; <%"byte[]"> [#uses=1]
- %tmp13 = call i32 @_adEq(%"byte[]" %tmp12, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str78, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp14 = icmp eq i32 %tmp13, 0 ; <i1> [#uses=1]
- br i1 %tmp14, label %oror, label %if.critedge
-
-oror: ; preds = %entry
- %tmp17 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp8, 1 ; <%"byte[]"> [#uses=1]
- %tmp18 = call i32 @_adEq(%"byte[]" %tmp17, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str79, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp19 = icmp eq i32 %tmp18, 0 ; <i1> [#uses=1]
- br i1 %tmp19, label %else, label %if
-
-if.critedge: ; preds = %entry
- ret void
-
-if: ; preds = %oror
- ret void
-
-else: ; preds = %oror
- %tmp22 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp22, i32 0, i32 14 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %fr)
- ret void
-}
-
-define fastcc %"byte[]" @_D5tango3net3ftp9FtpClient13FTPConnection3cwdMFZAa(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str80, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str81, i32 0, i32 0) })
- %tmp8 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp8, i8* %tmp9, i32 12, i32 4)
- %tmp12 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.parse257@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp12, i32 0, i32 38 ; <%"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.parse257 = load %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.parse257@vtbl", align 4 ; <%"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- %tmp14 = call fastcc %"byte[]" %this.parse257(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response) ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp14
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection5chmodMFAaiZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, i32 %mode_arg) {
-entry:
- %.nongc_mem182.i = alloca [18 x i8], align 1 ; <[18 x i8]*> [#uses=2]
- %__arrayArg126 = alloca [2 x %"byte[]"], align 8 ; <[2 x %"byte[]"]*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp3 = sext i32 %mode_arg to i64 ; <i64> [#uses=1]
- %.nongc_mem182.sub.i = getelementptr [18 x i8]* %.nongc_mem182.i, i32 0, i32 0 ; <i8*> [#uses=2]
- switch i32 111, label %default37.i [
- i32 100, label %case8.i
- i32 68, label %case8.i
- i32 103, label %case8.i
- i32 71, label %case8.i
- i32 117, label %switchend.i
- i32 85, label %switchend.i
- i32 98, label %case28.i
- i32 66, label %case28.i
- i32 111, label %case31.i
- i32 79, label %case31.i
- i32 120, label %case33.i
- i32 88, label %case35.i
- ]
-
-case8.i: ; preds = %entry, %entry, %entry, %entry
- br i1 undef, label %if11.i, label %switchend.i
-
-if11.i: ; preds = %case8.i
- br label %switchend.i
-
-case28.i: ; preds = %entry, %entry
- br label %switchend.i
-
-case31.i: ; preds = %entry, %entry
- br label %switchend.i
-
-case33.i: ; preds = %entry
- br label %switchend.i
-
-case35.i: ; preds = %entry
- br label %switchend.i
-
-default37.i: ; preds = %entry
- call void @llvm.memcpy.i32(i8* %.nongc_mem182.sub.i, i8* getelementptr ([18 x i8]* @.str263, i32 0, i32 0), i32 17, i32 1)
- %tmp38.i = getelementptr [18 x i8]* %.nongc_mem182.i, i32 0, i32 17 ; <i8*> [#uses=1]
- store i8 111, i8* %tmp38.i
- %.gc_mem40.i = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 20) ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %.gc_mem40.i, i8* %.nongc_mem182.sub.i, i32 18, i32 1)
- %tmp41.i = getelementptr i8* %.gc_mem40.i, i32 18 ; <i8*> [#uses=1]
- %tmp41181.i = bitcast i8* %tmp41.i to i16* ; <i16*> [#uses=1]
- %tmp.i = load i16* bitcast ([3 x i8]* @.str264 to i16*), align 2 ; <i16> [#uses=1]
- store i16 %tmp.i, i16* %tmp41181.i, align 1
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-switchend.i: ; preds = %case35.i, %case33.i, %case31.i, %case28.i, %if11.i, %case8.i, %entry, %entry
- %index.1.i = phi i32 [ 7, %case35.i ], [ 6, %case33.i ], [ 5, %case31.i ], [ 4, %case28.i ], [ 0, %entry ], [ 0, %entry ], [ 1, %if11.i ], [ 0, %case8.i ] ; <i32> [#uses=3]
- %pre.0.i = phi i8 [ -1, %case35.i ], [ -1, %case33.i ], [ -1, %case31.i ], [ -1, %case28.i ], [ 35, %entry ], [ 35, %if11.i ], [ 35, %entry ], [ 35, %case8.i ] ; <i8> [#uses=1]
- %tmp48.i = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %index.1.i, i32 2 ; <%"byte[]"*> [#uses=1]
- %tmp49.i = load %"byte[]"* %tmp48.i ; <%"byte[]"> [#uses=1]
- %tmp49178.i = extractvalue %"byte[]" %tmp49.i, 1 ; <i8*> [#uses=2]
- %tmp51.i = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %index.1.i, i32 0 ; <i32*> [#uses=1]
- %tmp52.i = load i32* %tmp51.i ; <i32> [#uses=3]
- %tmp58.i19 = icmp sgt i32 %mode_arg, -1 ; <i1> [#uses=1]
- br i1 %tmp58.i19, label %if59.i, label %dowhile82.i
-
-if59.i: ; preds = %switchend.i
- br label %dowhile.i
-
-dowhile.i: ; preds = %andand.i, %if59.i
- %p.0.i = phi i8* [ getelementptr ([4 x i8]* @.str82, i32 0, i32 3), %if59.i ], [ %tmp65.i, %andand.i ] ; <i8*> [#uses=1]
- %v.0.i = phi i32 [ %mode_arg, %if59.i ], [ %tmp75.i, %andand.i ] ; <i32> [#uses=2]
- %len.0.i = phi i32 [ 3, %if59.i ], [ %tmp78.i, %andand.i ] ; <i32> [#uses=3]
- %tmp65.i = getelementptr i8* %p.0.i, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i = urem i32 %v.0.i, %tmp52.i ; <i32> [#uses=1]
- %tmp71.i = getelementptr i8* %tmp49178.i, i32 %tmp68.i ; <i8*> [#uses=1]
- %tmp72.i = load i8* %tmp71.i ; <i8> [#uses=1]
- store i8 %tmp72.i, i8* %tmp65.i
- %tmp75.i = udiv i32 %v.0.i, %tmp52.i ; <i32> [#uses=2]
- %tmp76.i = icmp eq i32 %tmp75.i, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i, label %endif60.i, label %andand.i
-
-andand.i: ; preds = %dowhile.i
- %tmp78.i = add i32 %len.0.i, -1 ; <i32> [#uses=2]
- %tmp79.i = icmp eq i32 %len.0.i, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i, label %endif60.i, label %dowhile.i
-
-dowhile82.i: ; preds = %andand100.i, %switchend.i
- %p.2.i = phi i8* [ %tmp86.i, %andand100.i ], [ getelementptr ([4 x i8]* @.str82, i32 0, i32 3), %switchend.i ] ; <i8*> [#uses=1]
- %v80.0.i = phi i64 [ %tmp99.i, %andand100.i ], [ %tmp3, %switchend.i ] ; <i64> [#uses=2]
- %len.2.i = phi i32 [ %tmp104.i, %andand100.i ], [ 3, %switchend.i ] ; <i32> [#uses=3]
- %tmp86.i = getelementptr i8* %p.2.i, i32 -1 ; <i8*> [#uses=2]
- %tmp88.i = zext i32 %tmp52.i to i64 ; <i64> [#uses=2]
- %tmp90.i = urem i64 %v80.0.i, %tmp88.i ; <i64> [#uses=1]
- %tmp91.i = trunc i64 %tmp90.i to i32 ; <i32> [#uses=1]
- %tmp94.i = getelementptr i8* %tmp49178.i, i32 %tmp91.i ; <i8*> [#uses=1]
- %tmp95.i = load i8* %tmp94.i ; <i8> [#uses=1]
- store i8 %tmp95.i, i8* %tmp86.i
- %tmp99.i = udiv i64 %v80.0.i, %tmp88.i ; <i64> [#uses=2]
- %tmp102.i = icmp eq i64 %tmp99.i, 0 ; <i1> [#uses=1]
- br i1 %tmp102.i, label %endif60.i, label %andand100.i
-
-andand100.i: ; preds = %dowhile82.i
- %tmp104.i = add i32 %len.2.i, -1 ; <i32> [#uses=2]
- %tmp105.i = icmp eq i32 %len.2.i, 1 ; <i1> [#uses=1]
- br i1 %tmp105.i, label %endif60.i, label %dowhile82.i
-
-endif60.i: ; preds = %andand100.i, %dowhile82.i, %andand.i, %dowhile.i
- %len.1.i = phi i32 [ %tmp78.i, %andand.i ], [ %len.0.i, %dowhile.i ], [ %tmp104.i, %andand100.i ], [ %len.2.i, %dowhile82.i ] ; <i32> [#uses=2]
- %tmp109.i = icmp eq i8 %pre.0.i, 35 ; <i1> [#uses=1]
- br i1 %tmp109.i, label %condtrue.i, label %condend.i
-
-condtrue.i: ; preds = %endif60.i
- %tmp111.i = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %index.1.i, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp112.i = load %"byte[]"* %tmp111.i ; <%"byte[]"> [#uses=1]
- br label %condend.i
-
-condend.i: ; preds = %condtrue.i, %endif60.i
- %condtmp.0.i = phi %"byte[]" [ %tmp112.i, %condtrue.i ], [ zeroinitializer, %endif60.i ] ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i = extractvalue %"byte[]" %condtmp.0.i, 0 ; <i32> [#uses=3]
- %tmp117.i = icmp ugt i32 %len.1.i, %condtmp.0175.i ; <i1> [#uses=1]
- br i1 %tmp117.i, label %endif127.i, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-endif127.i: ; preds = %condend.i
- %condtmp.0176.i = extractvalue %"byte[]" %condtmp.0.i, 1 ; <i8*> [#uses=1]
- %tmp123.i = add i32 %condtmp.0175.i, 1 ; <i32> [#uses=1]
- %tmp124.i = sub i32 %len.1.i, %tmp123.i ; <i32> [#uses=1]
- %tmp156.i = getelementptr [4 x i8]* @.str82, i32 0, i32 %tmp124.i ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp156.i, i8* %condtmp.0176.i, i32 %condtmp.0175.i, i32 1)
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit: ; preds = %endif127.i, %condend.i, %default37.i
- %tmp6 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp7 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp6 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp9 = getelementptr [2 x %"byte[]"]* %__arrayArg126, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str82, i32 0, i32 0) }, %"byte[]"* %tmp9, align 8
- %tmp11 = getelementptr [2 x %"byte[]"]* %__arrayArg126, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- store %"byte[]" %path_arg, %"byte[]"* %tmp11, align 8
- %tmp14 = insertvalue %"char[][]" { i32 2, %"byte[]"* undef }, %"byte[]"* %tmp9, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 10, i8* getelementptr ([11 x i8]* @.str84, i32 0, i32 0) }, %"char[][]" %tmp14)
- %tmp17 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp6 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp17, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str85, i32 0, i32 0) })
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection3delMFAaZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %__arrayArg127 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp4 = getelementptr [1 x %"byte[]"]* %__arrayArg127, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp4, align 8
- %tmp7 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp4, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str86, i32 0, i32 0) }, %"char[][]" %tmp7)
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str87, i32 0, i32 0) })
- %tmp12 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=2]
- %tmp13 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp12, i8* %tmp13, i32 12, i32 4)
- %tmp16 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp12, 1 ; <%"byte[]"> [#uses=1]
- %tmp17 = call i32 @_adEq(%"byte[]" %tmp16, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str88, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp18 = icmp eq i32 %tmp17, 0 ; <i1> [#uses=1]
- br i1 %tmp18, label %if, label %endif
-
-if: ; preds = %entry
- %tmp22 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.rm@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp22, i32 0, i32 25 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.rm = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.rm@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.rm(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg)
- ret void
-
-endif: ; preds = %entry
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection2rmMFAaZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %__arrayArg128 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp4 = getelementptr [1 x %"byte[]"]* %__arrayArg128, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp4, align 8
- %tmp7 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp4, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str89, i32 0, i32 0) }, %"char[][]" %tmp7)
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str90, i32 0, i32 0) })
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection6renameMFAaAaZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %old_path_arg, %"byte[]" %new_path_arg) {
-entry:
- %__arrayArg129 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %__arrayArg130 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp28 = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=4]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp4 = getelementptr [1 x %"byte[]"]* %__arrayArg129, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %old_path_arg, %"byte[]"* %tmp4, align 8
- %tmp7 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp4, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str91, i32 0, i32 0) }, %"char[][]" %tmp7)
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str92, i32 0, i32 0) })
- %tmp14 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl15" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp14, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand17 = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl15", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp18 = getelementptr [1 x %"byte[]"]* %__arrayArg130, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %new_path_arg, %"byte[]"* %tmp18, align 8
- %tmp21 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp18, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand17(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str93, i32 0, i32 0) }, %"char[][]" %tmp21)
- %tmp24 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl25" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp24, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse27 = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl25", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse27(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp28, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str94, i32 0, i32 0) })
- ret void
-}
-
-define fastcc i32 @_D5tango3net3ftp9FtpClient13FTPConnection5existMFAaZi(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %file_arg) {
-entry:
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpFileInfo, align 8 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=2]
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp9 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.getFileInfo@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 52 ; <void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.getFileInfo = load void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.getFileInfo@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- invoke fastcc void %this.getFileInfo(%tango.net.ftp.FtpClient.FtpFileInfo* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %file_arg)
- to label %postinvoke unwind label %landingpad
-
-postinvoke: ; preds = %entry
- %.rettmp.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 1 ; <i32*> [#uses=1]
- %tmp40 = load i32* %.rettmp.1, align 8 ; <i32> [#uses=2]
- switch i32 %tmp40, label %oror27 [
- i32 1, label %if18
- i32 4, label %if33.critedge37
- i32 2, label %if33.critedge
- ]
-
-if18: ; preds = %postinvoke
- ret i32 1
-
-oror27: ; preds = %postinvoke
- %tmp31 = icmp eq i32 %tmp40, 3 ; <i1> [#uses=1]
- %retval = select i1 %tmp31, i32 2, i32 0 ; <i32> [#uses=1]
- ret i32 %retval
-
-if33.critedge: ; preds = %postinvoke
- ret i32 2
-
-if33.critedge37: ; preds = %postinvoke
- ret i32 2
-
-landingpad: ; preds = %entry
- %0 = call i8* @llvm.eh.exception() ; <i8*> [#uses=3]
- %1 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %0, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), %object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i32> [#uses=1]
- %cond = icmp eq i32 %1, 1 ; <i1> [#uses=1]
- br i1 %cond, label %catch, label %switchdefault
-
-catch: ; preds = %landingpad
- %tmp3 = getelementptr i8* %0, i32 36 ; <i8*> [#uses=1]
- %tmp4 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp3, 1 ; <%"byte[]"> [#uses=1]
- %tmp5 = call i32 @_adEq(%"byte[]" %tmp4, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str95, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=0]
- ret i32 0
-
-switchdefault: ; preds = %landingpad
- call void @_d_eh_resume_unwind(i8* %0)
- unreachable
-}
-
-define fastcc i32 @_D5tango3net3ftp9FtpClient13FTPConnection4sizeMFAaE5tango3net3ftp9FtpClient9FtpFormatZk(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, i32 %format_arg) {
-entry:
- %__arrayArg131 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=3]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.type@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 29 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)**> [#uses=1]
- %this.type = load void (%tango.net.ftp.FtpClient.FTPConnection*, i32)** %"this.type@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)*> [#uses=1]
- call fastcc void %this.type(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 %format_arg)
- %tmp7 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp9 = getelementptr [1 x %"byte[]"]* %__arrayArg131, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp9, align 8
- %tmp12 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp9, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str96, i32 0, i32 0) }, %"char[][]" %tmp12)
- %tmp15 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp15, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str97, i32 0, i32 0) })
- %.rettmp.1.0 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- %tmp = load i32* %.rettmp.1.0, align 4 ; <i32> [#uses=1]
- %.rettmp.1.1 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- %tmp54 = load i8** %.rettmp.1.1, align 4 ; <i8*> [#uses=6]
- br label %whilecond
-
-whilecond: ; preds = %endif, %entry
- %end_pos.0 = phi i32 [ 0, %entry ], [ %tmp39, %endif ] ; <i32> [#uses=6]
- %tmp22 = icmp ult i32 %end_pos.0, %tmp ; <i1> [#uses=1]
- br i1 %tmp22, label %whilebody, label %endwhile
-
-whilebody: ; preds = %whilecond
- %tmp26 = getelementptr i8* %tmp54, i32 %end_pos.0 ; <i8*> [#uses=1]
- %tmp27 = load i8* %tmp26 ; <i8> [#uses=1]
- %tmp27.off = add i8 %tmp27, -48 ; <i8> [#uses=1]
- %or.cond = icmp ugt i8 %tmp27.off, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %endwhile, label %endif
-
-endif: ; preds = %whilebody
- %tmp39 = add i32 %end_pos.0, 1 ; <i32> [#uses=1]
- br label %whilecond
-
-endwhile: ; preds = %whilebody, %whilecond
- %tmp4.i.i = icmp eq i32 %end_pos.0, 0 ; <i1> [#uses=1]
- br i1 %tmp4.i.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %forcond.i.i
-
-forcond.i.i: ; preds = %forinc.i.i, %endwhile
- %sign.1.i = phi i1 [ false, %endwhile ], [ %sign.0.i, %forinc.i.i ] ; <i1> [#uses=4]
- %len.0.i.i = phi i32 [ %tmp33.i.i, %forinc.i.i ], [ %end_pos.0, %endwhile ] ; <i32> [#uses=3]
- %p.0.i.i = phi i8* [ %tmp30.i.i, %forinc.i.i ], [ %tmp54, %endwhile ] ; <i8*> [#uses=6]
- %c.0.in.i.i = phi i8* [ %tmp30.i.i, %forinc.i.i ], [ %tmp54, %endwhile ] ; <i8*> [#uses=1]
- %c.0.i.i = load i8* %c.0.in.i.i ; <i8> [#uses=2]
- %tmp8.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i, label %endfor.i.i, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- switch i8 %c.0.i.i, label %endfor.i.i [
- i8 32, label %forinc.i.i
- i8 9, label %forinc.i.i
- i8 45, label %if20.i.i
- i8 43, label %if26.i.i
- ]
-
-if20.i.i: ; preds = %forbody.i.i
- br label %forinc.i.i
-
-if26.i.i: ; preds = %forbody.i.i
- br label %forinc.i.i
-
-forinc.i.i: ; preds = %if26.i.i, %if20.i.i, %forbody.i.i, %forbody.i.i
- %sign.0.i = phi i1 [ false, %if26.i.i ], [ true, %if20.i.i ], [ %sign.1.i, %forbody.i.i ], [ %sign.1.i, %forbody.i.i ] ; <i1> [#uses=1]
- %tmp30.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- br label %forcond.i.i
-
-endfor.i.i: ; preds = %forbody.i.i, %forcond.i.i
- %tmp37.i.i = icmp eq i8 %c.0.i.i, 48 ; <i1> [#uses=1]
- %tmp39.i.i = icmp sgt i32 %len.0.i.i, 1 ; <i1> [#uses=1]
- %or.cond.i.i = and i1 %tmp37.i.i, %tmp39.i.i ; <i1> [#uses=1]
- br i1 %or.cond.i.i, label %if40.i.i, label %endif41.i.i
-
-if40.i.i: ; preds = %endfor.i.i
- %tmp43.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i = load i8* %tmp43.i.i ; <i8> [#uses=1]
- %tmp45.i.i = zext i8 %tmp44.i.i to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i, label %endif41.i.i [
- i32 120, label %case46.i.i
- i32 88, label %case46.i.i
- i32 98, label %case51.i.i
- i32 66, label %case51.i.i
- i32 111, label %case56.i.i
- i32 79, label %case56.i.i
- ]
-
-case46.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp48.i.i = getelementptr i8* %p.0.i.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case51.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp53.i.i = getelementptr i8* %p.0.i.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case56.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp58.i.i = getelementptr i8* %p.0.i.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-endif41.i.i: ; preds = %case56.i.i, %case51.i.i, %case46.i.i, %if40.i.i, %endfor.i.i
- %r.0.i.i = phi i32 [ 0, %if40.i.i ], [ 8, %case56.i.i ], [ 2, %case51.i.i ], [ 16, %case46.i.i ], [ 0, %endfor.i.i ] ; <i32> [#uses=2]
- %p.2.i.i = phi i8* [ %tmp43.i.i, %if40.i.i ], [ %tmp58.i.i, %case56.i.i ], [ %tmp53.i.i, %case51.i.i ], [ %tmp48.i.i, %case46.i.i ], [ %p.0.i.i, %endfor.i.i ] ; <i8*> [#uses=2]
- %tmp63.i.i = icmp eq i32 %r.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %if70.i.i
-
-if70.i.i: ; preds = %endif41.i.i
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i: ; preds = %if70.i.i, %endif41.i.i, %endwhile
- %sign.2.i = phi i1 [ false, %endwhile ], [ %sign.1.i, %if70.i.i ], [ %sign.1.i, %endif41.i.i ] ; <i1> [#uses=1]
- %radix.0.i = phi i32 [ 0, %endwhile ], [ %r.0.i.i, %if70.i.i ], [ 10, %endif41.i.i ] ; <i32> [#uses=2]
- %p.1.i.i = phi i8* [ %p.2.i.i, %if70.i.i ], [ %tmp54, %endwhile ], [ %p.2.i.i, %endif41.i.i ] ; <i8*> [#uses=1]
- %tmp84.i.i = ptrtoint i8* %p.1.i.i to i32 ; <i32> [#uses=1]
- %tmp85.i.i = ptrtoint i8* %tmp54 to i32 ; <i32> [#uses=1]
- %tmp86.i.i = sub i32 %tmp84.i.i, %tmp85.i.i ; <i32> [#uses=2]
- %tmp6.i = sub i32 %end_pos.0, %tmp86.i.i ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-foreachcond.i.i: ; preds = %if55.i.i, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
- %value.0.i.i = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp65.i.i, %if55.i.i ] ; <i64> [#uses=3]
- %foreachkey.0.i.i = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp70.i.i, %if55.i.i ] ; <i32> [#uses=3]
- %tmp3.i.i = icmp ult i32 %foreachkey.0.i.i, %tmp6.i ; <i1> [#uses=1]
- br i1 %tmp3.i.i, label %foreachbody.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-foreachbody.i.i: ; preds = %foreachcond.i.i
- %tmp5.sum.i = add i32 %tmp86.i.i, %foreachkey.0.i.i ; <i32> [#uses=1]
- %tmp5.i.i = getelementptr i8* %tmp54, i32 %tmp5.sum.i ; <i8*> [#uses=1]
- %tmp6.i.i = load i8* %tmp5.i.i ; <i8> [#uses=6]
- %tmp6.off84.i.i = add i8 %tmp6.i.i, -48 ; <i8> [#uses=1]
- %or.cond.i28.i = icmp ugt i8 %tmp6.off84.i.i, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i, label %else.i.i, label %endif.i.i
-
-else.i.i: ; preds = %foreachbody.i.i
- %tmp6.off83.i.i = add i8 %tmp6.i.i, -97 ; <i8> [#uses=1]
- %or.cond81.i.i = icmp ugt i8 %tmp6.off83.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i, label %else24.i.i, label %if22.i.i
-
-if22.i.i: ; preds = %else.i.i
- %tmp27.i.i = add i8 %tmp6.i.i, -39 ; <i8> [#uses=1]
- br label %endif.i.i
-
-else24.i.i: ; preds = %else.i.i
- %tmp6.off.i.i = add i8 %tmp6.i.i, -65 ; <i8> [#uses=1]
- %or.cond82.i.i = icmp ugt i8 %tmp6.off.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit, label %if39.i.i
-
-if39.i.i: ; preds = %else24.i.i
- %tmp44.i29.i = add i8 %tmp6.i.i, -7 ; <i8> [#uses=1]
- br label %endif.i.i
-
-endif.i.i: ; preds = %if39.i.i, %if22.i.i, %foreachbody.i.i
- %c.0.i30.i = phi i8 [ %tmp27.i.i, %if22.i.i ], [ %tmp44.i29.i, %if39.i.i ], [ %tmp6.i.i, %foreachbody.i.i ] ; <i8> [#uses=1]
- %tmp48.i31.i = zext i8 %c.0.i30.i to i32 ; <i32> [#uses=1]
- %tmp49.i.i = add i32 %tmp48.i31.i, 208 ; <i32> [#uses=1]
- %tmp52.i.i = and i32 %tmp49.i.i, 255 ; <i32> [#uses=2]
- %tmp54.i.i = icmp ult i32 %tmp52.i.i, %radix.0.i ; <i1> [#uses=1]
- br i1 %tmp54.i.i, label %if55.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-if55.i.i: ; preds = %endif.i.i
- %tmp59.i.i = zext i32 %radix.0.i to i64 ; <i64> [#uses=1]
- %tmp61.i.i = mul i64 %value.0.i.i, %tmp59.i.i ; <i64> [#uses=1]
- %tmp64.i.i = zext i32 %tmp52.i.i to i64 ; <i64> [#uses=1]
- %tmp65.i.i = add i64 %tmp61.i.i, %tmp64.i.i ; <i64> [#uses=1]
- %tmp70.i.i = add i32 %foreachkey.0.i.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit: ; preds = %endif.i.i, %else24.i.i, %foreachcond.i.i
- %negval.i = sub i64 0, %value.0.i.i ; <i64> [#uses=1]
- %condtmp.0.i = select i1 %sign.2.i, i64 %negval.i, i64 %value.0.i.i ; <i64> [#uses=1]
- %tmp49 = trunc i64 %condtmp.0.i to i32 ; <i32> [#uses=1]
- ret i32 %tmp49
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection4typeMFE5tango3net3ftp9FtpClient9FtpFormatZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 %format_arg) {
-entry:
- %__arrayArg132 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %__arrayArg133 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = icmp eq i32 %format_arg, 0 ; <i1> [#uses=1]
- %tmp3 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp4 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp4, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=2]
- br i1 %tmp1, label %if, label %else
-
-if: ; preds = %entry
- %tmp6 = getelementptr [1 x %"byte[]"]* %__arrayArg132, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str99, i32 0, i32 0) }, %"byte[]"* %tmp6, align 8
- %tmp8 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp6, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str98, i32 0, i32 0) }, %"char[][]" %tmp8)
- br label %endif
-
-else: ; preds = %entry
- %tmp15 = getelementptr [1 x %"byte[]"]* %__arrayArg133, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str101, i32 0, i32 0) }, %"byte[]"* %tmp15, align 8
- %tmp17 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp15, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str100, i32 0, i32 0) }, %"char[][]" %tmp17)
- br label %endif
-
-endif: ; preds = %else, %if
- %tmp20 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp20, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str102, i32 0, i32 0) })
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection8modifiedMFAaZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %file_arg) {
-entry:
- %__arrayArg134 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=3]
- %.rettmp18 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp4 = getelementptr [1 x %"byte[]"]* %__arrayArg134, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %file_arg, %"byte[]"* %tmp4, align 8
- %tmp7 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp4, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str103, i32 0, i32 0) }, %"char[][]" %tmp7)
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str104, i32 0, i32 0) })
- %.rettmp.1.0 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- %tmp = load i32* %.rettmp.1.0, align 4 ; <i32> [#uses=1]
- %.rettmp.1.1 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- %tmp27 = load i8** %.rettmp.1.1, align 4 ; <i8*> [#uses=1]
- %tmp16 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.parseTimeval@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp16, i32 0, i32 31 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.parseTimeval = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.parseTimeval@vtbl", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %insert = insertvalue %"byte[]" undef, i32 %tmp, 0 ; <%"byte[]"> [#uses=1]
- %insert29 = insertvalue %"byte[]" %insert, i8* %tmp27, 1 ; <%"byte[]"> [#uses=1]
- call fastcc void %this.parseTimeval(%tango.time.Time.Time* noalias nocapture sret %.rettmp18, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %insert29)
- %tmp2234 = getelementptr %tango.time.Time.Time* %.rettmp18, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp36 = load i64* %tmp2234, align 8 ; <i64> [#uses=1]
- %0 = getelementptr %tango.time.Time.Time* %.sret_arg, i32 0, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp36, i64* %0
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection12parseTimevalMFAaZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg, %"byte[]" %timeval_arg) {
-entry:
- %.rettmp = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %timeval_arg43 = extractvalue %"byte[]" %timeval_arg, 0 ; <i32> [#uses=1]
- %timeval_arg44 = extractvalue %"byte[]" %timeval_arg, 1 ; <i8*> [#uses=6]
- %tmp1 = icmp ult i32 %timeval_arg43, 14 ; <i1> [#uses=1]
- br i1 %tmp1, label %if, label %endif
-
-if: ; preds = %entry
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i8*> [#uses=6]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp2 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* getelementptr ([4 x i8]* @.str106, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" { i32 31, i8* getelementptr ([32 x i8]* @.str105, i32 0, i32 0) }, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp7 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp7)
- unreachable
-
-endif: ; preds = %entry
- %1 = load %tango.time.chrono.Gregorian.Gregorian** @_D5tango4time6chrono9Gregorian9Gregorian7genericC5tango4time6chrono9Gregorian9Gregorian ; <%tango.time.chrono.Gregorian.Gregorian*> [#uses=2]
- %tmp8 = bitcast %tango.time.chrono.Gregorian.Gregorian* %1 to %tango.time.chrono.Calendar.Calendar* ; <%tango.time.chrono.Calendar.Calendar*> [#uses=1]
- %tmp9 = bitcast %tango.time.chrono.Gregorian.Gregorian* %1 to %tango.time.chrono.Calendar.Calendar.__vtbl** ; <%tango.time.chrono.Calendar.Calendar.__vtbl**> [#uses=1]
- %tmp10 = load %tango.time.chrono.Calendar.Calendar.__vtbl** %tmp9 ; <%tango.time.chrono.Calendar.Calendar.__vtbl*> [#uses=1]
- %"generic.toTime@vtbl" = getelementptr %tango.time.chrono.Calendar.Calendar.__vtbl* %tmp10, i32 0, i32 7 ; <void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, i32, i32, i32, i32, i32, i32, i32)**> [#uses=1]
- %generic.toTime = load void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, i32, i32, i32, i32, i32, i32, i32)** %"generic.toTime@vtbl", align 4 ; <void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, i32, i32, i32, i32, i32, i32, i32)*> [#uses=1]
- br label %foreachcond.i
-
-foreachcond.i: ; preds = %if.i, %endif
- %value.0.i = phi i32 [ 0, %endif ], [ %tmp19.i, %if.i ] ; <i32> [#uses=2]
- %foreachkey.0.i = phi i32 [ 0, %endif ], [ %tmp21.i, %if.i ] ; <i32> [#uses=3]
- %tmp3.i = icmp ult i32 %foreachkey.0.i, 4 ; <i1> [#uses=1]
- br i1 %tmp3.i, label %foreachbody.i, label %foreachcond.i125
-
-foreachbody.i: ; preds = %foreachcond.i
- %tmp5.i47 = getelementptr i8* %timeval_arg44, i32 %foreachkey.0.i ; <i8*> [#uses=1]
- %tmp6.i = load i8* %tmp5.i47 ; <i8> [#uses=2]
- %tmp6.off.i = add i8 %tmp6.i, -48 ; <i8> [#uses=1]
- %or.cond.i = icmp ugt i8 %tmp6.off.i, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i, label %foreachcond.i125, label %if.i
-
-if.i: ; preds = %foreachbody.i
- %tmp15.i = mul i32 %value.0.i, 10 ; <i32> [#uses=1]
- %tmp17.i = zext i8 %tmp6.i to i32 ; <i32> [#uses=1]
- %tmp18.i = add i32 %tmp17.i, -48 ; <i32> [#uses=1]
- %tmp19.i = add i32 %tmp15.i, %tmp18.i ; <i32> [#uses=1]
- %tmp21.i = add i32 %foreachkey.0.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i
-
-foreachcond.i125: ; preds = %if.i136, %foreachbody.i, %foreachcond.i
- %value.0.i122 = phi i32 [ %tmp19.i134, %if.i136 ], [ 0, %foreachcond.i ], [ 0, %foreachbody.i ] ; <i32> [#uses=2]
- %foreachkey.0.i123 = phi i32 [ %tmp21.i135, %if.i136 ], [ 0, %foreachcond.i ], [ 0, %foreachbody.i ] ; <i32> [#uses=3]
- %tmp3.i124 = icmp ult i32 %foreachkey.0.i123, 2 ; <i1> [#uses=1]
- br i1 %tmp3.i124, label %foreachbody.i130, label %foreachcond.i107
-
-foreachbody.i130: ; preds = %foreachcond.i125
- %tmp18.sum = add i32 %foreachkey.0.i123, 4 ; <i32> [#uses=1]
- %tmp5.i126 = getelementptr i8* %timeval_arg44, i32 %tmp18.sum ; <i8*> [#uses=1]
- %tmp6.i127 = load i8* %tmp5.i126 ; <i8> [#uses=2]
- %tmp6.off.i128 = add i8 %tmp6.i127, -48 ; <i8> [#uses=1]
- %or.cond.i129 = icmp ugt i8 %tmp6.off.i128, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i129, label %foreachcond.i107, label %if.i136
-
-if.i136: ; preds = %foreachbody.i130
- %tmp15.i131 = mul i32 %value.0.i122, 10 ; <i32> [#uses=1]
- %tmp17.i132 = zext i8 %tmp6.i127 to i32 ; <i32> [#uses=1]
- %tmp18.i133 = add i32 %tmp17.i132, -48 ; <i32> [#uses=1]
- %tmp19.i134 = add i32 %tmp15.i131, %tmp18.i133 ; <i32> [#uses=1]
- %tmp21.i135 = add i32 %foreachkey.0.i123, 1 ; <i32> [#uses=1]
- br label %foreachcond.i125
-
-foreachcond.i107: ; preds = %if.i118, %foreachbody.i130, %foreachcond.i125
- %value.0.i104 = phi i32 [ %tmp19.i116, %if.i118 ], [ 0, %foreachcond.i125 ], [ 0, %foreachbody.i130 ] ; <i32> [#uses=2]
- %foreachkey.0.i105 = phi i32 [ %tmp21.i117, %if.i118 ], [ 0, %foreachcond.i125 ], [ 0, %foreachbody.i130 ] ; <i32> [#uses=3]
- %tmp3.i106 = icmp ult i32 %foreachkey.0.i105, 2 ; <i1> [#uses=1]
- br i1 %tmp3.i106, label %foreachbody.i112, label %foreachcond.i89
-
-foreachbody.i112: ; preds = %foreachcond.i107
- %tmp23.sum = add i32 %foreachkey.0.i105, 6 ; <i32> [#uses=1]
- %tmp5.i108 = getelementptr i8* %timeval_arg44, i32 %tmp23.sum ; <i8*> [#uses=1]
- %tmp6.i109 = load i8* %tmp5.i108 ; <i8> [#uses=2]
- %tmp6.off.i110 = add i8 %tmp6.i109, -48 ; <i8> [#uses=1]
- %or.cond.i111 = icmp ugt i8 %tmp6.off.i110, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i111, label %foreachcond.i89, label %if.i118
-
-if.i118: ; preds = %foreachbody.i112
- %tmp15.i113 = mul i32 %value.0.i104, 10 ; <i32> [#uses=1]
- %tmp17.i114 = zext i8 %tmp6.i109 to i32 ; <i32> [#uses=1]
- %tmp18.i115 = add i32 %tmp17.i114, -48 ; <i32> [#uses=1]
- %tmp19.i116 = add i32 %tmp15.i113, %tmp18.i115 ; <i32> [#uses=1]
- %tmp21.i117 = add i32 %foreachkey.0.i105, 1 ; <i32> [#uses=1]
- br label %foreachcond.i107
-
-foreachcond.i89: ; preds = %if.i100, %foreachbody.i112, %foreachcond.i107
- %value.0.i86 = phi i32 [ %tmp19.i98, %if.i100 ], [ 0, %foreachcond.i107 ], [ 0, %foreachbody.i112 ] ; <i32> [#uses=2]
- %foreachkey.0.i87 = phi i32 [ %tmp21.i99, %if.i100 ], [ 0, %foreachcond.i107 ], [ 0, %foreachbody.i112 ] ; <i32> [#uses=3]
- %tmp3.i88 = icmp ult i32 %foreachkey.0.i87, 2 ; <i1> [#uses=1]
- br i1 %tmp3.i88, label %foreachbody.i94, label %foreachcond.i71
-
-foreachbody.i94: ; preds = %foreachcond.i89
- %tmp28.sum = add i32 %foreachkey.0.i87, 8 ; <i32> [#uses=1]
- %tmp5.i90 = getelementptr i8* %timeval_arg44, i32 %tmp28.sum ; <i8*> [#uses=1]
- %tmp6.i91 = load i8* %tmp5.i90 ; <i8> [#uses=2]
- %tmp6.off.i92 = add i8 %tmp6.i91, -48 ; <i8> [#uses=1]
- %or.cond.i93 = icmp ugt i8 %tmp6.off.i92, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i93, label %foreachcond.i71, label %if.i100
-
-if.i100: ; preds = %foreachbody.i94
- %tmp15.i95 = mul i32 %value.0.i86, 10 ; <i32> [#uses=1]
- %tmp17.i96 = zext i8 %tmp6.i91 to i32 ; <i32> [#uses=1]
- %tmp18.i97 = add i32 %tmp17.i96, -48 ; <i32> [#uses=1]
- %tmp19.i98 = add i32 %tmp15.i95, %tmp18.i97 ; <i32> [#uses=1]
- %tmp21.i99 = add i32 %foreachkey.0.i87, 1 ; <i32> [#uses=1]
- br label %foreachcond.i89
-
-foreachcond.i71: ; preds = %if.i82, %foreachbody.i94, %foreachcond.i89
- %value.0.i68 = phi i32 [ %tmp19.i80, %if.i82 ], [ 0, %foreachcond.i89 ], [ 0, %foreachbody.i94 ] ; <i32> [#uses=2]
- %foreachkey.0.i69 = phi i32 [ %tmp21.i81, %if.i82 ], [ 0, %foreachcond.i89 ], [ 0, %foreachbody.i94 ] ; <i32> [#uses=3]
- %tmp3.i70 = icmp ult i32 %foreachkey.0.i69, 2 ; <i1> [#uses=1]
- br i1 %tmp3.i70, label %foreachbody.i76, label %foreachcond.i53
-
-foreachbody.i76: ; preds = %foreachcond.i71
- %tmp33.sum = add i32 %foreachkey.0.i69, 10 ; <i32> [#uses=1]
- %tmp5.i72 = getelementptr i8* %timeval_arg44, i32 %tmp33.sum ; <i8*> [#uses=1]
- %tmp6.i73 = load i8* %tmp5.i72 ; <i8> [#uses=2]
- %tmp6.off.i74 = add i8 %tmp6.i73, -48 ; <i8> [#uses=1]
- %or.cond.i75 = icmp ugt i8 %tmp6.off.i74, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i75, label %foreachcond.i53, label %if.i82
-
-if.i82: ; preds = %foreachbody.i76
- %tmp15.i77 = mul i32 %value.0.i68, 10 ; <i32> [#uses=1]
- %tmp17.i78 = zext i8 %tmp6.i73 to i32 ; <i32> [#uses=1]
- %tmp18.i79 = add i32 %tmp17.i78, -48 ; <i32> [#uses=1]
- %tmp19.i80 = add i32 %tmp15.i77, %tmp18.i79 ; <i32> [#uses=1]
- %tmp21.i81 = add i32 %foreachkey.0.i69, 1 ; <i32> [#uses=1]
- br label %foreachcond.i71
-
-foreachcond.i53: ; preds = %if.i64, %foreachbody.i76, %foreachcond.i71
- %value.0.i50 = phi i32 [ %tmp19.i62, %if.i64 ], [ 0, %foreachcond.i71 ], [ 0, %foreachbody.i76 ] ; <i32> [#uses=2]
- %foreachkey.0.i51 = phi i32 [ %tmp21.i63, %if.i64 ], [ 0, %foreachcond.i71 ], [ 0, %foreachbody.i76 ] ; <i32> [#uses=3]
- %tmp3.i52 = icmp ult i32 %foreachkey.0.i51, 2 ; <i1> [#uses=1]
- br i1 %tmp3.i52, label %foreachbody.i58, label %_D5tango4text7convert7Integer11__T4atoiTaZ4atoiFAaiZk.exit65
-
-foreachbody.i58: ; preds = %foreachcond.i53
- %tmp38.sum = add i32 %foreachkey.0.i51, 12 ; <i32> [#uses=1]
- %tmp5.i54 = getelementptr i8* %timeval_arg44, i32 %tmp38.sum ; <i8*> [#uses=1]
- %tmp6.i55 = load i8* %tmp5.i54 ; <i8> [#uses=2]
- %tmp6.off.i56 = add i8 %tmp6.i55, -48 ; <i8> [#uses=1]
- %or.cond.i57 = icmp ugt i8 %tmp6.off.i56, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i57, label %_D5tango4text7convert7Integer11__T4atoiTaZ4atoiFAaiZk.exit65, label %if.i64
-
-if.i64: ; preds = %foreachbody.i58
- %tmp15.i59 = mul i32 %value.0.i50, 10 ; <i32> [#uses=1]
- %tmp17.i60 = zext i8 %tmp6.i55 to i32 ; <i32> [#uses=1]
- %tmp18.i61 = add i32 %tmp17.i60, -48 ; <i32> [#uses=1]
- %tmp19.i62 = add i32 %tmp15.i59, %tmp18.i61 ; <i32> [#uses=1]
- %tmp21.i63 = add i32 %foreachkey.0.i51, 1 ; <i32> [#uses=1]
- br label %foreachcond.i53
-
-_D5tango4text7convert7Integer11__T4atoiTaZ4atoiFAaiZk.exit65: ; preds = %foreachbody.i58, %foreachcond.i53
- call fastcc void %generic.toTime(%tango.time.Time.Time* noalias nocapture sret %.rettmp, %tango.time.chrono.Calendar.Calendar* %tmp8, i32 %value.0.i, i32 %value.0.i122, i32 %value.0.i104, i32 %value.0.i86, i32 %value.0.i68, i32 %value.0.i50, i32 0)
- %tmp4245 = getelementptr %tango.time.Time.Time* %.rettmp, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp = load i64* %tmp4245, align 8 ; <i64> [#uses=1]
- %2 = getelementptr %tango.time.Time.Time* %.sret_arg, i32 0, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp, i64* %2
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection4noopMFZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str109, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str110, i32 0, i32 0) })
- ret void
-}
-
-define fastcc %"byte[]" @_D5tango3net3ftp9FtpClient13FTPConnection5mkdirMFAaZAa(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %__arrayArg136 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp4 = getelementptr [1 x %"byte[]"]* %__arrayArg136, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp4, align 8
- %tmp7 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp4, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str111, i32 0, i32 0) }, %"char[][]" %tmp7)
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str112, i32 0, i32 0) })
- %tmp12 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- %tmp13 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp12, i8* %tmp13, i32 12, i32 4)
- %tmp16 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.parse257@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp16, i32 0, i32 38 ; <%"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.parse257 = load %"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.parse257@vtbl", align 4 ; <%"byte[]" (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- %tmp18 = call fastcc %"byte[]" %this.parse257(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response) ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp18
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection11getFeaturesMFZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %.frame.i = alloca %nest.splitLines, align 8 ; <%nest.splitLines*> [#uses=5]
- %.rettmp.i = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %.rettmp8.i = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str113, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- %tmp8 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=2]
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp8, i8* %tmp9, i32 12, i32 4)
- %tmp12 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp8, 1 ; <%"byte[]"> [#uses=1]
- %tmp13 = call i32 @_adEq(%"byte[]" %tmp12, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str114, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp14 = icmp eq i32 %tmp13, 0 ; <i1> [#uses=1]
- br i1 %tmp14, label %if, label %else
-
-if: ; preds = %entry
- %tmp17 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5 ; <%"FtpFeature[]"*> [#uses=1]
- %tmp18 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp18 ; <i32> [#uses=1]
- %tmp19 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 1 ; <%tango.net.ftp.FtpClient.FtpFeature**> [#uses=1]
- %.ptr = load %tango.net.ftp.FtpClient.FtpFeature** %tmp19 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=1]
- %.tmp = bitcast %tango.net.ftp.FtpClient.FtpFeature* %.ptr to i8* ; <i8*> [#uses=1]
- call void @_d_delarray(i32 %.len, i8* %.tmp)
- store %"FtpFeature[]" zeroinitializer, %"FtpFeature[]"* %tmp17
- ret void
-
-else: ; preds = %entry
- %tmp20 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp21 = load %"byte[]"* %tmp20 ; <%"byte[]"> [#uses=4]
- %count.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 0 ; <i32*> [#uses=3]
- %result.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1 ; <%"char[][]"*> [#uses=1]
- store i32 0, i32* %count.i, align 8
- %src_arg8.i.i = extractvalue %"byte[]" %tmp21, 0 ; <i32> [#uses=1]
- %src_arg9.i.i = extractvalue %"byte[]" %tmp21, 1 ; <i8*> [#uses=1]
- %0 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %src_arg8.i.i, i32* %0, align 8
- %.sret_arg10.1.i.i = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %src_arg9.i.i, i8** %.sret_arg10.1.i.i, align 4
- %tmp1.i = bitcast %nest.splitLines* %.frame.i to i8* ; <i8*> [#uses=2]
- %tmp2.i = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1.i, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func.i = insertvalue %"int delegate(ref char[])" %tmp2.i, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody41MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp3.i = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, %"int delegate(ref char[])" %.func.i) ; <i32> [#uses=0]
- %tmp4.i = load i32* %count.i, align 8 ; <i32> [#uses=2]
- %.gc_mem.i = call noalias i8* @_d_newarrayT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D12TypeInfo_AAa6__initZ to %object.TypeInfo*), i32 %tmp4.i) ; <i8*> [#uses=1]
- %.gc_mem5.i = bitcast i8* %.gc_mem.i to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp6.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4.i, i32* %tmp6.i
- %tmp7.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1, i32 1 ; <%"byte[]"**> [#uses=1]
- store %"byte[]"* %.gc_mem5.i, %"byte[]"** %tmp7.i
- store i32 0, i32* %count.i, align 8
- %src_arg8.i15.i = extractvalue %"byte[]" %tmp21, 0 ; <i32> [#uses=1]
- %src_arg9.i16.i = extractvalue %"byte[]" %tmp21, 1 ; <i8*> [#uses=1]
- %1 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %src_arg8.i15.i, i32* %1, align 8
- %.sret_arg10.1.i17.i = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %src_arg9.i16.i, i8** %.sret_arg10.1.i17.i, align 4
- %tmp11.i = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1.i, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func12.i = insertvalue %"int delegate(ref char[])" %tmp11.i, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody42MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp13.i = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, %"int delegate(ref char[])" %.func12.i) ; <i32> [#uses=0]
- %tmp14.i = load %"char[][]"* %result.i ; <%"char[][]"> [#uses=2]
- %tmp22109 = extractvalue %"char[][]" %tmp14.i, 0 ; <i32> [#uses=2]
- %tmp22110 = extractvalue %"char[][]" %tmp14.i, 1 ; <%"byte[]"*> [#uses=4]
- %tmp27 = add i32 %tmp22109, -1 ; <i32> [#uses=3]
- %.gc_mem = call noalias i8* @_d_newarrayiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D47TypeInfo_AS5tango3net3ftp9FtpClient10FtpFeature6__initZ to %object.TypeInfo*), i32 %tmp27) ; <i8*> [#uses=2]
- %.gc_mem28 = bitcast i8* %.gc_mem to %tango.net.ftp.FtpClient.FtpFeature* ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=1]
- %tmp29 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp27, i32* %tmp29
- %tmp30 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 1 ; <%tango.net.ftp.FtpClient.FtpFeature**> [#uses=3]
- store %tango.net.ftp.FtpClient.FtpFeature* %.gc_mem28, %tango.net.ftp.FtpClient.FtpFeature** %tmp30
- %tmp36 = bitcast i8* %.gc_mem to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- store %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str115, i32 0, i32 0) }, %"byte[]"* %tmp36
- br label %forcond
-
-forcond: ; preds = %forinc, %else
- %i.0 = phi i32 [ 1, %else ], [ %tmp103, %forinc ] ; <i32> [#uses=9]
- %tmp41 = icmp ult i32 %i.0, %tmp27 ; <i1> [#uses=1]
- br i1 %tmp41, label %forbody, label %endfor
-
-forbody: ; preds = %forcond
- %tmp45 = getelementptr %"byte[]"* %tmp22110, i32 %i.0 ; <%"byte[]"*> [#uses=1]
- %tmp46 = load %"byte[]"* %tmp45 ; <%"byte[]"> [#uses=2]
- %source_arg16.i = extractvalue %"byte[]" %tmp46, 0 ; <i32> [#uses=2]
- %source_arg17.i = extractvalue %"byte[]" %tmp46, 1 ; <i8*> [#uses=2]
- %tmp2.i.i = getelementptr i8* %source_arg17.i, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %forbody
- %len.0.i.i = phi i32 [ %source_arg16.i, %forbody ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %p.0.i.i = phi i8* [ %tmp2.i.i, %forbody ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp12.i.i = icmp eq i8 %tmp8.i.i, 32 ; <i1> [#uses=1]
- br i1 %tmp12.i.i, label %if.i.i, label %forcond.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp15.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp16.i.i = ptrtoint i8* %source_arg17.i to i32 ; <i32> [#uses=1]
- %tmp17.i.i = sub i32 %tmp15.i.i, %tmp16.i.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
-
-_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit: ; preds = %if.i.i, %forcond.i.i
- %tmp1318.i = phi i32 [ %tmp17.i.i, %if.i.i ], [ %source_arg16.i, %forcond.i.i ] ; <i32> [#uses=3]
- %.ptr51 = load %tango.net.ftp.FtpClient.FtpFeature** %tmp30 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=2]
- %tmp59 = getelementptr %"byte[]"* %tmp22110, i32 %i.0, i32 1 ; <i8**> [#uses=2]
- %.ptr60 = load i8** %tmp59 ; <i8*> [#uses=1]
- %tmp64 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.ptr51, i32 %i.0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp1318.i, i32* %tmp64
- %tmp65 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.ptr51, i32 %i.0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %.ptr60, i8** %tmp65
- %tmp70 = getelementptr %"byte[]"* %tmp22110, i32 %i.0, i32 0 ; <i32*> [#uses=1]
- %.len71 = load i32* %tmp70 ; <i32> [#uses=2]
- %tmp72 = add i32 %.len71, -1 ; <i32> [#uses=1]
- %tmp74 = icmp ult i32 %tmp1318.i, %tmp72 ; <i1> [#uses=1]
- br i1 %tmp74, label %if75, label %forinc
-
-if75: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %.ptr80 = load %tango.net.ftp.FtpClient.FtpFeature** %tmp30 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=2]
- %.ptr89 = load i8** %tmp59 ; <i8*> [#uses=1]
- %tmp91 = add i32 %tmp1318.i, 1 ; <i32> [#uses=2]
- %tmp98 = getelementptr i8* %.ptr89, i32 %tmp91 ; <i8*> [#uses=1]
- %tmp99 = sub i32 %.len71, %tmp91 ; <i32> [#uses=1]
- %tmp100 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.ptr80, i32 %i.0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp99, i32* %tmp100
- %tmp101 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.ptr80, i32 %i.0, i32 1, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp98, i8** %tmp101
- br label %forinc
-
-forinc: ; preds = %if75, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp103 = add i32 %i.0, 1 ; <i32> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- %.tmp108 = bitcast %"byte[]"* %tmp22110 to i8* ; <i8*> [#uses=1]
- call void @_d_delarray(i32 %tmp22109, i8* %.tmp108)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection11sendCommandMFAaAAaXv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %command_arg, %"char[][]" %parameters_arg) {
-entry:
- %parameters_arg55 = extractvalue %"char[][]" %parameters_arg, 0 ; <i32> [#uses=1]
- %parameters_arg56 = extractvalue %"char[][]" %parameters_arg, 1 ; <%"byte[]"*> [#uses=1]
- %command_arg53 = extractvalue %"byte[]" %command_arg, 0 ; <i32> [#uses=1]
- %command_arg54 = extractvalue %"byte[]" %command_arg, 1 ; <i8*> [#uses=1]
- br label %foreachcond
-
-foreachcond: ; preds = %foreachbody, %entry
- %socketCommand.0.0 = phi i32 [ %command_arg53, %entry ], [ %tmp17, %foreachbody ] ; <i32> [#uses=6]
- %socketCommand.1.0 = phi i8* [ %command_arg54, %entry ], [ %.gc_mem22, %foreachbody ] ; <i8*> [#uses=2]
- %foreachkey.0 = phi i32 [ 0, %entry ], [ %tmp28, %foreachbody ] ; <i32> [#uses=3]
- %tmp4 = icmp ult i32 %foreachkey.0, %parameters_arg55 ; <i1> [#uses=1]
- br i1 %tmp4, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp6 = getelementptr %"byte[]"* %parameters_arg56, i32 %foreachkey.0 ; <%"byte[]"*> [#uses=1]
- %tmp7 = load %"byte[]"* %tmp6 ; <%"byte[]"> [#uses=2]
- %tmp751 = extractvalue %"byte[]" %tmp7, 0 ; <i32> [#uses=2]
- %tmp752 = extractvalue %"byte[]" %tmp7, 1 ; <i8*> [#uses=1]
- %tmp10 = add i32 %tmp751, 1 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp10, align 1 ; <i8*> [#uses=3]
- store i8 32, i8* %.nongc_mem, align 1
- %tmp13 = getelementptr i8* %.nongc_mem, i32 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp13, i8* %tmp752, i32 %tmp751, i32 1)
- %tmp17 = add i32 %socketCommand.0.0, %tmp10 ; <i32> [#uses=2]
- %.gc_mem22 = tail call i8* @_d_arraysetlengthiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp17, i32 %socketCommand.0.0, i8* %socketCommand.1.0) ; <i8*> [#uses=2]
- %tmp23 = getelementptr i8* %.gc_mem22, i32 %socketCommand.0.0 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp23, i8* %.nongc_mem, i32 %tmp10, i32 1)
- %tmp28 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- %tmp31 = add i32 %socketCommand.0.0, 2 ; <i32> [#uses=2]
- %.gc_mem36 = tail call i8* @_d_arraysetlengthiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp31, i32 %socketCommand.0.0, i8* %socketCommand.1.0) ; <i8*> [#uses=2]
- %tmp37 = getelementptr i8* %.gc_mem36, i32 %socketCommand.0.0 ; <i8*> [#uses=1]
- %tmp3757 = bitcast i8* %tmp37 to i16* ; <i16*> [#uses=1]
- %tmp = load i16* bitcast ([3 x i8]* @.str117 to i16*), align 2 ; <i16> [#uses=1]
- store i16 %tmp, i16* %tmp3757, align 1
- %tmp41 = bitcast %tango.net.ftp.FtpClient.FTPConnection* %.this_arg to %tango.net.ftp.Telnet.Telnet* ; <%tango.net.ftp.Telnet.Telnet*> [#uses=1]
- %tmp42 = bitcast %tango.net.ftp.FtpClient.FTPConnection* %.this_arg to %tango.net.ftp.Telnet.Telnet.__vtbl** ; <%tango.net.ftp.Telnet.Telnet.__vtbl**> [#uses=1]
- %tmp43 = load %tango.net.ftp.Telnet.Telnet.__vtbl** %tmp42 ; <%tango.net.ftp.Telnet.Telnet.__vtbl*> [#uses=1]
- %"(cast(Telnet)this).sendData@vtbl" = getelementptr %tango.net.ftp.Telnet.Telnet.__vtbl* %tmp43, i32 0, i32 7 ; <void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")**> [#uses=1]
- %"(cast(Telnet)this).sendData" = load void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")** %"(cast(Telnet)this).sendData@vtbl", align 4 ; <void (%tango.net.ftp.Telnet.Telnet*, %"byte[]")*> [#uses=1]
- %tmp49 = insertvalue %"byte[]" undef, i32 %tmp31, 0 ; <%"byte[]"> [#uses=1]
- %tmp50 = insertvalue %"byte[]" %tmp49, i8* %.gc_mem36, 1 ; <%"byte[]"> [#uses=1]
- tail call fastcc void %"(cast(Telnet)this).sendData"(%tango.net.ftp.Telnet.Telnet* %tmp41, %"byte[]" %tmp50)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection12readResponseMFAaZS5tango3net3ftp9FtpClient11FtpResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %expected_code_arg) {
-entry:
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %expected_code_arg26 = extractvalue %"byte[]" %expected_code_arg, 0 ; <i32> [#uses=1]
- %expected_code_arg27 = extractvalue %"byte[]" %expected_code_arg, 1 ; <i8*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- %tmp4 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=3]
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4, i8* %tmp5, i32 12, i32 4)
- %tmp12 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp4, 1 ; <%"byte[]"> [#uses=1]
- %tmp13 = insertvalue %"byte[]" undef, i32 %expected_code_arg26, 0 ; <%"byte[]"> [#uses=1]
- %tmp14 = insertvalue %"byte[]" %tmp13, i8* %expected_code_arg27, 1 ; <%"byte[]"> [#uses=1]
- %tmp15 = call i32 @_adEq(%"byte[]" %tmp12, %"byte[]" %tmp14, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp16 = icmp eq i32 %tmp15, 0 ; <i1> [#uses=1]
- br i1 %tmp16, label %if, label %endif
-
-if: ; preds = %entry
- %tmp20 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp20, i32 0, i32 14 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response)
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp22 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.sret_arg, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp22, i8* %tmp4, i32 12, i32 1)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection12readResponseMFZS5tango3net3ftp9FtpClient11FtpResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %.rettmp = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp2 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=4]
- %.rettmp6 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- call fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp)
- call fastcc void @_D5tango4time4Time8TimeSpan10fromMillisFlZS5tango4time4Time8TimeSpan(%tango.time.Time.Time* noalias nocapture sret %.rettmp2, i64 2500)
- %tmp1.i = getelementptr %tango.time.Time.Time* %.rettmp2, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp2.i = load i64* %tmp1.i, align 8 ; <i64> [#uses=1]
- %tmp4.i = mul i64 %tmp2.i, 10 ; <i64> [#uses=1]
- %tmp1.i177 = getelementptr %tango.time.Time.Time* %.rettmp, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i = load i64* %tmp1.i177, align 8 ; <i64> [#uses=1]
- %tmp5.i = add i64 %tmp3.i, %tmp4.i ; <i64> [#uses=1]
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=6]
- call void @llvm.memcpy.i32(i8* %tmp5, i8* getelementptr (%tango.net.ftp.FtpClient.FtpResponse* @_D5tango3net3ftp9FtpClient11FtpResponse6__initZ, i32 0, i32 0, i32 0), i32 12, i32 4)
- br label %whilecond
-
-whilecond: ; preds = %andand153, %andand139, %endif, %entry
- call fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp6)
- %tmp1.i181 = getelementptr %tango.time.Time.Time* %.rettmp6, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i183 = load i64* %tmp1.i181, align 8 ; <i64> [#uses=1]
- %tmp5.i185 = icmp slt i64 %tmp3.i183, %tmp5.i ; <i1> [#uses=1]
- br i1 %tmp5.i185, label %whilebody, label %endwhile
-
-whilebody: ; preds = %whilecond
- %tmp10 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp11 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp10 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readLine@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp11, i32 0, i32 8 ; <%"byte[]" (%tango.net.ftp.Telnet.Telnet*)**> [#uses=1]
- %this.readLine = load %"byte[]" (%tango.net.ftp.Telnet.Telnet*)** %"this.readLine@vtbl", align 4 ; <%"byte[]" (%tango.net.ftp.Telnet.Telnet*)*> [#uses=1]
- %tmp13 = bitcast %tango.net.ftp.FtpClient.FTPConnection* %.this_arg to %tango.net.ftp.Telnet.Telnet* ; <%tango.net.ftp.Telnet.Telnet*> [#uses=1]
- %tmp14 = call fastcc %"byte[]" %this.readLine(%tango.net.ftp.Telnet.Telnet* %tmp13) ; <%"byte[]"> [#uses=2]
- %tmp14168 = extractvalue %"byte[]" %tmp14, 0 ; <i32> [#uses=9]
- %tmp14169 = extractvalue %"byte[]" %tmp14, 1 ; <i8*> [#uses=9]
- %tmp16 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 1, i32 0 ; <i32*> [#uses=6]
- %.len = load i32* %tmp16 ; <i32> [#uses=4]
- %tmp17 = icmp eq i32 %.len, 0 ; <i1> [#uses=1]
- br i1 %tmp17, label %if, label %else
-
-if: ; preds = %whilebody
- %tmp20 = icmp ult i32 %tmp14168, 4 ; <i1> [#uses=1]
- br i1 %tmp20, label %if21, label %endif22
-
-if21: ; preds = %if
- call void @llvm.memcpy.i32(i8* %tmp5, i8* getelementptr ([4 x i8]* @.str118, i32 0, i32 0), i32 3, i32 1)
- br label %endwhile
-
-endif22: ; preds = %if
- call void @llvm.memcpy.i32(i8* %tmp5, i8* %tmp14169, i32 3, i32 1)
- %tmp34 = getelementptr i8* %tmp14169, i32 4 ; <i8*> [#uses=1]
- %tmp35 = add i32 %tmp14168, -4 ; <i32> [#uses=1]
- store i32 %tmp35, i32* %tmp16
- %tmp37 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp34, i8** %tmp37
- br label %endif
-
-else: ; preds = %whilebody
- %tmp41 = add i32 %.len, 1 ; <i32> [#uses=11]
- %tmp44 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 1, i32 1 ; <i8**> [#uses=5]
- %.ptr45 = load i8** %tmp44 ; <i8*> [#uses=1]
- %.gc_mem = call i8* @_d_arraysetlengthiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp41, i32 %.len, i8* %.ptr45) ; <i8*> [#uses=5]
- %tmp46 = getelementptr i8* %.gc_mem, i32 %.len ; <i8*> [#uses=1]
- store i8 10, i8* %tmp46, align 1
- store i32 %tmp41, i32* %tmp16
- store i8* %.gc_mem, i8** %tmp44
- %tmp51 = icmp ugt i32 %tmp14168, 4 ; <i1> [#uses=1]
- br i1 %tmp51, label %andand, label %else65
-
-andand: ; preds = %else
- %tmp59 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp14169, 1 ; <%"byte[]"> [#uses=1]
- %tmp60 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp5, 1 ; <%"byte[]"> [#uses=1]
- %tmp61 = call i32 @_adEq(%"byte[]" %tmp59, %"byte[]" %tmp60, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp62 = icmp eq i32 %tmp61, 0 ; <i1> [#uses=1]
- br i1 %tmp62, label %else65, label %if63
-
-if63: ; preds = %andand
- %tmp71 = getelementptr i8* %tmp14169, i32 4 ; <i8*> [#uses=1]
- %tmp72 = add i32 %tmp14168, -4 ; <i32> [#uses=2]
- %tmp75 = add i32 %tmp41, %tmp72 ; <i32> [#uses=2]
- %.gc_mem80 = call i8* @_d_arraysetlengthiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp75, i32 %tmp41, i8* %.gc_mem) ; <i8*> [#uses=2]
- %tmp81 = getelementptr i8* %.gc_mem80, i32 %tmp41 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp81, i8* %tmp71, i32 %tmp72, i32 1)
- store i32 %tmp75, i32* %tmp16
- store i8* %.gc_mem80, i8** %tmp44
- br label %endif
-
-else65: ; preds = %andand, %else
- %tmp87 = icmp ugt i32 %tmp14168, 2 ; <i1> [#uses=1]
- br i1 %tmp87, label %andand88, label %else99
-
-andand88: ; preds = %else65
- %tmp93 = load i8* %tmp14169 ; <i8> [#uses=1]
- %tmp95 = icmp eq i8 %tmp93, 32 ; <i1> [#uses=1]
- br i1 %tmp95, label %if97, label %else99
-
-if97: ; preds = %andand88
- %tmp105 = getelementptr i8* %tmp14169, i32 1 ; <i8*> [#uses=1]
- %tmp106 = add i32 %tmp14168, -1 ; <i32> [#uses=2]
- %tmp109 = add i32 %tmp41, %tmp106 ; <i32> [#uses=2]
- %.gc_mem114 = call i8* @_d_arraysetlengthiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp109, i32 %tmp41, i8* %.gc_mem) ; <i8*> [#uses=2]
- %tmp115 = getelementptr i8* %.gc_mem114, i32 %tmp41 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp115, i8* %tmp105, i32 %tmp106, i32 1)
- store i32 %tmp109, i32* %tmp16
- store i8* %.gc_mem114, i8** %tmp44
- br label %endif
-
-else99: ; preds = %andand88, %else65
- %tmp124 = add i32 %tmp41, %tmp14168 ; <i32> [#uses=2]
- %.gc_mem129 = call i8* @_d_arraysetlengthiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp124, i32 %tmp41, i8* %.gc_mem) ; <i8*> [#uses=2]
- %tmp132 = getelementptr i8* %.gc_mem129, i32 %tmp41 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp132, i8* %tmp14169, i32 %tmp14168, i32 1)
- store i32 %tmp124, i32* %tmp16
- store i8* %.gc_mem129, i8** %tmp44
- br label %endif
-
-endif: ; preds = %else99, %if97, %if63, %endif22
- %tmp138 = icmp ult i32 %tmp14168, 4 ; <i1> [#uses=1]
- br i1 %tmp138, label %whilecond, label %andand139
-
-andand139: ; preds = %endif
- %tmp148 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp14169, 1 ; <%"byte[]"> [#uses=1]
- %tmp149 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp5, 1 ; <%"byte[]"> [#uses=1]
- %tmp150 = call i32 @_adEq(%"byte[]" %tmp148, %"byte[]" %tmp149, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp151 = icmp eq i32 %tmp150, 0 ; <i1> [#uses=1]
- br i1 %tmp151, label %whilecond, label %andand153
-
-andand153: ; preds = %andand139
- %tmp157 = getelementptr i8* %tmp14169, i32 3 ; <i8*> [#uses=1]
- %tmp158 = load i8* %tmp157 ; <i8> [#uses=1]
- %tmp160 = icmp eq i8 %tmp158, 32 ; <i1> [#uses=1]
- br i1 %tmp160, label %endwhile, label %whilecond
-
-endwhile: ; preds = %andand153, %if21, %whilecond
- %tmp165 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.sret_arg, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp165, i8* %tmp5, i32 12, i32 1)
- ret void
-}
-
-define fastcc %"byte[]" @_D5tango3net3ftp9FtpClient13FTPConnection8parse257MFS5tango3net3ftp9FtpClient11FtpResponseZAa(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response_arg) {
-entry:
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=3]
- %.len = load i32* %tmp1 ; <i32> [#uses=2]
- %.gc_mem = tail call noalias i8* @_d_newarrayiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %.len) ; <i8*> [#uses=3]
- %.len6 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp7 = icmp ugt i32 %.len6, 2 ; <i1> [#uses=1]
- br i1 %tmp7, label %whilecond, label %if
-
-if: ; preds = %entry
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp9 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 14 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- tail call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response_arg)
- br label %whilecond
-
-whilecond: ; preds = %endif25, %if, %entry
- %pos.1 = phi i32 [ 1, %if ], [ %tmp70, %endif25 ], [ 1, %entry ] ; <i32> [#uses=4]
- %len.1 = phi i32 [ 0, %if ], [ %len.0, %endif25 ], [ 0, %entry ] ; <i32> [#uses=5]
- %.len14 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp16 = icmp ult i32 %pos.1, %.len14 ; <i1> [#uses=1]
- br i1 %tmp16, label %whilebody, label %endwhile
-
-whilebody: ; preds = %whilecond
- %tmp18 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response_arg, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- %.ptr = load i8** %tmp18 ; <i8*> [#uses=2]
- %tmp20 = getelementptr i8* %.ptr, i32 %pos.1 ; <i8*> [#uses=1]
- %tmp21 = load i8* %tmp20 ; <i8> [#uses=2]
- %tmp23 = icmp eq i8 %tmp21, 34 ; <i1> [#uses=1]
- br i1 %tmp23, label %if24, label %else
-
-if24: ; preds = %whilebody
- %tmp27 = add i32 %pos.1, 1 ; <i32> [#uses=3]
- %tmp31 = icmp eq i32 %tmp27, %.len14 ; <i1> [#uses=1]
- br i1 %tmp31, label %endwhile, label %endif33
-
-endif33: ; preds = %if24
- %tmp39 = getelementptr i8* %.ptr, i32 %tmp27 ; <i8*> [#uses=1]
- %tmp40 = load i8* %tmp39 ; <i8> [#uses=2]
- %tmp42 = icmp eq i8 %tmp40, 34 ; <i1> [#uses=1]
- br i1 %tmp42, label %if43, label %endwhile
-
-if43: ; preds = %endif33
- %tmp50 = getelementptr i8* %.gc_mem, i32 %len.1 ; <i8*> [#uses=1]
- store i8 %tmp40, i8* %tmp50
- br label %endif25
-
-else: ; preds = %whilebody
- %tmp62 = getelementptr i8* %.gc_mem, i32 %len.1 ; <i8*> [#uses=1]
- store i8 %tmp21, i8* %tmp62
- br label %endif25
-
-endif25: ; preds = %else, %if43
- %pos.0 = phi i32 [ %tmp27, %if43 ], [ %pos.1, %else ] ; <i32> [#uses=1]
- %len.0 = add i32 %len.1, 1 ; <i32> [#uses=1]
- %tmp70 = add i32 %pos.0, 1 ; <i32> [#uses=1]
- br label %whilecond
-
-endwhile: ; preds = %endif33, %if24, %whilecond
- %.gc_mem76 = tail call i8* @_d_arraysetlengthiT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %len.1, i32 %.len, i8* %.gc_mem) ; <i8*> [#uses=1]
- %insert = insertvalue %"byte[]" undef, i32 %len.1, 0 ; <%"byte[]"> [#uses=1]
- %insert82 = insertvalue %"byte[]" %insert, i8* %.gc_mem76, 1 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %insert82
-}
-
-define fastcc %tango.net.SocketConduit.SocketConduit* @_D5tango3net3ftp9FtpClient13FTPConnection13getDataSocketMFZC5tango3net13SocketConduit13SocketConduit(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %tmp63207 = alloca [64 x i8], align 1 ; <[64 x i8]*> [#uses=1]
- %__arrayArg139 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %__arrayArg138 = alloca [3 x %"byte[]"], align 8 ; <[3 x %"byte[]"]*> [#uses=3]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp145208 = alloca [64 x i8], align 1 ; <[64 x i8]*> [#uses=1]
- %foo = alloca [20 x i8], align 1 ; <[20 x i8]*> [#uses=12]
- %__arrayArg140 = alloca [7 x %"byte[]"], align 8 ; <[7 x %"byte[]"]*> [#uses=7]
- %__arrayArg141 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp204 = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp145208.sub = getelementptr [64 x i8]* %tmp145208, i32 0, i32 0 ; <i8*> [#uses=1]
- %tmp63207.sub = getelementptr [64 x i8]* %tmp63207, i32 0, i32 0 ; <i8*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 9 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=1]
- %tmp2 = load %tango.net.SocketConduit.SocketConduit** %tmp1 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp3 = icmp eq %tango.net.SocketConduit.SocketConduit* %tmp2, null ; <i1> [#uses=1]
- br i1 %tmp3, label %endif, label %if
-
-if: ; preds = %entry
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp5 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.finishDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 44 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.finishDataCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)** %"this.finishDataCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %this.finishDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp2)
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp13 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 0 ; <i32*> [#uses=1]
- %tmp14 = load i32* %tmp13 ; <i32> [#uses=1]
- switch i32 %tmp14, label %default15 [
- i32 1, label %endif.case_crit_edge
- i32 0, label %case25
- ]
-
-endif.case_crit_edge: ; preds = %endif
- %tmp21.pre = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- br label %case
-
-default15: ; preds = %endif
- %tmp17 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp18 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp17 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp18, i32 0, i32 5 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 23, i8* getelementptr ([24 x i8]* @.str120, i32 0, i32 0) })
- br label %case
-
-case: ; preds = %default15, %endif.case_crit_edge
- %tmp21.pre-phi = phi %tango.net.ftp.FtpClient.FTPConnection.__vtbl** [ %tmp21.pre, %endif.case_crit_edge ], [ %tmp17, %default15 ] ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp22 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp21.pre-phi ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.connectPassive@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp22, i32 0, i32 40 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.connectPassive = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)** %"this.connectPassive@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- %tmp24 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.connectPassive(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
- ret %tango.net.SocketConduit.SocketConduit* %tmp24
-
-case25: ; preds = %endif
- %tmp28 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 1 ; <%tango.net.Socket.Address**> [#uses=1]
- %tmp29 = load %tango.net.Socket.Address** %tmp28 ; <%tango.net.Socket.Address*> [#uses=1]
- %tmp30 = bitcast %tango.net.Socket.Address* %tmp29 to %object.Object* ; <%object.Object*> [#uses=1]
- %tmp31 = call %object.Object* @_d_dynamic_cast(%object.Object* %tmp30, %object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) nounwind readonly ; <%object.Object*> [#uses=3]
- %tmp32 = bitcast %object.Object* %tmp31 to %tango.net.Socket.IPv4Address* ; <%tango.net.Socket.IPv4Address*> [#uses=8]
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net13SocketConduit13SocketConduit7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.net.SocketConduit.SocketConduit* ; <%tango.net.SocketConduit.SocketConduit*> [#uses=4]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.SocketConduit.SocketConduit.__vtbl** ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=3]
- store %tango.net.SocketConduit.SocketConduit.__vtbl* @_D5tango3net13SocketConduit13SocketConduit6__vtblZ, %tango.net.SocketConduit.SocketConduit.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp33 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp33, i8* bitcast (%15** getelementptr (%tango.net.SocketConduit.SocketConduit* bitcast (%23* @_D5tango3net13SocketConduit13SocketConduit6__initZ to %tango.net.SocketConduit.SocketConduit*), i32 0, i32 2) to i8*), i32 40, i32 1)
- %tmp1.i.i.i = getelementptr i8* %.newclass_gc_alloc, i32 28 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i.i.i to %tango.net.Socket.Socket** ; <%tango.net.Socket.Socket**> [#uses=1]
- %.newclass_gc_alloc.i.i.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket6Socket7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc.i.i.i = bitcast i8* %.newclass_gc_alloc.i.i.i to %tango.net.Socket.Socket* ; <%tango.net.Socket.Socket*> [#uses=2]
- %vtbl.i.i.i = bitcast i8* %.newclass_gc_alloc.i.i.i to %tango.net.Socket.Socket.__vtbl** ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- store %tango.net.Socket.Socket.__vtbl* @_D5tango3net6Socket6Socket6__vtblZ, %tango.net.Socket.Socket.__vtbl** %vtbl.i.i.i
- %monitor.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor.i.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp2.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i.i.i, i8* bitcast (i32* getelementptr (%tango.net.Socket.Socket* bitcast (%25* @_D5tango3net6Socket6Socket6__initZ to %tango.net.Socket.Socket*), i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp1.i.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp1.i.i.i.i to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %3
- %tmp4.i.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i, i32 16 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp4.i.i.i.i to i32* ; <i32*> [#uses=1]
- store i32 2, i32* %4
- %tmp7.i.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i, i32 20 ; <i8*> [#uses=1]
- %5 = bitcast i8* %tmp7.i.i.i.i to i32* ; <i32*> [#uses=1]
- store i32 6, i32* %5
- call fastcc void @_D5tango3net6Socket6Socket10initializeMFT5tango3net6Socket8socket_tZv(%tango.net.Socket.Socket* %.newclass_gc.i.i.i, i32 -1)
- store %tango.net.Socket.Socket* %.newclass_gc.i.i.i, %tango.net.Socket.Socket** %1
- %tmp40 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %vtbl ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"listener.bind@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp40, i32 0, i32 19 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)**> [#uses=1]
- %listener.bind = load %tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)** %"listener.bind@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)*> [#uses=1]
- %tmp44 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 2 ; <%tango.net.Socket.Address**> [#uses=1]
- %tmp45 = load %tango.net.Socket.Address** %tmp44 ; <%tango.net.Socket.Address*> [#uses=1]
- %tmp46 = call fastcc %tango.net.SocketConduit.SocketConduit* %listener.bind(%tango.net.SocketConduit.SocketConduit* %.newclass_gc, %tango.net.Socket.Address* %tmp45) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=0]
- %tmp49 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %vtbl ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"listener.socket@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp49, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %listener.socket = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"listener.socket@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp51 = call fastcc %tango.net.Socket.Socket* %listener.socket(%tango.net.SocketConduit.SocketConduit* %.newclass_gc) ; <%tango.net.Socket.Socket*> [#uses=2]
- %tmp52 = getelementptr %tango.net.Socket.Socket* %tmp51, i32 0, i32 0 ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- %tmp53 = load %tango.net.Socket.Socket.__vtbl** %tmp52 ; <%tango.net.Socket.Socket.__vtbl*> [#uses=1]
- %"listener.socket().listen@vtbl" = getelementptr %tango.net.Socket.Socket.__vtbl* %tmp53, i32 0, i32 13 ; <%tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)**> [#uses=1]
- %"listener.socket().listen" = load %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)** %"listener.socket().listen@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)*> [#uses=1]
- %tmp55 = call fastcc %tango.net.Socket.Socket* %"listener.socket().listen"(%tango.net.Socket.Socket* %tmp51, i32 32) ; <%tango.net.Socket.Socket*> [#uses=0]
- %tmp57 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=5]
- %tmp58 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp57 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.is_supported@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp58, i32 0, i32 42 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.is_supported = load i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.is_supported@vtbl", align 4 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp60 = call fastcc i1 %this.is_supported(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str122, i32 0, i32 0) }) ; <i1> [#uses=1]
- br i1 %tmp60, label %if61, label %else
-
-if61: ; preds = %case25
- %tmp66 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp57 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp66, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp68 = getelementptr [1 x %"byte[]"]* %__arrayArg139, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- %tmp70 = insertvalue %"byte[]" { i32 64, i8* undef }, i8* %tmp63207.sub, 1 ; <%"byte[]"> [#uses=1]
- %tmp71 = getelementptr [3 x %"byte[]"]* %__arrayArg138, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" { i32 9, i8* getelementptr ([10 x i8]* @.str124, i32 0, i32 0) }, %"byte[]"* %tmp71, align 8
- %tmp72 = getelementptr [3 x %"byte[]"]* %__arrayArg138, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp74 = bitcast %object.Object* %tmp31 to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=2]
- %tmp75 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp74 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.toAddrString@vtbl" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp75, i32 0, i32 10 ; <%"byte[]" (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.toAddrString = load %"byte[]" (%tango.net.Socket.IPv4Address*)** %"data_addr.toAddrString@vtbl", align 4 ; <%"byte[]" (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp77 = call fastcc %"byte[]" %data_addr.toAddrString(%tango.net.Socket.IPv4Address* %tmp32) ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp77, %"byte[]"* %tmp72, align 8
- %tmp78 = getelementptr [3 x %"byte[]"]* %__arrayArg138, i32 0, i32 2 ; <%"byte[]"*> [#uses=1]
- %tmp81 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp74 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.toPortString@vtbl" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp81, i32 0, i32 11 ; <%"byte[]" (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.toPortString = load %"byte[]" (%tango.net.Socket.IPv4Address*)** %"data_addr.toPortString@vtbl", align 4 ; <%"byte[]" (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp83 = call fastcc %"byte[]" %data_addr.toPortString(%tango.net.Socket.IPv4Address* %tmp32) ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp83, %"byte[]"* %tmp78, align 8
- %tmp85 = insertvalue %"char[][]" { i32 3, %"byte[]"* undef }, %"byte[]"* %tmp71, 1 ; <%"char[][]"> [#uses=1]
- %tmp86 = call fastcc %"byte[]" @_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa(%"byte[]" %tmp70, %"char[][]" %tmp85) ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp86, %"byte[]"* %tmp68, align 8
- %tmp88 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp68, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str123, i32 0, i32 0) }, %"char[][]" %tmp88)
- %tmp91 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp57 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp91, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str125, i32 0, i32 0) })
- ret %tango.net.SocketConduit.SocketConduit* %.newclass_gc
-
-else: ; preds = %case25
- %tmp94 = bitcast %object.Object* %tmp31 to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=6]
- %tmp95 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp94 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.addr@vtbl" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp95, i32 0, i32 9 ; <i32 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.addr = load i32 (%tango.net.Socket.IPv4Address*)** %"data_addr.addr@vtbl", align 4 ; <i32 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp97 = call fastcc i32 %data_addr.addr(%tango.net.Socket.IPv4Address* %tmp32) ; <i32> [#uses=1]
- %tmp98 = lshr i32 %tmp97, 24 ; <i32> [#uses=1]
- %tmp102 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp94 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.addr@vtbl103" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp102, i32 0, i32 9 ; <i32 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.addr105 = load i32 (%tango.net.Socket.IPv4Address*)** %"data_addr.addr@vtbl103", align 4 ; <i32 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp106 = call fastcc i32 %data_addr.addr105(%tango.net.Socket.IPv4Address* %tmp32) ; <i32> [#uses=1]
- %tmp107 = lshr i32 %tmp106, 16 ; <i32> [#uses=1]
- %tmp108 = and i32 %tmp107, 255 ; <i32> [#uses=1]
- %tmp111 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp94 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.addr@vtbl112" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp111, i32 0, i32 9 ; <i32 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.addr114 = load i32 (%tango.net.Socket.IPv4Address*)** %"data_addr.addr@vtbl112", align 4 ; <i32 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp115 = call fastcc i32 %data_addr.addr114(%tango.net.Socket.IPv4Address* %tmp32) ; <i32> [#uses=1]
- %tmp116 = lshr i32 %tmp115, 8 ; <i32> [#uses=1]
- %tmp117 = and i32 %tmp116, 255 ; <i32> [#uses=1]
- %tmp120 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp94 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.addr@vtbl121" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp120, i32 0, i32 9 ; <i32 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.addr123 = load i32 (%tango.net.Socket.IPv4Address*)** %"data_addr.addr@vtbl121", align 4 ; <i32 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp124 = call fastcc i32 %data_addr.addr123(%tango.net.Socket.IPv4Address* %tmp32) ; <i32> [#uses=1]
- %tmp126 = and i32 %tmp124, 255 ; <i32> [#uses=1]
- %tmp129 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp94 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.port@vtbl" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp129, i32 0, i32 8 ; <i16 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.port = load i16 (%tango.net.Socket.IPv4Address*)** %"data_addr.port@vtbl", align 4 ; <i16 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp131 = call fastcc zeroext i16 %data_addr.port(%tango.net.Socket.IPv4Address* %tmp32) ; <i16> [#uses=1]
- %tmp132 = zext i16 %tmp131 to i32 ; <i32> [#uses=1]
- %tmp133210 = lshr i32 %tmp132, 8 ; <i32> [#uses=1]
- %tmp137 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp94 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"data_addr.port@vtbl138" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp137, i32 0, i32 8 ; <i16 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %data_addr.port140 = load i16 (%tango.net.Socket.IPv4Address*)** %"data_addr.port@vtbl138", align 4 ; <i16 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp141 = call fastcc zeroext i16 %data_addr.port140(%tango.net.Socket.IPv4Address* %tmp32) ; <i16> [#uses=1]
- %tmp142 = zext i16 %tmp141 to i32 ; <i32> [#uses=1]
- %tmp144 = and i32 %tmp142, 255 ; <i32> [#uses=1]
- %tmp147 = insertvalue %"byte[]" { i32 64, i8* undef }, i8* %tmp145208.sub, 1 ; <%"byte[]"> [#uses=1]
- %tmp148 = getelementptr [7 x %"byte[]"]* %__arrayArg140, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" { i32 17, i8* getelementptr ([18 x i8]* @.str126, i32 0, i32 0) }, %"byte[]"* %tmp148, align 8
- %tmp149 = getelementptr [7 x %"byte[]"]* %__arrayArg140, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp49.i = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 2) ; <%"byte[]"> [#uses=1]
- %tmp49178.i = extractvalue %"byte[]" %tmp49.i, 1 ; <i8*> [#uses=1]
- %tmp52.i = load i32* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 0), align 8 ; <i32> [#uses=2]
- %tmp56.i = getelementptr [20 x i8]* %foo, i32 0, i32 3 ; <i8*> [#uses=1]
- br i1 false, label %dowhile82.i, label %if59.i
-
-if59.i: ; preds = %else
- br label %dowhile.i
-
-dowhile.i: ; preds = %andand.i, %if59.i
- %p.0.i = phi i8* [ %tmp56.i, %if59.i ], [ %tmp65.i, %andand.i ] ; <i8*> [#uses=1]
- %v.0.i = phi i32 [ %tmp98, %if59.i ], [ %tmp75.i, %andand.i ] ; <i32> [#uses=2]
- %len.0.i = phi i32 [ 3, %if59.i ], [ %tmp78.i, %andand.i ] ; <i32> [#uses=3]
- %tmp65.i = getelementptr i8* %p.0.i, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i = urem i32 %v.0.i, %tmp52.i ; <i32> [#uses=1]
- %tmp71.i = getelementptr i8* %tmp49178.i, i32 %tmp68.i ; <i8*> [#uses=1]
- %tmp72.i = load i8* %tmp71.i ; <i8> [#uses=1]
- store i8 %tmp72.i, i8* %tmp65.i
- %tmp75.i = udiv i32 %v.0.i, %tmp52.i ; <i32> [#uses=2]
- %tmp76.i = icmp eq i32 %tmp75.i, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i, label %condtrue.i, label %andand.i
-
-andand.i: ; preds = %dowhile.i
- %tmp78.i = add i32 %len.0.i, -1 ; <i32> [#uses=2]
- %tmp79.i = icmp eq i32 %len.0.i, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i, label %condtrue.i, label %dowhile.i
-
-dowhile82.i: ; preds = %andand100.i, %else
- br i1 undef, label %condtrue.i, label %andand100.i
-
-andand100.i: ; preds = %dowhile82.i
- br i1 undef, label %condtrue.i, label %dowhile82.i
-
-condtrue.i: ; preds = %andand100.i, %dowhile82.i, %andand.i, %dowhile.i
- %len.1.i = phi i32 [ %tmp78.i, %andand.i ], [ %len.0.i, %dowhile.i ], [ undef, %andand100.i ], [ undef, %dowhile82.i ] ; <i32> [#uses=2]
- %tmp112.i = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 1) ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i = extractvalue %"byte[]" %tmp112.i, 0 ; <i32> [#uses=3]
- %tmp117.i = icmp ugt i32 %len.1.i, %condtmp.0175.i ; <i1> [#uses=1]
- br i1 %tmp117.i, label %if118.i, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-if118.i: ; preds = %condtrue.i
- %condtmp.0176.i = extractvalue %"byte[]" %tmp112.i, 1 ; <i8*> [#uses=1]
- %tmp123.i = add i32 %condtmp.0175.i, 1 ; <i32> [#uses=1]
- %tmp124.i = sub i32 %len.1.i, %tmp123.i ; <i32> [#uses=2]
- %tmp156.i = getelementptr [20 x i8]* %foo, i32 0, i32 %tmp124.i ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i, i8* %condtmp.0176.i, i32 %condtmp.0175.i, i32 1)
- %tmp170.i = sub i32 3, %tmp124.i ; <i32> [#uses=1]
- %tmp171.i = insertvalue %"byte[]" undef, i32 %tmp170.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i = insertvalue %"byte[]" %tmp171.i, i8* %tmp156.i, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit: ; preds = %if118.i, %condtrue.i
- %tmp6.i.i408 = phi %"byte[]" [ %tmp172.i, %if118.i ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i.i408, %"byte[]"* %tmp149, align 8
- %tmp155 = getelementptr [7 x %"byte[]"]* %__arrayArg140, i32 0, i32 2 ; <%"byte[]"*> [#uses=1]
- %tmp49.i423 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 2) ; <%"byte[]"> [#uses=1]
- %tmp49178.i424 = extractvalue %"byte[]" %tmp49.i423, 1 ; <i8*> [#uses=1]
- %tmp52.i426 = load i32* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 0), align 8 ; <i32> [#uses=2]
- %tmp56.i427 = getelementptr [20 x i8]* %foo, i32 0, i32 6 ; <i8*> [#uses=1]
- br i1 false, label %dowhile82.i456, label %if59.i431
-
-if59.i431: ; preds = %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
- br label %dowhile.i441
-
-dowhile.i441: ; preds = %andand.i444, %if59.i431
- %p.0.i432 = phi i8* [ %tmp56.i427, %if59.i431 ], [ %tmp65.i435, %andand.i444 ] ; <i8*> [#uses=1]
- %v.0.i433 = phi i32 [ %tmp108, %if59.i431 ], [ %tmp75.i439, %andand.i444 ] ; <i32> [#uses=2]
- %len.0.i434 = phi i32 [ 3, %if59.i431 ], [ %tmp78.i442, %andand.i444 ] ; <i32> [#uses=3]
- %tmp65.i435 = getelementptr i8* %p.0.i432, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i436 = urem i32 %v.0.i433, %tmp52.i426 ; <i32> [#uses=1]
- %tmp71.i437 = getelementptr i8* %tmp49178.i424, i32 %tmp68.i436 ; <i8*> [#uses=1]
- %tmp72.i438 = load i8* %tmp71.i437 ; <i8> [#uses=1]
- store i8 %tmp72.i438, i8* %tmp65.i435
- %tmp75.i439 = udiv i32 %v.0.i433, %tmp52.i426 ; <i32> [#uses=2]
- %tmp76.i440 = icmp eq i32 %tmp75.i439, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i440, label %condtrue.i466, label %andand.i444
-
-andand.i444: ; preds = %dowhile.i441
- %tmp78.i442 = add i32 %len.0.i434, -1 ; <i32> [#uses=2]
- %tmp79.i443 = icmp eq i32 %len.0.i434, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i443, label %condtrue.i466, label %dowhile.i441
-
-dowhile82.i456: ; preds = %andand100.i459, %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
- br i1 undef, label %condtrue.i466, label %andand100.i459
-
-andand100.i459: ; preds = %dowhile82.i456
- br i1 undef, label %condtrue.i466, label %dowhile82.i456
-
-condtrue.i466: ; preds = %andand100.i459, %dowhile82.i456, %andand.i444, %dowhile.i441
- %len.1.i461 = phi i32 [ %tmp78.i442, %andand.i444 ], [ %len.0.i434, %dowhile.i441 ], [ undef, %andand100.i459 ], [ undef, %dowhile82.i456 ] ; <i32> [#uses=2]
- %tmp112.i465 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 1) ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i468 = extractvalue %"byte[]" %tmp112.i465, 0 ; <i32> [#uses=3]
- %tmp117.i470 = icmp ugt i32 %len.1.i461, %condtmp.0175.i468 ; <i1> [#uses=1]
- br i1 %tmp117.i470, label %if118.i474, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit482
-
-if118.i474: ; preds = %condtrue.i466
- %condtmp.0176.i469 = extractvalue %"byte[]" %tmp112.i465, 1 ; <i8*> [#uses=1]
- %tmp123.i472 = add i32 %condtmp.0175.i468, 1 ; <i32> [#uses=1]
- %tmp124.i473 = sub i32 %len.1.i461, %tmp123.i472 ; <i32> [#uses=2]
- %tmp157.sum788 = add i32 %tmp124.i473, 3 ; <i32> [#uses=1]
- %tmp156.i476 = getelementptr [20 x i8]* %foo, i32 0, i32 %tmp157.sum788 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i476, i8* %condtmp.0176.i469, i32 %condtmp.0175.i468, i32 1)
- %tmp170.i477 = sub i32 3, %tmp124.i473 ; <i32> [#uses=1]
- %tmp171.i478 = insertvalue %"byte[]" undef, i32 %tmp170.i477, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i479 = insertvalue %"byte[]" %tmp171.i478, i8* %tmp156.i476, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit482
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit482: ; preds = %if118.i474, %condtrue.i466
- %tmp6.i.i248483 = phi %"byte[]" [ %tmp172.i479, %if118.i474 ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i466 ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i.i248483, %"byte[]"* %tmp155, align 8
- %tmp161 = getelementptr [7 x %"byte[]"]* %__arrayArg140, i32 0, i32 3 ; <%"byte[]"*> [#uses=1]
- %tmp49.i498 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 2) ; <%"byte[]"> [#uses=1]
- %tmp49178.i499 = extractvalue %"byte[]" %tmp49.i498, 1 ; <i8*> [#uses=1]
- %tmp52.i501 = load i32* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 0), align 8 ; <i32> [#uses=2]
- %tmp56.i502 = getelementptr [20 x i8]* %foo, i32 0, i32 9 ; <i8*> [#uses=1]
- br i1 false, label %dowhile82.i531, label %if59.i506
-
-if59.i506: ; preds = %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit482
- br label %dowhile.i516
-
-dowhile.i516: ; preds = %andand.i519, %if59.i506
- %p.0.i507 = phi i8* [ %tmp56.i502, %if59.i506 ], [ %tmp65.i510, %andand.i519 ] ; <i8*> [#uses=1]
- %v.0.i508 = phi i32 [ %tmp117, %if59.i506 ], [ %tmp75.i514, %andand.i519 ] ; <i32> [#uses=2]
- %len.0.i509 = phi i32 [ 3, %if59.i506 ], [ %tmp78.i517, %andand.i519 ] ; <i32> [#uses=3]
- %tmp65.i510 = getelementptr i8* %p.0.i507, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i511 = urem i32 %v.0.i508, %tmp52.i501 ; <i32> [#uses=1]
- %tmp71.i512 = getelementptr i8* %tmp49178.i499, i32 %tmp68.i511 ; <i8*> [#uses=1]
- %tmp72.i513 = load i8* %tmp71.i512 ; <i8> [#uses=1]
- store i8 %tmp72.i513, i8* %tmp65.i510
- %tmp75.i514 = udiv i32 %v.0.i508, %tmp52.i501 ; <i32> [#uses=2]
- %tmp76.i515 = icmp eq i32 %tmp75.i514, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i515, label %condtrue.i541, label %andand.i519
-
-andand.i519: ; preds = %dowhile.i516
- %tmp78.i517 = add i32 %len.0.i509, -1 ; <i32> [#uses=2]
- %tmp79.i518 = icmp eq i32 %len.0.i509, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i518, label %condtrue.i541, label %dowhile.i516
-
-dowhile82.i531: ; preds = %andand100.i534, %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit482
- br i1 undef, label %condtrue.i541, label %andand100.i534
-
-andand100.i534: ; preds = %dowhile82.i531
- br i1 undef, label %condtrue.i541, label %dowhile82.i531
-
-condtrue.i541: ; preds = %andand100.i534, %dowhile82.i531, %andand.i519, %dowhile.i516
- %len.1.i536 = phi i32 [ %tmp78.i517, %andand.i519 ], [ %len.0.i509, %dowhile.i516 ], [ undef, %andand100.i534 ], [ undef, %dowhile82.i531 ] ; <i32> [#uses=2]
- %tmp112.i540 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 1) ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i543 = extractvalue %"byte[]" %tmp112.i540, 0 ; <i32> [#uses=3]
- %tmp117.i545 = icmp ugt i32 %len.1.i536, %condtmp.0175.i543 ; <i1> [#uses=1]
- br i1 %tmp117.i545, label %if118.i549, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit557
-
-if118.i549: ; preds = %condtrue.i541
- %condtmp.0176.i544 = extractvalue %"byte[]" %tmp112.i540, 1 ; <i8*> [#uses=1]
- %tmp123.i547 = add i32 %condtmp.0175.i543, 1 ; <i32> [#uses=1]
- %tmp124.i548 = sub i32 %len.1.i536, %tmp123.i547 ; <i32> [#uses=2]
- %tmp163.sum787 = add i32 %tmp124.i548, 6 ; <i32> [#uses=1]
- %tmp156.i551 = getelementptr [20 x i8]* %foo, i32 0, i32 %tmp163.sum787 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i551, i8* %condtmp.0176.i544, i32 %condtmp.0175.i543, i32 1)
- %tmp170.i552 = sub i32 3, %tmp124.i548 ; <i32> [#uses=1]
- %tmp171.i553 = insertvalue %"byte[]" undef, i32 %tmp170.i552, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i554 = insertvalue %"byte[]" %tmp171.i553, i8* %tmp156.i551, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit557
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit557: ; preds = %if118.i549, %condtrue.i541
- %tmp6.i.i286558 = phi %"byte[]" [ %tmp172.i554, %if118.i549 ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i541 ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i.i286558, %"byte[]"* %tmp161, align 8
- %tmp167 = getelementptr [7 x %"byte[]"]* %__arrayArg140, i32 0, i32 4 ; <%"byte[]"*> [#uses=1]
- %tmp49.i573 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 2) ; <%"byte[]"> [#uses=1]
- %tmp49178.i574 = extractvalue %"byte[]" %tmp49.i573, 1 ; <i8*> [#uses=1]
- %tmp52.i576 = load i32* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 0), align 8 ; <i32> [#uses=2]
- %tmp56.i577 = getelementptr [20 x i8]* %foo, i32 0, i32 12 ; <i8*> [#uses=1]
- br i1 false, label %dowhile82.i606, label %if59.i581
-
-if59.i581: ; preds = %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit557
- br label %dowhile.i591
-
-dowhile.i591: ; preds = %andand.i594, %if59.i581
- %p.0.i582 = phi i8* [ %tmp56.i577, %if59.i581 ], [ %tmp65.i585, %andand.i594 ] ; <i8*> [#uses=1]
- %v.0.i583 = phi i32 [ %tmp126, %if59.i581 ], [ %tmp75.i589, %andand.i594 ] ; <i32> [#uses=2]
- %len.0.i584 = phi i32 [ 3, %if59.i581 ], [ %tmp78.i592, %andand.i594 ] ; <i32> [#uses=3]
- %tmp65.i585 = getelementptr i8* %p.0.i582, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i586 = urem i32 %v.0.i583, %tmp52.i576 ; <i32> [#uses=1]
- %tmp71.i587 = getelementptr i8* %tmp49178.i574, i32 %tmp68.i586 ; <i8*> [#uses=1]
- %tmp72.i588 = load i8* %tmp71.i587 ; <i8> [#uses=1]
- store i8 %tmp72.i588, i8* %tmp65.i585
- %tmp75.i589 = udiv i32 %v.0.i583, %tmp52.i576 ; <i32> [#uses=2]
- %tmp76.i590 = icmp eq i32 %tmp75.i589, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i590, label %condtrue.i616, label %andand.i594
-
-andand.i594: ; preds = %dowhile.i591
- %tmp78.i592 = add i32 %len.0.i584, -1 ; <i32> [#uses=2]
- %tmp79.i593 = icmp eq i32 %len.0.i584, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i593, label %condtrue.i616, label %dowhile.i591
-
-dowhile82.i606: ; preds = %andand100.i609, %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit557
- br i1 undef, label %condtrue.i616, label %andand100.i609
-
-andand100.i609: ; preds = %dowhile82.i606
- br i1 undef, label %condtrue.i616, label %dowhile82.i606
-
-condtrue.i616: ; preds = %andand100.i609, %dowhile82.i606, %andand.i594, %dowhile.i591
- %len.1.i611 = phi i32 [ %tmp78.i592, %andand.i594 ], [ %len.0.i584, %dowhile.i591 ], [ undef, %andand100.i609 ], [ undef, %dowhile82.i606 ] ; <i32> [#uses=2]
- %tmp112.i615 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 1) ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i618 = extractvalue %"byte[]" %tmp112.i615, 0 ; <i32> [#uses=3]
- %tmp117.i620 = icmp ugt i32 %len.1.i611, %condtmp.0175.i618 ; <i1> [#uses=1]
- br i1 %tmp117.i620, label %if118.i624, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit632
-
-if118.i624: ; preds = %condtrue.i616
- %condtmp.0176.i619 = extractvalue %"byte[]" %tmp112.i615, 1 ; <i8*> [#uses=1]
- %tmp123.i622 = add i32 %condtmp.0175.i618, 1 ; <i32> [#uses=1]
- %tmp124.i623 = sub i32 %len.1.i611, %tmp123.i622 ; <i32> [#uses=2]
- %tmp169.sum786 = add i32 %tmp124.i623, 9 ; <i32> [#uses=1]
- %tmp156.i626 = getelementptr [20 x i8]* %foo, i32 0, i32 %tmp169.sum786 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i626, i8* %condtmp.0176.i619, i32 %condtmp.0175.i618, i32 1)
- %tmp170.i627 = sub i32 3, %tmp124.i623 ; <i32> [#uses=1]
- %tmp171.i628 = insertvalue %"byte[]" undef, i32 %tmp170.i627, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i629 = insertvalue %"byte[]" %tmp171.i628, i8* %tmp156.i626, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit632
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit632: ; preds = %if118.i624, %condtrue.i616
- %tmp6.i.i400633 = phi %"byte[]" [ %tmp172.i629, %if118.i624 ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i616 ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i.i400633, %"byte[]"* %tmp167, align 8
- %tmp173 = getelementptr [7 x %"byte[]"]* %__arrayArg140, i32 0, i32 5 ; <%"byte[]"*> [#uses=1]
- %tmp49.i723 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 2) ; <%"byte[]"> [#uses=1]
- %tmp49178.i724 = extractvalue %"byte[]" %tmp49.i723, 1 ; <i8*> [#uses=1]
- %tmp52.i726 = load i32* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 0), align 8 ; <i32> [#uses=2]
- %tmp56.i727 = getelementptr [20 x i8]* %foo, i32 0, i32 15 ; <i8*> [#uses=1]
- br i1 false, label %dowhile82.i756, label %if59.i731
-
-if59.i731: ; preds = %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit632
- br label %dowhile.i741
-
-dowhile.i741: ; preds = %andand.i744, %if59.i731
- %p.0.i732 = phi i8* [ %tmp56.i727, %if59.i731 ], [ %tmp65.i735, %andand.i744 ] ; <i8*> [#uses=1]
- %v.0.i733 = phi i32 [ %tmp133210, %if59.i731 ], [ %tmp75.i739, %andand.i744 ] ; <i32> [#uses=2]
- %len.0.i734 = phi i32 [ 3, %if59.i731 ], [ %tmp78.i742, %andand.i744 ] ; <i32> [#uses=3]
- %tmp65.i735 = getelementptr i8* %p.0.i732, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i736 = urem i32 %v.0.i733, %tmp52.i726 ; <i32> [#uses=1]
- %tmp71.i737 = getelementptr i8* %tmp49178.i724, i32 %tmp68.i736 ; <i8*> [#uses=1]
- %tmp72.i738 = load i8* %tmp71.i737 ; <i8> [#uses=1]
- store i8 %tmp72.i738, i8* %tmp65.i735
- %tmp75.i739 = udiv i32 %v.0.i733, %tmp52.i726 ; <i32> [#uses=2]
- %tmp76.i740 = icmp eq i32 %tmp75.i739, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i740, label %condtrue.i766, label %andand.i744
-
-andand.i744: ; preds = %dowhile.i741
- %tmp78.i742 = add i32 %len.0.i734, -1 ; <i32> [#uses=2]
- %tmp79.i743 = icmp eq i32 %len.0.i734, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i743, label %condtrue.i766, label %dowhile.i741
-
-dowhile82.i756: ; preds = %andand100.i759, %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit632
- br i1 undef, label %condtrue.i766, label %andand100.i759
-
-andand100.i759: ; preds = %dowhile82.i756
- br i1 undef, label %condtrue.i766, label %dowhile82.i756
-
-condtrue.i766: ; preds = %andand100.i759, %dowhile82.i756, %andand.i744, %dowhile.i741
- %len.1.i761 = phi i32 [ %tmp78.i742, %andand.i744 ], [ %len.0.i734, %dowhile.i741 ], [ undef, %andand100.i759 ], [ undef, %dowhile82.i756 ] ; <i32> [#uses=2]
- %tmp112.i765 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 1) ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i768 = extractvalue %"byte[]" %tmp112.i765, 0 ; <i32> [#uses=3]
- %tmp117.i770 = icmp ugt i32 %len.1.i761, %condtmp.0175.i768 ; <i1> [#uses=1]
- br i1 %tmp117.i770, label %if118.i774, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit782
-
-if118.i774: ; preds = %condtrue.i766
- %condtmp.0176.i769 = extractvalue %"byte[]" %tmp112.i765, 1 ; <i8*> [#uses=1]
- %tmp123.i772 = add i32 %condtmp.0175.i768, 1 ; <i32> [#uses=1]
- %tmp124.i773 = sub i32 %len.1.i761, %tmp123.i772 ; <i32> [#uses=2]
- %tmp175.sum785 = add i32 %tmp124.i773, 12 ; <i32> [#uses=1]
- %tmp156.i776 = getelementptr [20 x i8]* %foo, i32 0, i32 %tmp175.sum785 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i776, i8* %condtmp.0176.i769, i32 %condtmp.0175.i768, i32 1)
- %tmp170.i777 = sub i32 3, %tmp124.i773 ; <i32> [#uses=1]
- %tmp171.i778 = insertvalue %"byte[]" undef, i32 %tmp170.i777, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i779 = insertvalue %"byte[]" %tmp171.i778, i8* %tmp156.i776, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit782
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit782: ; preds = %if118.i774, %condtrue.i766
- %tmp6.i.i362783 = phi %"byte[]" [ %tmp172.i779, %if118.i774 ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i766 ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i.i362783, %"byte[]"* %tmp173, align 8
- %tmp179 = getelementptr [7 x %"byte[]"]* %__arrayArg140, i32 0, i32 6 ; <%"byte[]"*> [#uses=1]
- %tmp49.i648 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 2) ; <%"byte[]"> [#uses=1]
- %tmp49178.i649 = extractvalue %"byte[]" %tmp49.i648, 1 ; <i8*> [#uses=1]
- %tmp52.i651 = load i32* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 0), align 8 ; <i32> [#uses=2]
- %tmp56.i652 = getelementptr [20 x i8]* %foo, i32 0, i32 18 ; <i8*> [#uses=1]
- br i1 false, label %dowhile82.i681, label %if59.i656
-
-if59.i656: ; preds = %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit782
- br label %dowhile.i666
-
-dowhile.i666: ; preds = %andand.i669, %if59.i656
- %p.0.i657 = phi i8* [ %tmp56.i652, %if59.i656 ], [ %tmp65.i660, %andand.i669 ] ; <i8*> [#uses=1]
- %v.0.i658 = phi i32 [ %tmp144, %if59.i656 ], [ %tmp75.i664, %andand.i669 ] ; <i32> [#uses=2]
- %len.0.i659 = phi i32 [ 3, %if59.i656 ], [ %tmp78.i667, %andand.i669 ] ; <i32> [#uses=3]
- %tmp65.i660 = getelementptr i8* %p.0.i657, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i661 = urem i32 %v.0.i658, %tmp52.i651 ; <i32> [#uses=1]
- %tmp71.i662 = getelementptr i8* %tmp49178.i649, i32 %tmp68.i661 ; <i8*> [#uses=1]
- %tmp72.i663 = load i8* %tmp71.i662 ; <i8> [#uses=1]
- store i8 %tmp72.i663, i8* %tmp65.i660
- %tmp75.i664 = udiv i32 %v.0.i658, %tmp52.i651 ; <i32> [#uses=2]
- %tmp76.i665 = icmp eq i32 %tmp75.i664, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i665, label %condtrue.i691, label %andand.i669
-
-andand.i669: ; preds = %dowhile.i666
- %tmp78.i667 = add i32 %len.0.i659, -1 ; <i32> [#uses=2]
- %tmp79.i668 = icmp eq i32 %len.0.i659, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i668, label %condtrue.i691, label %dowhile.i666
-
-dowhile82.i681: ; preds = %andand100.i684, %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit782
- br i1 undef, label %condtrue.i691, label %andand100.i684
-
-andand100.i684: ; preds = %dowhile82.i681
- br i1 undef, label %condtrue.i691, label %dowhile82.i681
-
-condtrue.i691: ; preds = %andand100.i684, %dowhile82.i681, %andand.i669, %dowhile.i666
- %len.1.i686 = phi i32 [ %tmp78.i667, %andand.i669 ], [ %len.0.i659, %dowhile.i666 ], [ undef, %andand100.i684 ], [ undef, %dowhile82.i681 ] ; <i32> [#uses=2]
- %tmp112.i690 = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 1) ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i693 = extractvalue %"byte[]" %tmp112.i690, 0 ; <i32> [#uses=3]
- %tmp117.i695 = icmp ugt i32 %len.1.i686, %condtmp.0175.i693 ; <i1> [#uses=1]
- br i1 %tmp117.i695, label %if118.i699, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit707
-
-if118.i699: ; preds = %condtrue.i691
- %condtmp.0176.i694 = extractvalue %"byte[]" %tmp112.i690, 1 ; <i8*> [#uses=1]
- %tmp123.i697 = add i32 %condtmp.0175.i693, 1 ; <i32> [#uses=1]
- %tmp124.i698 = sub i32 %len.1.i686, %tmp123.i697 ; <i32> [#uses=2]
- %tmp181.sum784 = add i32 %tmp124.i698, 15 ; <i32> [#uses=1]
- %tmp156.i701 = getelementptr [20 x i8]* %foo, i32 0, i32 %tmp181.sum784 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i701, i8* %condtmp.0176.i694, i32 %condtmp.0175.i693, i32 1)
- %tmp170.i702 = sub i32 3, %tmp124.i698 ; <i32> [#uses=1]
- %tmp171.i703 = insertvalue %"byte[]" undef, i32 %tmp170.i702, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i704 = insertvalue %"byte[]" %tmp171.i703, i8* %tmp156.i701, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit707
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit707: ; preds = %if118.i699, %condtrue.i691
- %tmp6.i.i324708 = phi %"byte[]" [ %tmp172.i704, %if118.i699 ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i691 ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i.i324708, %"byte[]"* %tmp179, align 8
- %tmp186 = insertvalue %"char[][]" { i32 7, %"byte[]"* undef }, %"byte[]"* %tmp148, 1 ; <%"char[][]"> [#uses=1]
- %tmp187 = call fastcc %"byte[]" @_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa(%"byte[]" %tmp147, %"char[][]" %tmp186) ; <%"byte[]"> [#uses=1]
- %tmp190 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp57 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl191" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp190, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand193 = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl191", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp194 = getelementptr [1 x %"byte[]"]* %__arrayArg141, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %tmp187, %"byte[]"* %tmp194, align 8
- %tmp197 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp194, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand193(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str127, i32 0, i32 0) }, %"char[][]" %tmp197)
- %tmp200 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp57 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl201" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp200, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse203 = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl201", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse203(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp204, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str128, i32 0, i32 0) })
- ret %tango.net.SocketConduit.SocketConduit* %.newclass_gc
-}
-
-define fastcc %tango.net.SocketConduit.SocketConduit* @_D5tango3net3ftp9FtpClient13FTPConnection14connectPassiveMFZC5tango3net13SocketConduit13SocketConduit(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=3]
- %.rettmp70 = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=3]
- %.rettmp161 = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=3]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=6]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.is_supported@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 42 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.is_supported = load i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.is_supported@vtbl", align 4 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp4 = call fastcc i1 %this.is_supported(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str129, i32 0, i32 0) }) ; <i1> [#uses=1]
- %tmp7 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=2]
- br i1 %tmp4, label %if, label %else
-
-if: ; preds = %entry
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str130, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp11 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp11, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str131, i32 0, i32 0) })
- %.rettmp.1.0 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- %tmp359 = load i32* %.rettmp.1.0, align 4 ; <i32> [#uses=3]
- %.rettmp.1.1 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- %tmp360 = load i8** %.rettmp.1.1, align 4 ; <i8*> [#uses=5]
- %tmp16 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 2 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=1]
- %tmp17 = load %tango.net.SocketConduit.SocketConduit** %tmp16 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp18 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp17, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp19 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp18 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"this.socket_.socket@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp19, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.socket_.socket = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"this.socket_.socket@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp21 = call fastcc %tango.net.Socket.Socket* %this.socket_.socket(%tango.net.SocketConduit.SocketConduit* %tmp17) ; <%tango.net.Socket.Socket*> [#uses=2]
- %tmp22 = getelementptr %tango.net.Socket.Socket* %tmp21, i32 0, i32 0 ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- %tmp23 = load %tango.net.Socket.Socket.__vtbl** %tmp22 ; <%tango.net.Socket.Socket.__vtbl*> [#uses=1]
- %"this.socket_.socket().remoteAddress@vtbl" = getelementptr %tango.net.Socket.Socket.__vtbl* %tmp23, i32 0, i32 23 ; <%tango.net.Socket.Address* (%tango.net.Socket.Socket*)**> [#uses=1]
- %"this.socket_.socket().remoteAddress" = load %tango.net.Socket.Address* (%tango.net.Socket.Socket*)** %"this.socket_.socket().remoteAddress@vtbl", align 4 ; <%tango.net.Socket.Address* (%tango.net.Socket.Socket*)*> [#uses=1]
- %tmp25 = call fastcc %tango.net.Socket.Address* %"this.socket_.socket().remoteAddress"(%tango.net.Socket.Socket* %tmp21) ; <%tango.net.Socket.Address*> [#uses=1]
- %tmp26 = bitcast %tango.net.Socket.Address* %tmp25 to %object.Object* ; <%object.Object*> [#uses=1]
- %tmp27 = call %object.Object* @_d_dynamic_cast(%object.Object* %tmp26, %object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) nounwind readonly ; <%object.Object*> [#uses=2]
- %tmp28 = bitcast %object.Object* %tmp27 to %tango.net.Socket.IPv4Address* ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %tmp30 = bitcast %object.Object* %tmp27 to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=1]
- %tmp31 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp30 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"remote.addr@vtbl" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp31, i32 0, i32 9 ; <i32 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %remote.addr = load i32 (%tango.net.Socket.IPv4Address*)** %"remote.addr@vtbl", align 4 ; <i32 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp33 = call fastcc i32 %remote.addr(%tango.net.Socket.IPv4Address* %tmp28) ; <i32> [#uses=1]
- %tmp4.i.i = icmp eq i32 %tmp359, 0 ; <i1> [#uses=1]
- br i1 %tmp4.i.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %forcond.i.i
-
-forcond.i.i: ; preds = %forinc.i.i, %if
- %sign.1.i = phi i1 [ false, %if ], [ %sign.0.i, %forinc.i.i ] ; <i1> [#uses=4]
- %len.0.i.i = phi i32 [ %tmp33.i.i, %forinc.i.i ], [ %tmp359, %if ] ; <i32> [#uses=3]
- %p.0.i.i = phi i8* [ %tmp30.i.i, %forinc.i.i ], [ %tmp360, %if ] ; <i8*> [#uses=6]
- %c.0.in.i.i = phi i8* [ %tmp30.i.i, %forinc.i.i ], [ %tmp360, %if ] ; <i8*> [#uses=1]
- %c.0.i.i = load i8* %c.0.in.i.i ; <i8> [#uses=2]
- %tmp8.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i, label %endfor.i.i, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- switch i8 %c.0.i.i, label %endfor.i.i [
- i8 32, label %forinc.i.i
- i8 9, label %forinc.i.i
- i8 45, label %if20.i.i
- i8 43, label %if26.i.i
- ]
-
-if20.i.i: ; preds = %forbody.i.i
- br label %forinc.i.i
-
-if26.i.i: ; preds = %forbody.i.i
- br label %forinc.i.i
-
-forinc.i.i: ; preds = %if26.i.i, %if20.i.i, %forbody.i.i, %forbody.i.i
- %sign.0.i = phi i1 [ false, %if26.i.i ], [ true, %if20.i.i ], [ %sign.1.i, %forbody.i.i ], [ %sign.1.i, %forbody.i.i ] ; <i1> [#uses=1]
- %tmp30.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- br label %forcond.i.i
-
-endfor.i.i: ; preds = %forbody.i.i, %forcond.i.i
- %tmp37.i.i = icmp eq i8 %c.0.i.i, 48 ; <i1> [#uses=1]
- %tmp39.i.i = icmp sgt i32 %len.0.i.i, 1 ; <i1> [#uses=1]
- %or.cond.i.i = and i1 %tmp37.i.i, %tmp39.i.i ; <i1> [#uses=1]
- br i1 %or.cond.i.i, label %if40.i.i, label %endif41.i.i
-
-if40.i.i: ; preds = %endfor.i.i
- %tmp43.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i = load i8* %tmp43.i.i ; <i8> [#uses=1]
- %tmp45.i.i = zext i8 %tmp44.i.i to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i, label %endif41.i.i [
- i32 120, label %case46.i.i
- i32 88, label %case46.i.i
- i32 98, label %case51.i.i
- i32 66, label %case51.i.i
- i32 111, label %case56.i.i
- i32 79, label %case56.i.i
- ]
-
-case46.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp48.i.i = getelementptr i8* %p.0.i.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case51.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp53.i.i = getelementptr i8* %p.0.i.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case56.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp58.i.i = getelementptr i8* %p.0.i.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-endif41.i.i: ; preds = %case56.i.i, %case51.i.i, %case46.i.i, %if40.i.i, %endfor.i.i
- %r.0.i.i = phi i32 [ 0, %if40.i.i ], [ 8, %case56.i.i ], [ 2, %case51.i.i ], [ 16, %case46.i.i ], [ 0, %endfor.i.i ] ; <i32> [#uses=2]
- %p.2.i.i = phi i8* [ %tmp43.i.i, %if40.i.i ], [ %tmp58.i.i, %case56.i.i ], [ %tmp53.i.i, %case51.i.i ], [ %tmp48.i.i, %case46.i.i ], [ %p.0.i.i, %endfor.i.i ] ; <i8*> [#uses=2]
- %tmp63.i.i = icmp eq i32 %r.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %if70.i.i
-
-if70.i.i: ; preds = %endif41.i.i
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i: ; preds = %if70.i.i, %endif41.i.i, %if
- %sign.2.i = phi i1 [ false, %if ], [ %sign.1.i, %if70.i.i ], [ %sign.1.i, %endif41.i.i ] ; <i1> [#uses=1]
- %radix.0.i = phi i32 [ 0, %if ], [ %r.0.i.i, %if70.i.i ], [ 10, %endif41.i.i ] ; <i32> [#uses=2]
- %p.1.i.i = phi i8* [ %p.2.i.i, %if70.i.i ], [ %tmp360, %if ], [ %p.2.i.i, %endif41.i.i ] ; <i8*> [#uses=1]
- %tmp84.i.i = ptrtoint i8* %p.1.i.i to i32 ; <i32> [#uses=1]
- %tmp85.i.i = ptrtoint i8* %tmp360 to i32 ; <i32> [#uses=1]
- %tmp86.i.i = sub i32 %tmp84.i.i, %tmp85.i.i ; <i32> [#uses=2]
- %tmp6.i = sub i32 %tmp359, %tmp86.i.i ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-foreachcond.i.i: ; preds = %if55.i.i, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
- %value.0.i.i = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp65.i.i, %if55.i.i ] ; <i64> [#uses=3]
- %foreachkey.0.i.i = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp70.i.i, %if55.i.i ] ; <i32> [#uses=3]
- %tmp3.i.i = icmp ult i32 %foreachkey.0.i.i, %tmp6.i ; <i1> [#uses=1]
- br i1 %tmp3.i.i, label %foreachbody.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-foreachbody.i.i: ; preds = %foreachcond.i.i
- %tmp5.sum.i = add i32 %tmp86.i.i, %foreachkey.0.i.i ; <i32> [#uses=1]
- %tmp5.i.i = getelementptr i8* %tmp360, i32 %tmp5.sum.i ; <i8*> [#uses=1]
- %tmp6.i.i = load i8* %tmp5.i.i ; <i8> [#uses=6]
- %tmp6.off84.i.i = add i8 %tmp6.i.i, -48 ; <i8> [#uses=1]
- %or.cond.i28.i = icmp ugt i8 %tmp6.off84.i.i, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i, label %else.i.i, label %endif.i.i
-
-else.i.i: ; preds = %foreachbody.i.i
- %tmp6.off83.i.i = add i8 %tmp6.i.i, -97 ; <i8> [#uses=1]
- %or.cond81.i.i = icmp ugt i8 %tmp6.off83.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i, label %else24.i.i, label %if22.i.i
-
-if22.i.i: ; preds = %else.i.i
- %tmp27.i.i = add i8 %tmp6.i.i, -39 ; <i8> [#uses=1]
- br label %endif.i.i
-
-else24.i.i: ; preds = %else.i.i
- %tmp6.off.i.i = add i8 %tmp6.i.i, -65 ; <i8> [#uses=1]
- %or.cond82.i.i = icmp ugt i8 %tmp6.off.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit, label %if39.i.i
-
-if39.i.i: ; preds = %else24.i.i
- %tmp44.i29.i = add i8 %tmp6.i.i, -7 ; <i8> [#uses=1]
- br label %endif.i.i
-
-endif.i.i: ; preds = %if39.i.i, %if22.i.i, %foreachbody.i.i
- %c.0.i30.i = phi i8 [ %tmp27.i.i, %if22.i.i ], [ %tmp44.i29.i, %if39.i.i ], [ %tmp6.i.i, %foreachbody.i.i ] ; <i8> [#uses=1]
- %tmp48.i31.i = zext i8 %c.0.i30.i to i32 ; <i32> [#uses=1]
- %tmp49.i.i = add i32 %tmp48.i31.i, 208 ; <i32> [#uses=1]
- %tmp52.i.i = and i32 %tmp49.i.i, 255 ; <i32> [#uses=2]
- %tmp54.i.i = icmp ult i32 %tmp52.i.i, %radix.0.i ; <i1> [#uses=1]
- br i1 %tmp54.i.i, label %if55.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-if55.i.i: ; preds = %endif.i.i
- %tmp59.i.i = zext i32 %radix.0.i to i64 ; <i64> [#uses=1]
- %tmp61.i.i = mul i64 %value.0.i.i, %tmp59.i.i ; <i64> [#uses=1]
- %tmp64.i.i = zext i32 %tmp52.i.i to i64 ; <i64> [#uses=1]
- %tmp65.i.i = add i64 %tmp61.i.i, %tmp64.i.i ; <i64> [#uses=1]
- %tmp70.i.i = add i32 %foreachkey.0.i.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit: ; preds = %endif.i.i, %else24.i.i, %foreachcond.i.i
- %negval.i = sub i64 0, %value.0.i.i ; <i64> [#uses=1]
- %condtmp.0.i = select i1 %sign.2.i, i64 %negval.i, i64 %value.0.i.i ; <i64> [#uses=1]
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) ; <i8*> [#uses=6]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=1]
- store %tango.net.Socket.IPv4Address.__vtbl* @_D5tango3net6Socket11IPv4Address6__vtblZ, %tango.net.Socket.IPv4Address.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp38 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp38, i8* getelementptr (%tango.net.Socket.IPv4Address* bitcast (%22* @_D5tango3net6Socket11IPv4Address6__initZ to %tango.net.Socket.IPv4Address*), i32 0, i32 2, i32 0), i32 24, i32 1)
- %tmp44 = trunc i64 %condtmp.0.i to i16 ; <i16> [#uses=1]
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp2.i to i32* ; <i32*> [#uses=1]
- store i32 %tmp33, i32* %1
- %tmp7.i = getelementptr i8* %.newclass_gc_alloc, i32 18 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp7.i to i16* ; <i16*> [#uses=1]
- store i16 %tmp44, i16* %2
- %tmp46 = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.Address* ; <%tango.net.Socket.Address*> [#uses=1]
- br label %try
-
-else: ; preds = %entry
- %"this.is_supported@vtbl50" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 42 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.is_supported52 = load i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.is_supported@vtbl50", align 4 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp53 = call fastcc i1 %this.is_supported52(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str132, i32 0, i32 0) }) ; <i1> [#uses=1]
- %tmp59 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl60" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp59, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand62 = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl60", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=2]
- br i1 %tmp53, label %if54, label %else56
-
-if54: ; preds = %else
- call fastcc void %this.sendCommand62(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str133, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp66 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl67" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp66, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse69 = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl67", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse69(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp70, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str134, i32 0, i32 0) })
- %.rettmp70.1.0 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp70, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- %tmp345 = load i32* %.rettmp70.1.0, align 4 ; <i32> [#uses=2]
- %.rettmp70.1.1 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp70, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- %tmp346 = load i8** %.rettmp70.1.1, align 4 ; <i8*> [#uses=2]
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.RegExpT!(char).RegExpT"* ; <%"tango.text.Regex.RegExpT!(char).RegExpT"*> [#uses=3]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"**> [#uses=3]
- store %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__vtblZ, %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp.i, i8* bitcast (%"Act[]"* getelementptr (%"tango.text.Regex.RegExpT!(char).RegExpT"* bitcast (%30* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__initZ to %"tango.text.Regex.RegExpT!(char).RegExpT"*), i32 0, i32 2) to i8*), i32 36, i32 1)
- %tmp2.i.i = call fastcc %"tango.text.Regex.RegExpT!(char).RegExpT"* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT5_ctorMFAabbbZC5tango4text5Regex14__T7RegExpTTaZ7RegExpT(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i, %"byte[]" { i32 33, i8* getelementptr ([34 x i8]* @.str135, i32 0, i32 0) }, i1 false, i1 true, i1 false) ; <%"tango.text.Regex.RegExpT!(char).RegExpT"*> [#uses=0]
- %tmp76 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.test@vtbl" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp76, i32 0, i32 7 ; <i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")**> [#uses=1]
- %r.test = load i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")** %"r.test@vtbl", align 4 ; <i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")*> [#uses=1]
- br label %foreachcond.i.i460
-
-foreachcond.i.i460: ; preds = %foreachnext.i.i, %if54
- %pos.0.i.i = phi i32 [ 0, %if54 ], [ %tmp12.i.i, %foreachnext.i.i ] ; <i32> [#uses=4]
- %tmp3.i.i459 = icmp ult i32 %pos.0.i.i, %tmp345 ; <i1> [#uses=1]
- br i1 %tmp3.i.i459, label %foreachbody.i.i463, label %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit
-
-foreachbody.i.i463: ; preds = %foreachcond.i.i460
- %tmp5.i.i461 = getelementptr i8* %tmp346, i32 %pos.0.i.i ; <i8*> [#uses=1]
- %tmp6.i.i462 = load i8* %tmp5.i.i461 ; <i8> [#uses=1]
- %tmp4.i.i.i = icmp eq i8 %tmp6.i.i462, 10 ; <i1> [#uses=1]
- br i1 %tmp4.i.i.i, label %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit, label %foreachnext.i.i
-
-foreachnext.i.i: ; preds = %foreachbody.i.i463
- %tmp12.i.i = add i32 %pos.0.i.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i460
-
-_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit: ; preds = %foreachbody.i.i463, %foreachcond.i.i460
- %tmp23.i = phi i32 [ %pos.0.i.i, %foreachbody.i.i463 ], [ %tmp345, %foreachcond.i.i460 ] ; <i32> [#uses=1]
- %tmp85 = insertvalue %"byte[]" undef, i32 %tmp23.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp86 = insertvalue %"byte[]" %tmp85, i8* %tmp346, 1 ; <%"byte[]"> [#uses=1]
- %tmp87 = call fastcc i1 %r.test(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i, %"byte[]" %tmp86) ; <i1> [#uses=1]
- br i1 %tmp87, label %endif89, label %if88
-
-if88: ; preds = %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit
- %.newclass_gc_alloc90 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i8*> [#uses=6]
- %vtbl92 = bitcast i8* %.newclass_gc_alloc90 to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl92
- %monitor93 = getelementptr i8* %.newclass_gc_alloc90, i32 4 ; <i8*> [#uses=1]
- %4 = bitcast i8* %monitor93 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %4
- %tmp94 = getelementptr i8* %.newclass_gc_alloc90, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp94, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i549 = getelementptr i8* %.newclass_gc_alloc90, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i549, i8* getelementptr ([4 x i8]* @.str137, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc90 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i550 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" { i32 31, i8* getelementptr ([32 x i8]* @.str136, i32 0, i32 0) }, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp99 = bitcast i8* %.newclass_gc_alloc90 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp99)
- unreachable
-
-endif89: ; preds = %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit
- %tmp102 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 2 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=1]
- %tmp103 = load %tango.net.SocketConduit.SocketConduit** %tmp102 ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp104 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp103, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp105 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp104 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"this.socket_.socket@vtbl106" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp105, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.socket_.socket108 = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"this.socket_.socket@vtbl106", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp109 = call fastcc %tango.net.Socket.Socket* %this.socket_.socket108(%tango.net.SocketConduit.SocketConduit* %tmp103) ; <%tango.net.Socket.Socket*> [#uses=2]
- %tmp110 = getelementptr %tango.net.Socket.Socket* %tmp109, i32 0, i32 0 ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- %tmp111 = load %tango.net.Socket.Socket.__vtbl** %tmp110 ; <%tango.net.Socket.Socket.__vtbl*> [#uses=1]
- %"this.socket_.socket().remoteAddress@vtbl112" = getelementptr %tango.net.Socket.Socket.__vtbl* %tmp111, i32 0, i32 23 ; <%tango.net.Socket.Address* (%tango.net.Socket.Socket*)**> [#uses=1]
- %"this.socket_.socket().remoteAddress114" = load %tango.net.Socket.Address* (%tango.net.Socket.Socket*)** %"this.socket_.socket().remoteAddress@vtbl112", align 4 ; <%tango.net.Socket.Address* (%tango.net.Socket.Socket*)*> [#uses=1]
- %tmp115 = call fastcc %tango.net.Socket.Address* %"this.socket_.socket().remoteAddress114"(%tango.net.Socket.Socket* %tmp109) ; <%tango.net.Socket.Address*> [#uses=1]
- %tmp116 = bitcast %tango.net.Socket.Address* %tmp115 to %object.Object* ; <%object.Object*> [#uses=1]
- %tmp117 = call %object.Object* @_d_dynamic_cast(%object.Object* %tmp116, %object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) nounwind readonly ; <%object.Object*> [#uses=2]
- %tmp118 = bitcast %object.Object* %tmp117 to %tango.net.Socket.IPv4Address* ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %tmp121 = bitcast %object.Object* %tmp117 to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=1]
- %tmp122 = load %tango.net.Socket.IPv4Address.__vtbl** %tmp121 ; <%tango.net.Socket.IPv4Address.__vtbl*> [#uses=1]
- %"remote.addr@vtbl123" = getelementptr %tango.net.Socket.IPv4Address.__vtbl* %tmp122, i32 0, i32 9 ; <i32 (%tango.net.Socket.IPv4Address*)**> [#uses=1]
- %remote.addr125 = load i32 (%tango.net.Socket.IPv4Address*)** %"remote.addr@vtbl123", align 4 ; <i32 (%tango.net.Socket.IPv4Address*)*> [#uses=1]
- %tmp126 = call fastcc i32 %remote.addr125(%tango.net.Socket.IPv4Address* %tmp118) ; <i32> [#uses=1]
- %tmp130 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp130, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp132 = call fastcc %"byte[]" %r.match(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i, i32 1) ; <%"byte[]"> [#uses=2]
- %digits_arg26.i551 = extractvalue %"byte[]" %tmp132, 0 ; <i32> [#uses=3]
- %digits_arg27.i552 = extractvalue %"byte[]" %tmp132, 1 ; <i8*> [#uses=5]
- %tmp4.i.i553 = icmp eq i32 %digits_arg26.i551, 0 ; <i1> [#uses=1]
- br i1 %tmp4.i.i553, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i597, label %forcond.i.i560
-
-forcond.i.i560: ; preds = %forinc.i.i567, %endif89
- %sign.1.i554 = phi i1 [ false, %endif89 ], [ %sign.0.i564, %forinc.i.i567 ] ; <i1> [#uses=4]
- %len.0.i.i555 = phi i32 [ %tmp33.i.i566, %forinc.i.i567 ], [ %digits_arg26.i551, %endif89 ] ; <i32> [#uses=3]
- %p.0.i.i556 = phi i8* [ %tmp30.i.i565, %forinc.i.i567 ], [ %digits_arg27.i552, %endif89 ] ; <i8*> [#uses=6]
- %c.0.in.i.i557 = phi i8* [ %tmp30.i.i565, %forinc.i.i567 ], [ %digits_arg27.i552, %endif89 ] ; <i8*> [#uses=1]
- %c.0.i.i558 = load i8* %c.0.in.i.i557 ; <i8> [#uses=2]
- %tmp8.i.i559 = icmp eq i32 %len.0.i.i555, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i559, label %endfor.i.i571, label %forbody.i.i561
-
-forbody.i.i561: ; preds = %forcond.i.i560
- switch i8 %c.0.i.i558, label %endfor.i.i571 [
- i8 32, label %forinc.i.i567
- i8 9, label %forinc.i.i567
- i8 45, label %if20.i.i562
- i8 43, label %if26.i.i563
- ]
-
-if20.i.i562: ; preds = %forbody.i.i561
- br label %forinc.i.i567
-
-if26.i.i563: ; preds = %forbody.i.i561
- br label %forinc.i.i567
-
-forinc.i.i567: ; preds = %if26.i.i563, %if20.i.i562, %forbody.i.i561, %forbody.i.i561
- %sign.0.i564 = phi i1 [ false, %if26.i.i563 ], [ true, %if20.i.i562 ], [ %sign.1.i554, %forbody.i.i561 ], [ %sign.1.i554, %forbody.i.i561 ] ; <i1> [#uses=1]
- %tmp30.i.i565 = getelementptr i8* %p.0.i.i556, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i566 = add i32 %len.0.i.i555, -1 ; <i32> [#uses=1]
- br label %forcond.i.i560
-
-endfor.i.i571: ; preds = %forbody.i.i561, %forcond.i.i560
- %tmp37.i.i568 = icmp eq i8 %c.0.i.i558, 48 ; <i1> [#uses=1]
- %tmp39.i.i569 = icmp sgt i32 %len.0.i.i555, 1 ; <i1> [#uses=1]
- %or.cond.i.i570 = and i1 %tmp37.i.i568, %tmp39.i.i569 ; <i1> [#uses=1]
- br i1 %or.cond.i.i570, label %if40.i.i575, label %endif41.i.i585
-
-if40.i.i575: ; preds = %endfor.i.i571
- %tmp43.i.i572 = getelementptr i8* %p.0.i.i556, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i573 = load i8* %tmp43.i.i572 ; <i8> [#uses=1]
- %tmp45.i.i574 = zext i8 %tmp44.i.i573 to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i574, label %endif41.i.i585 [
- i32 120, label %case46.i.i577
- i32 88, label %case46.i.i577
- i32 98, label %case51.i.i579
- i32 66, label %case51.i.i579
- i32 111, label %case56.i.i581
- i32 79, label %case56.i.i581
- ]
-
-case46.i.i577: ; preds = %if40.i.i575, %if40.i.i575
- %tmp48.i.i576 = getelementptr i8* %p.0.i.i556, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i585
-
-case51.i.i579: ; preds = %if40.i.i575, %if40.i.i575
- %tmp53.i.i578 = getelementptr i8* %p.0.i.i556, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i585
-
-case56.i.i581: ; preds = %if40.i.i575, %if40.i.i575
- %tmp58.i.i580 = getelementptr i8* %p.0.i.i556, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i585
-
-endif41.i.i585: ; preds = %case56.i.i581, %case51.i.i579, %case46.i.i577, %if40.i.i575, %endfor.i.i571
- %r.0.i.i582 = phi i32 [ 0, %if40.i.i575 ], [ 8, %case56.i.i581 ], [ 2, %case51.i.i579 ], [ 16, %case46.i.i577 ], [ 0, %endfor.i.i571 ] ; <i32> [#uses=2]
- %p.2.i.i583 = phi i8* [ %tmp43.i.i572, %if40.i.i575 ], [ %tmp58.i.i580, %case56.i.i581 ], [ %tmp53.i.i578, %case51.i.i579 ], [ %tmp48.i.i576, %case46.i.i577 ], [ %p.0.i.i556, %endfor.i.i571 ] ; <i8*> [#uses=2]
- %tmp63.i.i584 = icmp eq i32 %r.0.i.i582, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i584, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i597, label %if70.i.i589
-
-if70.i.i589: ; preds = %endif41.i.i585
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i597
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i597: ; preds = %if70.i.i589, %endif41.i.i585, %endif89
- %sign.2.i590 = phi i1 [ false, %endif89 ], [ %sign.1.i554, %if70.i.i589 ], [ %sign.1.i554, %endif41.i.i585 ] ; <i1> [#uses=1]
- %radix.0.i591 = phi i32 [ 0, %endif89 ], [ %r.0.i.i582, %if70.i.i589 ], [ 10, %endif41.i.i585 ] ; <i32> [#uses=2]
- %p.1.i.i592 = phi i8* [ %p.2.i.i583, %if70.i.i589 ], [ %digits_arg27.i552, %endif89 ], [ %p.2.i.i583, %endif41.i.i585 ] ; <i8*> [#uses=1]
- %tmp84.i.i593 = ptrtoint i8* %p.1.i.i592 to i32 ; <i32> [#uses=1]
- %tmp85.i.i594 = ptrtoint i8* %digits_arg27.i552 to i32 ; <i32> [#uses=1]
- %tmp86.i.i595 = sub i32 %tmp84.i.i593, %tmp85.i.i594 ; <i32> [#uses=2]
- %tmp6.i596 = sub i32 %digits_arg26.i551, %tmp86.i.i595 ; <i32> [#uses=1]
- br label %foreachcond.i.i602
-
-foreachcond.i.i602: ; preds = %if55.i.i631, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i597
- %value.0.i.i598 = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i597 ], [ %tmp65.i.i628, %if55.i.i631 ] ; <i64> [#uses=3]
- %foreachkey.0.i.i600 = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i597 ], [ %tmp70.i.i630, %if55.i.i631 ] ; <i32> [#uses=3]
- %tmp3.i.i601 = icmp ult i32 %foreachkey.0.i.i600, %tmp6.i596 ; <i1> [#uses=1]
- br i1 %tmp3.i.i601, label %foreachbody.i.i608, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit635
-
-foreachbody.i.i608: ; preds = %foreachcond.i.i602
- %tmp5.sum.i603 = add i32 %tmp86.i.i595, %foreachkey.0.i.i600 ; <i32> [#uses=1]
- %tmp5.i.i604 = getelementptr i8* %digits_arg27.i552, i32 %tmp5.sum.i603 ; <i8*> [#uses=1]
- %tmp6.i.i605 = load i8* %tmp5.i.i604 ; <i8> [#uses=6]
- %tmp6.off84.i.i606 = add i8 %tmp6.i.i605, -48 ; <i8> [#uses=1]
- %or.cond.i28.i607 = icmp ugt i8 %tmp6.off84.i.i606, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i607, label %else.i.i611, label %endif.i.i624
-
-else.i.i611: ; preds = %foreachbody.i.i608
- %tmp6.off83.i.i609 = add i8 %tmp6.i.i605, -97 ; <i8> [#uses=1]
- %or.cond81.i.i610 = icmp ugt i8 %tmp6.off83.i.i609, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i610, label %else24.i.i616, label %if22.i.i613
-
-if22.i.i613: ; preds = %else.i.i611
- %tmp27.i.i612 = add i8 %tmp6.i.i605, -39 ; <i8> [#uses=1]
- br label %endif.i.i624
-
-else24.i.i616: ; preds = %else.i.i611
- %tmp6.off.i.i614 = add i8 %tmp6.i.i605, -65 ; <i8> [#uses=1]
- %or.cond82.i.i615 = icmp ugt i8 %tmp6.off.i.i614, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i615, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit635, label %if39.i.i618
-
-if39.i.i618: ; preds = %else24.i.i616
- %tmp44.i29.i617 = add i8 %tmp6.i.i605, -7 ; <i8> [#uses=1]
- br label %endif.i.i624
-
-endif.i.i624: ; preds = %if39.i.i618, %if22.i.i613, %foreachbody.i.i608
- %c.0.i30.i619 = phi i8 [ %tmp27.i.i612, %if22.i.i613 ], [ %tmp44.i29.i617, %if39.i.i618 ], [ %tmp6.i.i605, %foreachbody.i.i608 ] ; <i8> [#uses=1]
- %tmp48.i31.i620 = zext i8 %c.0.i30.i619 to i32 ; <i32> [#uses=1]
- %tmp49.i.i621 = add i32 %tmp48.i31.i620, 208 ; <i32> [#uses=1]
- %tmp52.i.i622 = and i32 %tmp49.i.i621, 255 ; <i32> [#uses=2]
- %tmp54.i.i623 = icmp ult i32 %tmp52.i.i622, %radix.0.i591 ; <i1> [#uses=1]
- br i1 %tmp54.i.i623, label %if55.i.i631, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit635
-
-if55.i.i631: ; preds = %endif.i.i624
- %tmp59.i.i625 = zext i32 %radix.0.i591 to i64 ; <i64> [#uses=1]
- %tmp61.i.i626 = mul i64 %value.0.i.i598, %tmp59.i.i625 ; <i64> [#uses=1]
- %tmp64.i.i627 = zext i32 %tmp52.i.i622 to i64 ; <i64> [#uses=1]
- %tmp65.i.i628 = add i64 %tmp61.i.i626, %tmp64.i.i627 ; <i64> [#uses=1]
- %tmp70.i.i630 = add i32 %foreachkey.0.i.i600, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i602
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit635: ; preds = %endif.i.i624, %else24.i.i616, %foreachcond.i.i602
- %negval.i633 = sub i64 0, %value.0.i.i598 ; <i64> [#uses=1]
- %condtmp.0.i634 = select i1 %sign.2.i590, i64 %negval.i633, i64 %value.0.i.i598 ; <i64> [#uses=1]
- %.newclass_gc_alloc135 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) ; <i8*> [#uses=6]
- %vtbl137 = bitcast i8* %.newclass_gc_alloc135 to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=1]
- store %tango.net.Socket.IPv4Address.__vtbl* @_D5tango3net6Socket11IPv4Address6__vtblZ, %tango.net.Socket.IPv4Address.__vtbl** %vtbl137
- %monitor138 = getelementptr i8* %.newclass_gc_alloc135, i32 4 ; <i8*> [#uses=1]
- %5 = bitcast i8* %monitor138 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %5
- %tmp139 = getelementptr i8* %.newclass_gc_alloc135, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp139, i8* getelementptr (%tango.net.Socket.IPv4Address* bitcast (%22* @_D5tango3net6Socket11IPv4Address6__initZ to %tango.net.Socket.IPv4Address*), i32 0, i32 2, i32 0), i32 24, i32 1)
- %tmp145 = trunc i64 %condtmp.0.i634 to i16 ; <i16> [#uses=1]
- %tmp2.i636 = getelementptr i8* %.newclass_gc_alloc135, i32 20 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp2.i636 to i32* ; <i32*> [#uses=1]
- store i32 %tmp126, i32* %6
- %tmp7.i637 = getelementptr i8* %.newclass_gc_alloc135, i32 18 ; <i8*> [#uses=1]
- %7 = bitcast i8* %tmp7.i637 to i16* ; <i16*> [#uses=1]
- store i16 %tmp145, i16* %7
- %tmp147 = bitcast i8* %.newclass_gc_alloc135 to %tango.net.Socket.Address* ; <%tango.net.Socket.Address*> [#uses=1]
- br label %try
-
-else56: ; preds = %else
- call fastcc void %this.sendCommand62(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str138, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp157 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl158" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp157, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse160 = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl158", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse160(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp161, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str139, i32 0, i32 0) })
- %.rettmp161.1.0 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp161, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- %tmp = load i32* %.rettmp161.1.0, align 4 ; <i32> [#uses=2]
- %.rettmp161.1.1 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp161, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- %tmp332 = load i8** %.rettmp161.1.1, align 4 ; <i8*> [#uses=2]
- %.newclass_gc_alloc.i638 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i639 = bitcast i8* %.newclass_gc_alloc.i638 to %"tango.text.Regex.RegExpT!(char).RegExpT"* ; <%"tango.text.Regex.RegExpT!(char).RegExpT"*> [#uses=9]
- %vtbl.i640 = bitcast i8* %.newclass_gc_alloc.i638 to %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"**> [#uses=9]
- store %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__vtblZ, %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640
- %monitor.i641 = getelementptr i8* %.newclass_gc_alloc.i638, i32 4 ; <i8*> [#uses=1]
- %8 = bitcast i8* %monitor.i641 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %8
- %tmp.i642 = getelementptr i8* %.newclass_gc_alloc.i638, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp.i642, i8* bitcast (%"Act[]"* getelementptr (%"tango.text.Regex.RegExpT!(char).RegExpT"* bitcast (%30* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__initZ to %"tango.text.Regex.RegExpT!(char).RegExpT"*), i32 0, i32 2) to i8*), i32 36, i32 1)
- %tmp2.i.i643 = call fastcc %"tango.text.Regex.RegExpT!(char).RegExpT"* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT5_ctorMFAabbbZC5tango4text5Regex14__T7RegExpTTaZ7RegExpT(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, %"byte[]" { i32 53, i8* getelementptr ([54 x i8]* @.str140, i32 0, i32 0) }, i1 false, i1 true, i1 false) ; <%"tango.text.Regex.RegExpT!(char).RegExpT"*> [#uses=0]
- %tmp168 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.test@vtbl169" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp168, i32 0, i32 7 ; <i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")**> [#uses=1]
- %r.test171 = load i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")** %"r.test@vtbl169", align 4 ; <i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")*> [#uses=1]
- br label %foreachcond.i.i648
-
-foreachcond.i.i648: ; preds = %foreachnext.i.i655, %else56
- %pos.0.i.i646 = phi i32 [ 0, %else56 ], [ %tmp12.i.i654, %foreachnext.i.i655 ] ; <i32> [#uses=4]
- %tmp3.i.i647 = icmp ult i32 %pos.0.i.i646, %tmp ; <i1> [#uses=1]
- br i1 %tmp3.i.i647, label %foreachbody.i.i652, label %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit658
-
-foreachbody.i.i652: ; preds = %foreachcond.i.i648
- %tmp5.i.i649 = getelementptr i8* %tmp332, i32 %pos.0.i.i646 ; <i8*> [#uses=1]
- %tmp6.i.i650 = load i8* %tmp5.i.i649 ; <i8> [#uses=1]
- %tmp4.i.i.i651 = icmp eq i8 %tmp6.i.i650, 10 ; <i1> [#uses=1]
- br i1 %tmp4.i.i.i651, label %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit658, label %foreachnext.i.i655
-
-foreachnext.i.i655: ; preds = %foreachbody.i.i652
- %tmp12.i.i654 = add i32 %pos.0.i.i646, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i648
-
-_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit658: ; preds = %foreachbody.i.i652, %foreachcond.i.i648
- %tmp23.i657 = phi i32 [ %pos.0.i.i646, %foreachbody.i.i652 ], [ %tmp, %foreachcond.i.i648 ] ; <i32> [#uses=1]
- %tmp180 = insertvalue %"byte[]" undef, i32 %tmp23.i657, 0 ; <%"byte[]"> [#uses=1]
- %tmp181 = insertvalue %"byte[]" %tmp180, i8* %tmp332, 1 ; <%"byte[]"> [#uses=1]
- %tmp182 = call fastcc i1 %r.test171(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, %"byte[]" %tmp181) ; <i1> [#uses=1]
- br i1 %tmp182, label %endif184, label %if183
-
-if183: ; preds = %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit658
- %.newclass_gc_alloc185 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i8*> [#uses=6]
- %vtbl187 = bitcast i8* %.newclass_gc_alloc185 to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl187
- %monitor188 = getelementptr i8* %.newclass_gc_alloc185, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %monitor188 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %9
- %tmp189 = getelementptr i8* %.newclass_gc_alloc185, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp189, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i659 = getelementptr i8* %.newclass_gc_alloc185, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i659, i8* getelementptr ([4 x i8]* @.str142, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i660 = bitcast i8* %.newclass_gc_alloc185 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i661 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i660, %"byte[]" { i32 31, i8* getelementptr ([32 x i8]* @.str141, i32 0, i32 0) }, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp194 = bitcast i8* %.newclass_gc_alloc185 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp194)
- unreachable
-
-endif184: ; preds = %_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk.exit658
- %tmp199 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl200" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp199, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match202 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl200", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp203 = call fastcc %"byte[]" %r.match202(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, i32 1) ; <%"byte[]"> [#uses=2]
- %.len = extractvalue %"byte[]" %tmp203, 0 ; <i32> [#uses=3]
- %tmp204 = add i32 %.len, 1 ; <i32> [#uses=4]
- %.nongc_mem = alloca i8, i32 %tmp204, align 1 ; <i8*> [#uses=3]
- %.ptr205 = extractvalue %"byte[]" %tmp203, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* %.ptr205, i32 %.len, i32 1)
- %tmp207 = getelementptr i8* %.nongc_mem, i32 %.len ; <i8*> [#uses=1]
- store i8 46, i8* %tmp207, align 1
- %tmp210 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl211" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp210, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match213 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl211", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp214 = call fastcc %"byte[]" %r.match213(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, i32 2) ; <%"byte[]"> [#uses=2]
- %.len215 = extractvalue %"byte[]" %tmp214, 0 ; <i32> [#uses=2]
- %tmp216 = add i32 %tmp204, %.len215 ; <i32> [#uses=4]
- %.nongc_mem662 = alloca i8, i32 %tmp216, align 1 ; <i8*> [#uses=3]
- %.ptr218 = extractvalue %"byte[]" %tmp214, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.nongc_mem662, i8* %.nongc_mem, i32 %tmp204, i32 1)
- %tmp220 = getelementptr i8* %.nongc_mem662, i32 %tmp204 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp220, i8* %.ptr218, i32 %.len215, i32 1)
- %tmp222 = add i32 %tmp216, 1 ; <i32> [#uses=4]
- %.nongc_mem663 = alloca i8, i32 %tmp222, align 1 ; <i8*> [#uses=3]
- call void @llvm.memcpy.i32(i8* %.nongc_mem663, i8* %.nongc_mem662, i32 %tmp216, i32 1)
- %tmp225 = getelementptr i8* %.nongc_mem663, i32 %tmp216 ; <i8*> [#uses=1]
- store i8 46, i8* %tmp225, align 1
- %tmp228 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl229" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp228, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match231 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl229", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp232 = call fastcc %"byte[]" %r.match231(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, i32 3) ; <%"byte[]"> [#uses=2]
- %.len233 = extractvalue %"byte[]" %tmp232, 0 ; <i32> [#uses=2]
- %tmp234 = add i32 %tmp222, %.len233 ; <i32> [#uses=4]
- %.nongc_mem664 = alloca i8, i32 %tmp234, align 1 ; <i8*> [#uses=3]
- %.ptr236 = extractvalue %"byte[]" %tmp232, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.nongc_mem664, i8* %.nongc_mem663, i32 %tmp222, i32 1)
- %tmp238 = getelementptr i8* %.nongc_mem664, i32 %tmp222 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp238, i8* %.ptr236, i32 %.len233, i32 1)
- %tmp240 = add i32 %tmp234, 1 ; <i32> [#uses=4]
- %.nongc_mem665 = alloca i8, i32 %tmp240, align 1 ; <i8*> [#uses=3]
- call void @llvm.memcpy.i32(i8* %.nongc_mem665, i8* %.nongc_mem664, i32 %tmp234, i32 1)
- %tmp243 = getelementptr i8* %.nongc_mem665, i32 %tmp234 ; <i8*> [#uses=1]
- store i8 46, i8* %tmp243, align 1
- %tmp246 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl247" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp246, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match249 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl247", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp250 = call fastcc %"byte[]" %r.match249(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, i32 4) ; <%"byte[]"> [#uses=2]
- %.len251 = extractvalue %"byte[]" %tmp250, 0 ; <i32> [#uses=2]
- %tmp252 = add i32 %tmp240, %.len251 ; <i32> [#uses=2]
- %.gc_mem253 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp252) ; <i8*> [#uses=3]
- %.ptr254 = extractvalue %"byte[]" %tmp250, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.gc_mem253, i8* %.nongc_mem665, i32 %tmp240, i32 1)
- %tmp256 = getelementptr i8* %.gc_mem253, i32 %tmp240 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp256, i8* %.ptr254, i32 %.len251, i32 1)
- %tmp263 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl264" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp263, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match266 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl264", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp267 = call fastcc %"byte[]" %r.match266(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, i32 5) ; <%"byte[]"> [#uses=2]
- %digits_arg26.i464 = extractvalue %"byte[]" %tmp267, 0 ; <i32> [#uses=3]
- %digits_arg27.i465 = extractvalue %"byte[]" %tmp267, 1 ; <i8*> [#uses=5]
- %tmp4.i.i466 = icmp eq i32 %digits_arg26.i464, 0 ; <i1> [#uses=1]
- br i1 %tmp4.i.i466, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i510, label %forcond.i.i473
-
-forcond.i.i473: ; preds = %forinc.i.i480, %endif184
- %sign.1.i467 = phi i1 [ false, %endif184 ], [ %sign.0.i477, %forinc.i.i480 ] ; <i1> [#uses=4]
- %len.0.i.i468 = phi i32 [ %tmp33.i.i479, %forinc.i.i480 ], [ %digits_arg26.i464, %endif184 ] ; <i32> [#uses=3]
- %p.0.i.i469 = phi i8* [ %tmp30.i.i478, %forinc.i.i480 ], [ %digits_arg27.i465, %endif184 ] ; <i8*> [#uses=6]
- %c.0.in.i.i470 = phi i8* [ %tmp30.i.i478, %forinc.i.i480 ], [ %digits_arg27.i465, %endif184 ] ; <i8*> [#uses=1]
- %c.0.i.i471 = load i8* %c.0.in.i.i470 ; <i8> [#uses=2]
- %tmp8.i.i472 = icmp eq i32 %len.0.i.i468, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i472, label %endfor.i.i484, label %forbody.i.i474
-
-forbody.i.i474: ; preds = %forcond.i.i473
- switch i8 %c.0.i.i471, label %endfor.i.i484 [
- i8 32, label %forinc.i.i480
- i8 9, label %forinc.i.i480
- i8 45, label %if20.i.i475
- i8 43, label %if26.i.i476
- ]
-
-if20.i.i475: ; preds = %forbody.i.i474
- br label %forinc.i.i480
-
-if26.i.i476: ; preds = %forbody.i.i474
- br label %forinc.i.i480
-
-forinc.i.i480: ; preds = %if26.i.i476, %if20.i.i475, %forbody.i.i474, %forbody.i.i474
- %sign.0.i477 = phi i1 [ false, %if26.i.i476 ], [ true, %if20.i.i475 ], [ %sign.1.i467, %forbody.i.i474 ], [ %sign.1.i467, %forbody.i.i474 ] ; <i1> [#uses=1]
- %tmp30.i.i478 = getelementptr i8* %p.0.i.i469, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i479 = add i32 %len.0.i.i468, -1 ; <i32> [#uses=1]
- br label %forcond.i.i473
-
-endfor.i.i484: ; preds = %forbody.i.i474, %forcond.i.i473
- %tmp37.i.i481 = icmp eq i8 %c.0.i.i471, 48 ; <i1> [#uses=1]
- %tmp39.i.i482 = icmp sgt i32 %len.0.i.i468, 1 ; <i1> [#uses=1]
- %or.cond.i.i483 = and i1 %tmp37.i.i481, %tmp39.i.i482 ; <i1> [#uses=1]
- br i1 %or.cond.i.i483, label %if40.i.i488, label %endif41.i.i498
-
-if40.i.i488: ; preds = %endfor.i.i484
- %tmp43.i.i485 = getelementptr i8* %p.0.i.i469, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i486 = load i8* %tmp43.i.i485 ; <i8> [#uses=1]
- %tmp45.i.i487 = zext i8 %tmp44.i.i486 to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i487, label %endif41.i.i498 [
- i32 120, label %case46.i.i490
- i32 88, label %case46.i.i490
- i32 98, label %case51.i.i492
- i32 66, label %case51.i.i492
- i32 111, label %case56.i.i494
- i32 79, label %case56.i.i494
- ]
-
-case46.i.i490: ; preds = %if40.i.i488, %if40.i.i488
- %tmp48.i.i489 = getelementptr i8* %p.0.i.i469, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i498
-
-case51.i.i492: ; preds = %if40.i.i488, %if40.i.i488
- %tmp53.i.i491 = getelementptr i8* %p.0.i.i469, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i498
-
-case56.i.i494: ; preds = %if40.i.i488, %if40.i.i488
- %tmp58.i.i493 = getelementptr i8* %p.0.i.i469, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i498
-
-endif41.i.i498: ; preds = %case56.i.i494, %case51.i.i492, %case46.i.i490, %if40.i.i488, %endfor.i.i484
- %r.0.i.i495 = phi i32 [ 0, %if40.i.i488 ], [ 8, %case56.i.i494 ], [ 2, %case51.i.i492 ], [ 16, %case46.i.i490 ], [ 0, %endfor.i.i484 ] ; <i32> [#uses=2]
- %p.2.i.i496 = phi i8* [ %tmp43.i.i485, %if40.i.i488 ], [ %tmp58.i.i493, %case56.i.i494 ], [ %tmp53.i.i491, %case51.i.i492 ], [ %tmp48.i.i489, %case46.i.i490 ], [ %p.0.i.i469, %endfor.i.i484 ] ; <i8*> [#uses=2]
- %tmp63.i.i497 = icmp eq i32 %r.0.i.i495, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i497, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i510, label %if70.i.i502
-
-if70.i.i502: ; preds = %endif41.i.i498
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i510
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i510: ; preds = %if70.i.i502, %endif41.i.i498, %endif184
- %sign.2.i503 = phi i1 [ false, %endif184 ], [ %sign.1.i467, %if70.i.i502 ], [ %sign.1.i467, %endif41.i.i498 ] ; <i1> [#uses=1]
- %radix.0.i504 = phi i32 [ 0, %endif184 ], [ %r.0.i.i495, %if70.i.i502 ], [ 10, %endif41.i.i498 ] ; <i32> [#uses=2]
- %p.1.i.i505 = phi i8* [ %p.2.i.i496, %if70.i.i502 ], [ %digits_arg27.i465, %endif184 ], [ %p.2.i.i496, %endif41.i.i498 ] ; <i8*> [#uses=1]
- %tmp84.i.i506 = ptrtoint i8* %p.1.i.i505 to i32 ; <i32> [#uses=1]
- %tmp85.i.i507 = ptrtoint i8* %digits_arg27.i465 to i32 ; <i32> [#uses=1]
- %tmp86.i.i508 = sub i32 %tmp84.i.i506, %tmp85.i.i507 ; <i32> [#uses=2]
- %tmp6.i509 = sub i32 %digits_arg26.i464, %tmp86.i.i508 ; <i32> [#uses=1]
- br label %foreachcond.i.i515
-
-foreachcond.i.i515: ; preds = %if55.i.i544, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i510
- %value.0.i.i511 = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i510 ], [ %tmp65.i.i541, %if55.i.i544 ] ; <i64> [#uses=3]
- %foreachkey.0.i.i513 = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i510 ], [ %tmp70.i.i543, %if55.i.i544 ] ; <i32> [#uses=3]
- %tmp3.i.i514 = icmp ult i32 %foreachkey.0.i.i513, %tmp6.i509 ; <i1> [#uses=1]
- br i1 %tmp3.i.i514, label %foreachbody.i.i521, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit548
-
-foreachbody.i.i521: ; preds = %foreachcond.i.i515
- %tmp5.sum.i516 = add i32 %tmp86.i.i508, %foreachkey.0.i.i513 ; <i32> [#uses=1]
- %tmp5.i.i517 = getelementptr i8* %digits_arg27.i465, i32 %tmp5.sum.i516 ; <i8*> [#uses=1]
- %tmp6.i.i518 = load i8* %tmp5.i.i517 ; <i8> [#uses=6]
- %tmp6.off84.i.i519 = add i8 %tmp6.i.i518, -48 ; <i8> [#uses=1]
- %or.cond.i28.i520 = icmp ugt i8 %tmp6.off84.i.i519, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i520, label %else.i.i524, label %endif.i.i537
-
-else.i.i524: ; preds = %foreachbody.i.i521
- %tmp6.off83.i.i522 = add i8 %tmp6.i.i518, -97 ; <i8> [#uses=1]
- %or.cond81.i.i523 = icmp ugt i8 %tmp6.off83.i.i522, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i523, label %else24.i.i529, label %if22.i.i526
-
-if22.i.i526: ; preds = %else.i.i524
- %tmp27.i.i525 = add i8 %tmp6.i.i518, -39 ; <i8> [#uses=1]
- br label %endif.i.i537
-
-else24.i.i529: ; preds = %else.i.i524
- %tmp6.off.i.i527 = add i8 %tmp6.i.i518, -65 ; <i8> [#uses=1]
- %or.cond82.i.i528 = icmp ugt i8 %tmp6.off.i.i527, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i528, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit548, label %if39.i.i531
-
-if39.i.i531: ; preds = %else24.i.i529
- %tmp44.i29.i530 = add i8 %tmp6.i.i518, -7 ; <i8> [#uses=1]
- br label %endif.i.i537
-
-endif.i.i537: ; preds = %if39.i.i531, %if22.i.i526, %foreachbody.i.i521
- %c.0.i30.i532 = phi i8 [ %tmp27.i.i525, %if22.i.i526 ], [ %tmp44.i29.i530, %if39.i.i531 ], [ %tmp6.i.i518, %foreachbody.i.i521 ] ; <i8> [#uses=1]
- %tmp48.i31.i533 = zext i8 %c.0.i30.i532 to i32 ; <i32> [#uses=1]
- %tmp49.i.i534 = add i32 %tmp48.i31.i533, 208 ; <i32> [#uses=1]
- %tmp52.i.i535 = and i32 %tmp49.i.i534, 255 ; <i32> [#uses=2]
- %tmp54.i.i536 = icmp ult i32 %tmp52.i.i535, %radix.0.i504 ; <i1> [#uses=1]
- br i1 %tmp54.i.i536, label %if55.i.i544, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit548
-
-if55.i.i544: ; preds = %endif.i.i537
- %tmp59.i.i538 = zext i32 %radix.0.i504 to i64 ; <i64> [#uses=1]
- %tmp61.i.i539 = mul i64 %value.0.i.i511, %tmp59.i.i538 ; <i64> [#uses=1]
- %tmp64.i.i540 = zext i32 %tmp52.i.i535 to i64 ; <i64> [#uses=1]
- %tmp65.i.i541 = add i64 %tmp61.i.i539, %tmp64.i.i540 ; <i64> [#uses=1]
- %tmp70.i.i543 = add i32 %foreachkey.0.i.i513, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i515
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit548: ; preds = %endif.i.i537, %else24.i.i529, %foreachcond.i.i515
- %negval.i546 = sub i64 0, %value.0.i.i511 ; <i64> [#uses=1]
- %condtmp.0.i547 = select i1 %sign.2.i503, i64 %negval.i546, i64 %value.0.i.i511 ; <i64> [#uses=1]
- %tmp269 = trunc i64 %condtmp.0.i547 to i32 ; <i32> [#uses=1]
- %tmp270 = shl i32 %tmp269, 8 ; <i32> [#uses=1]
- %tmp273 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl274" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp273, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match276 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl274", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp277 = call fastcc %"byte[]" %r.match276(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, i32 7) ; <%"byte[]"> [#uses=1]
- %.len278 = extractvalue %"byte[]" %tmp277, 0 ; <i32> [#uses=1]
- %tmp279 = icmp eq i32 %.len278, 0 ; <i1> [#uses=1]
- br i1 %tmp279, label %condend, label %condtrue
-
-condtrue: ; preds = %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit548
- %tmp282 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i640 ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl283" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp282, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match285 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl283", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp286 = call fastcc %"byte[]" %r.match285(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i639, i32 7) ; <%"byte[]"> [#uses=2]
- %digits_arg26.i375 = extractvalue %"byte[]" %tmp286, 0 ; <i32> [#uses=3]
- %digits_arg27.i376 = extractvalue %"byte[]" %tmp286, 1 ; <i8*> [#uses=5]
- %tmp4.i.i377 = icmp eq i32 %digits_arg26.i375, 0 ; <i1> [#uses=1]
- br i1 %tmp4.i.i377, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i421, label %forcond.i.i384
-
-forcond.i.i384: ; preds = %forinc.i.i391, %condtrue
- %sign.1.i378 = phi i1 [ false, %condtrue ], [ %sign.0.i388, %forinc.i.i391 ] ; <i1> [#uses=4]
- %len.0.i.i379 = phi i32 [ %tmp33.i.i390, %forinc.i.i391 ], [ %digits_arg26.i375, %condtrue ] ; <i32> [#uses=3]
- %p.0.i.i380 = phi i8* [ %tmp30.i.i389, %forinc.i.i391 ], [ %digits_arg27.i376, %condtrue ] ; <i8*> [#uses=6]
- %c.0.in.i.i381 = phi i8* [ %tmp30.i.i389, %forinc.i.i391 ], [ %digits_arg27.i376, %condtrue ] ; <i8*> [#uses=1]
- %c.0.i.i382 = load i8* %c.0.in.i.i381 ; <i8> [#uses=2]
- %tmp8.i.i383 = icmp eq i32 %len.0.i.i379, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i383, label %endfor.i.i395, label %forbody.i.i385
-
-forbody.i.i385: ; preds = %forcond.i.i384
- switch i8 %c.0.i.i382, label %endfor.i.i395 [
- i8 32, label %forinc.i.i391
- i8 9, label %forinc.i.i391
- i8 45, label %if20.i.i386
- i8 43, label %if26.i.i387
- ]
-
-if20.i.i386: ; preds = %forbody.i.i385
- br label %forinc.i.i391
-
-if26.i.i387: ; preds = %forbody.i.i385
- br label %forinc.i.i391
-
-forinc.i.i391: ; preds = %if26.i.i387, %if20.i.i386, %forbody.i.i385, %forbody.i.i385
- %sign.0.i388 = phi i1 [ false, %if26.i.i387 ], [ true, %if20.i.i386 ], [ %sign.1.i378, %forbody.i.i385 ], [ %sign.1.i378, %forbody.i.i385 ] ; <i1> [#uses=1]
- %tmp30.i.i389 = getelementptr i8* %p.0.i.i380, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i390 = add i32 %len.0.i.i379, -1 ; <i32> [#uses=1]
- br label %forcond.i.i384
-
-endfor.i.i395: ; preds = %forbody.i.i385, %forcond.i.i384
- %tmp37.i.i392 = icmp eq i8 %c.0.i.i382, 48 ; <i1> [#uses=1]
- %tmp39.i.i393 = icmp sgt i32 %len.0.i.i379, 1 ; <i1> [#uses=1]
- %or.cond.i.i394 = and i1 %tmp37.i.i392, %tmp39.i.i393 ; <i1> [#uses=1]
- br i1 %or.cond.i.i394, label %if40.i.i399, label %endif41.i.i409
-
-if40.i.i399: ; preds = %endfor.i.i395
- %tmp43.i.i396 = getelementptr i8* %p.0.i.i380, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i397 = load i8* %tmp43.i.i396 ; <i8> [#uses=1]
- %tmp45.i.i398 = zext i8 %tmp44.i.i397 to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i398, label %endif41.i.i409 [
- i32 120, label %case46.i.i401
- i32 88, label %case46.i.i401
- i32 98, label %case51.i.i403
- i32 66, label %case51.i.i403
- i32 111, label %case56.i.i405
- i32 79, label %case56.i.i405
- ]
-
-case46.i.i401: ; preds = %if40.i.i399, %if40.i.i399
- %tmp48.i.i400 = getelementptr i8* %p.0.i.i380, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i409
-
-case51.i.i403: ; preds = %if40.i.i399, %if40.i.i399
- %tmp53.i.i402 = getelementptr i8* %p.0.i.i380, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i409
-
-case56.i.i405: ; preds = %if40.i.i399, %if40.i.i399
- %tmp58.i.i404 = getelementptr i8* %p.0.i.i380, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i409
-
-endif41.i.i409: ; preds = %case56.i.i405, %case51.i.i403, %case46.i.i401, %if40.i.i399, %endfor.i.i395
- %r.0.i.i406 = phi i32 [ 0, %if40.i.i399 ], [ 8, %case56.i.i405 ], [ 2, %case51.i.i403 ], [ 16, %case46.i.i401 ], [ 0, %endfor.i.i395 ] ; <i32> [#uses=2]
- %p.2.i.i407 = phi i8* [ %tmp43.i.i396, %if40.i.i399 ], [ %tmp58.i.i404, %case56.i.i405 ], [ %tmp53.i.i402, %case51.i.i403 ], [ %tmp48.i.i400, %case46.i.i401 ], [ %p.0.i.i380, %endfor.i.i395 ] ; <i8*> [#uses=2]
- %tmp63.i.i408 = icmp eq i32 %r.0.i.i406, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i408, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i421, label %if70.i.i413
-
-if70.i.i413: ; preds = %endif41.i.i409
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i421
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i421: ; preds = %if70.i.i413, %endif41.i.i409, %condtrue
- %sign.2.i414 = phi i1 [ false, %condtrue ], [ %sign.1.i378, %if70.i.i413 ], [ %sign.1.i378, %endif41.i.i409 ] ; <i1> [#uses=1]
- %radix.0.i415 = phi i32 [ 0, %condtrue ], [ %r.0.i.i406, %if70.i.i413 ], [ 10, %endif41.i.i409 ] ; <i32> [#uses=2]
- %p.1.i.i416 = phi i8* [ %p.2.i.i407, %if70.i.i413 ], [ %digits_arg27.i376, %condtrue ], [ %p.2.i.i407, %endif41.i.i409 ] ; <i8*> [#uses=1]
- %tmp84.i.i417 = ptrtoint i8* %p.1.i.i416 to i32 ; <i32> [#uses=1]
- %tmp85.i.i418 = ptrtoint i8* %digits_arg27.i376 to i32 ; <i32> [#uses=1]
- %tmp86.i.i419 = sub i32 %tmp84.i.i417, %tmp85.i.i418 ; <i32> [#uses=2]
- %tmp6.i420 = sub i32 %digits_arg26.i375, %tmp86.i.i419 ; <i32> [#uses=1]
- br label %foreachcond.i.i426
-
-foreachcond.i.i426: ; preds = %if55.i.i455, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i421
- %value.0.i.i422 = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i421 ], [ %tmp65.i.i452, %if55.i.i455 ] ; <i64> [#uses=3]
- %foreachkey.0.i.i424 = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i421 ], [ %tmp70.i.i454, %if55.i.i455 ] ; <i32> [#uses=3]
- %tmp3.i.i425 = icmp ult i32 %foreachkey.0.i.i424, %tmp6.i420 ; <i1> [#uses=1]
- br i1 %tmp3.i.i425, label %foreachbody.i.i432, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit458
-
-foreachbody.i.i432: ; preds = %foreachcond.i.i426
- %tmp5.sum.i427 = add i32 %tmp86.i.i419, %foreachkey.0.i.i424 ; <i32> [#uses=1]
- %tmp5.i.i428 = getelementptr i8* %digits_arg27.i376, i32 %tmp5.sum.i427 ; <i8*> [#uses=1]
- %tmp6.i.i429 = load i8* %tmp5.i.i428 ; <i8> [#uses=6]
- %tmp6.off84.i.i430 = add i8 %tmp6.i.i429, -48 ; <i8> [#uses=1]
- %or.cond.i28.i431 = icmp ugt i8 %tmp6.off84.i.i430, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i431, label %else.i.i435, label %endif.i.i448
-
-else.i.i435: ; preds = %foreachbody.i.i432
- %tmp6.off83.i.i433 = add i8 %tmp6.i.i429, -97 ; <i8> [#uses=1]
- %or.cond81.i.i434 = icmp ugt i8 %tmp6.off83.i.i433, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i434, label %else24.i.i440, label %if22.i.i437
-
-if22.i.i437: ; preds = %else.i.i435
- %tmp27.i.i436 = add i8 %tmp6.i.i429, -39 ; <i8> [#uses=1]
- br label %endif.i.i448
-
-else24.i.i440: ; preds = %else.i.i435
- %tmp6.off.i.i438 = add i8 %tmp6.i.i429, -65 ; <i8> [#uses=1]
- %or.cond82.i.i439 = icmp ugt i8 %tmp6.off.i.i438, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i439, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit458, label %if39.i.i442
-
-if39.i.i442: ; preds = %else24.i.i440
- %tmp44.i29.i441 = add i8 %tmp6.i.i429, -7 ; <i8> [#uses=1]
- br label %endif.i.i448
-
-endif.i.i448: ; preds = %if39.i.i442, %if22.i.i437, %foreachbody.i.i432
- %c.0.i30.i443 = phi i8 [ %tmp27.i.i436, %if22.i.i437 ], [ %tmp44.i29.i441, %if39.i.i442 ], [ %tmp6.i.i429, %foreachbody.i.i432 ] ; <i8> [#uses=1]
- %tmp48.i31.i444 = zext i8 %c.0.i30.i443 to i32 ; <i32> [#uses=1]
- %tmp49.i.i445 = add i32 %tmp48.i31.i444, 208 ; <i32> [#uses=1]
- %tmp52.i.i446 = and i32 %tmp49.i.i445, 255 ; <i32> [#uses=2]
- %tmp54.i.i447 = icmp ult i32 %tmp52.i.i446, %radix.0.i415 ; <i1> [#uses=1]
- br i1 %tmp54.i.i447, label %if55.i.i455, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit458
-
-if55.i.i455: ; preds = %endif.i.i448
- %tmp59.i.i449 = zext i32 %radix.0.i415 to i64 ; <i64> [#uses=1]
- %tmp61.i.i450 = mul i64 %value.0.i.i422, %tmp59.i.i449 ; <i64> [#uses=1]
- %tmp64.i.i451 = zext i32 %tmp52.i.i446 to i64 ; <i64> [#uses=1]
- %tmp65.i.i452 = add i64 %tmp61.i.i450, %tmp64.i.i451 ; <i64> [#uses=1]
- %tmp70.i.i454 = add i32 %foreachkey.0.i.i424, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i426
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit458: ; preds = %endif.i.i448, %else24.i.i440, %foreachcond.i.i426
- %negval.i456 = sub i64 0, %value.0.i.i422 ; <i64> [#uses=1]
- %condtmp.0.i457 = select i1 %sign.2.i414, i64 %negval.i456, i64 %value.0.i.i422 ; <i64> [#uses=1]
- %tmp288 = trunc i64 %condtmp.0.i457 to i32 ; <i32> [#uses=1]
- br label %condend
-
-condend: ; preds = %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit458, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit548
- %condtmp.0 = phi i32 [ %tmp288, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit458 ], [ 0, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit548 ] ; <i32> [#uses=1]
- %tmp290 = add i32 %tmp270, %condtmp.0 ; <i32> [#uses=1]
- %.newclass_gc_alloc291 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket11IPv4Address7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc292 = bitcast i8* %.newclass_gc_alloc291 to %tango.net.Socket.IPv4Address* ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %vtbl293 = bitcast i8* %.newclass_gc_alloc291 to %tango.net.Socket.IPv4Address.__vtbl** ; <%tango.net.Socket.IPv4Address.__vtbl**> [#uses=1]
- store %tango.net.Socket.IPv4Address.__vtbl* @_D5tango3net6Socket11IPv4Address6__vtblZ, %tango.net.Socket.IPv4Address.__vtbl** %vtbl293
- %monitor294 = getelementptr i8* %.newclass_gc_alloc291, i32 4 ; <i8*> [#uses=1]
- %10 = bitcast i8* %monitor294 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %10
- %tmp295 = getelementptr i8* %.newclass_gc_alloc291, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp295, i8* getelementptr (%tango.net.Socket.IPv4Address* bitcast (%22* @_D5tango3net6Socket11IPv4Address6__initZ to %tango.net.Socket.IPv4Address*), i32 0, i32 2, i32 0), i32 24, i32 1)
- %insert = insertvalue %"byte[]" undef, i32 %tmp252, 0 ; <%"byte[]"> [#uses=1]
- %insert327 = insertvalue %"byte[]" %insert, i8* %.gc_mem253, 1 ; <%"byte[]"> [#uses=1]
- %tmp301 = call fastcc %tango.net.Socket.IPv4Address* @_D5tango3net6Socket11IPv4Address5_ctorMFAaiZC5tango3net6Socket11IPv4Address(%tango.net.Socket.IPv4Address* %.newclass_gc292, %"byte[]" %insert327, i32 %tmp290) ; <%tango.net.Socket.IPv4Address*> [#uses=1]
- %tmp302 = bitcast %tango.net.Socket.IPv4Address* %tmp301 to %tango.net.Socket.Address* ; <%tango.net.Socket.Address*> [#uses=1]
- br label %try
-
-try: ; preds = %condend, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit635, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
- %connect_to.0 = phi %tango.net.Socket.Address* [ %tmp46, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit ], [ %tmp147, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit635 ], [ %tmp302, %condend ] ; <%tango.net.Socket.Address*> [#uses=3]
- %.newclass_gc_alloc304 = invoke noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net13SocketConduit13SocketConduit7__ClassZ)
- to label %postinvoke unwind label %landingpad ; <i8*> [#uses=5]
-
-postinvoke: ; preds = %try
- %.newclass_gc305 = bitcast i8* %.newclass_gc_alloc304 to %tango.net.SocketConduit.SocketConduit* ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %vtbl306 = bitcast i8* %.newclass_gc_alloc304 to %tango.net.SocketConduit.SocketConduit.__vtbl** ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=2]
- store %tango.net.SocketConduit.SocketConduit.__vtbl* @_D5tango3net13SocketConduit13SocketConduit6__vtblZ, %tango.net.SocketConduit.SocketConduit.__vtbl** %vtbl306
- %monitor307 = getelementptr i8* %.newclass_gc_alloc304, i32 4 ; <i8*> [#uses=1]
- %11 = bitcast i8* %monitor307 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %11
- %tmp308 = getelementptr i8* %.newclass_gc_alloc304, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp308, i8* bitcast (%15** getelementptr (%tango.net.SocketConduit.SocketConduit* bitcast (%23* @_D5tango3net13SocketConduit13SocketConduit6__initZ to %tango.net.SocketConduit.SocketConduit*), i32 0, i32 2) to i8*), i32 40, i32 1)
- %tmp1.i.i.i = getelementptr i8* %.newclass_gc_alloc304, i32 28 ; <i8*> [#uses=1]
- %12 = bitcast i8* %tmp1.i.i.i to %tango.net.Socket.Socket** ; <%tango.net.Socket.Socket**> [#uses=1]
- %.newclass_gc_alloc.i.i.i374 = invoke noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket6Socket7__ClassZ)
- to label %.newclass_gc_alloc.i.i.i.noexc unwind label %landingpad ; <i8*> [#uses=7]
-
-.newclass_gc_alloc.i.i.i.noexc: ; preds = %postinvoke
- %.newclass_gc.i.i.i = bitcast i8* %.newclass_gc_alloc.i.i.i374 to %tango.net.Socket.Socket* ; <%tango.net.Socket.Socket*> [#uses=2]
- %vtbl.i.i.i = bitcast i8* %.newclass_gc_alloc.i.i.i374 to %tango.net.Socket.Socket.__vtbl** ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- store %tango.net.Socket.Socket.__vtbl* @_D5tango3net6Socket6Socket6__vtblZ, %tango.net.Socket.Socket.__vtbl** %vtbl.i.i.i
- %monitor.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i374, i32 4 ; <i8*> [#uses=1]
- %13 = bitcast i8* %monitor.i.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %13
- %tmp2.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i374, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i.i.i, i8* bitcast (i32* getelementptr (%tango.net.Socket.Socket* bitcast (%25* @_D5tango3net6Socket6Socket6__initZ to %tango.net.Socket.Socket*), i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp1.i.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i374, i32 12 ; <i8*> [#uses=1]
- %14 = bitcast i8* %tmp1.i.i.i.i to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %14
- %tmp4.i.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i374, i32 16 ; <i8*> [#uses=1]
- %15 = bitcast i8* %tmp4.i.i.i.i to i32* ; <i32*> [#uses=1]
- store i32 2, i32* %15
- %tmp7.i.i.i.i = getelementptr i8* %.newclass_gc_alloc.i.i.i374, i32 20 ; <i8*> [#uses=1]
- %16 = bitcast i8* %tmp7.i.i.i.i to i32* ; <i32*> [#uses=1]
- store i32 6, i32* %16
- invoke fastcc void @_D5tango3net6Socket6Socket10initializeMFT5tango3net6Socket8socket_tZv(%tango.net.Socket.Socket* %.newclass_gc.i.i.i, i32 -1)
- to label %_D5tango3net13SocketConduit13SocketConduit5_ctorMFZC5tango3net13SocketConduit13SocketConduit.exit unwind label %landingpad
-
-_D5tango3net13SocketConduit13SocketConduit5_ctorMFZC5tango3net13SocketConduit13SocketConduit.exit: ; preds = %.newclass_gc_alloc.i.i.i.noexc
- store %tango.net.Socket.Socket* %.newclass_gc.i.i.i, %tango.net.Socket.Socket** %12
- %tmp316 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %vtbl306 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"sock.connect@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp316, i32 0, i32 18 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)**> [#uses=1]
- %sock.connect = load %tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)** %"sock.connect@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.SocketConduit.SocketConduit*, %tango.net.Socket.Address*)*> [#uses=1]
- %tmp320 = invoke fastcc %tango.net.SocketConduit.SocketConduit* %sock.connect(%tango.net.SocketConduit.SocketConduit* %.newclass_gc305, %tango.net.Socket.Address* %connect_to.0)
- to label %postinvoke319 unwind label %landingpad ; <%tango.net.SocketConduit.SocketConduit*> [#uses=0]
-
-postinvoke319: ; preds = %_D5tango3net13SocketConduit13SocketConduit5_ctorMFZC5tango3net13SocketConduit13SocketConduit.exit
- %.tmp323 = bitcast %tango.net.Socket.Address* %connect_to.0 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp323)
- ret %tango.net.SocketConduit.SocketConduit* %.newclass_gc305
-
-landingpad: ; preds = %_D5tango3net13SocketConduit13SocketConduit5_ctorMFZC5tango3net13SocketConduit13SocketConduit.exit, %.newclass_gc_alloc.i.i.i.noexc, %postinvoke, %try
- %17 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %18 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %17, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- %.tmp = bitcast %tango.net.Socket.Address* %connect_to.0 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp)
- call void @_d_eh_resume_unwind(i8* %17)
- unreachable
-}
-
-define fastcc i1 @_D5tango3net3ftp9FtpClient13FTPConnection11isSupportedMFAaZb(%tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg, %"byte[]" %command_arg) {
-entry:
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp2 ; <i32> [#uses=2]
- %tmp3 = icmp eq i32 %.len, 0 ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %endif
-
-if: ; preds = %entry
- ret i1 true
-
-endif: ; preds = %entry
- %tmp8 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 1 ; <%tango.net.ftp.FtpClient.FtpFeature**> [#uses=1]
- %.ptr = load %tango.net.ftp.FtpClient.FtpFeature** %tmp8 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=2]
- br label %foreachcond
-
-foreachcond: ; preds = %foreachnext, %endif
- %foreachkey.0 = phi i32 [ 0, %endif ], [ %tmp24, %foreachnext ] ; <i32> [#uses=4]
- %tmp10 = icmp ult i32 %foreachkey.0, %.len ; <i1> [#uses=1]
- br i1 %tmp10, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp1231.0 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.ptr, i32 %foreachkey.0, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp32 = load i32* %tmp1231.0 ; <i32> [#uses=3]
- %tmp1231.1 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.ptr, i32 %foreachkey.0, i32 0, i32 1 ; <i8**> [#uses=1]
- %tmp33 = load i8** %tmp1231.1, align 4 ; <i8*> [#uses=1]
- %s2_arg22.i = extractvalue %"byte[]" %command_arg, 0 ; <i32> [#uses=3]
- %s2_arg23.i = extractvalue %"byte[]" %command_arg, 1 ; <i8*> [#uses=1]
- %tmp4.i = icmp ult i32 %s2_arg22.i, %tmp32 ; <i1> [#uses=1]
- %len.0.i = select i1 %tmp4.i, i32 %s2_arg22.i, i32 %tmp32 ; <i32> [#uses=1]
- %tmp11.i = tail call i32 @strncasecmp(i8* %tmp33, i8* %s2_arg23.i, i32 %len.0.i) ; <i32> [#uses=2]
- %tmp20.i = sub i32 %tmp32, %s2_arg22.i ; <i32> [#uses=1]
- %tmp13.i = icmp eq i32 %tmp11.i, 0 ; <i1> [#uses=1]
- %tmp20.tmp11.i = select i1 %tmp13.i, i32 %tmp20.i, i32 %tmp11.i ; <i32> [#uses=1]
- %tmp19 = icmp eq i32 %tmp20.tmp11.i, 0 ; <i1> [#uses=1]
- br i1 %tmp19, label %if20, label %foreachnext
-
-if20: ; preds = %foreachbody
- ret i1 true
-
-foreachnext: ; preds = %foreachbody
- %tmp24 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- ret i1 false
-}
-
-define fastcc i1 @_D5tango3net3ftp9FtpClient13FTPConnection12is_supportedMFAaZb(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %command_arg) {
-entry:
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp2 ; <i32> [#uses=1]
- %tmp3 = icmp eq i32 %.len, 0 ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %endif
-
-if: ; preds = %entry
- ret i1 false
-
-endif: ; preds = %entry
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp5 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.isSupported@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 41 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.isSupported = load i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.isSupported@vtbl", align 4 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp9 = tail call fastcc i1 %this.isSupported(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %command_arg) ; <i1> [#uses=1]
- ret i1 %tmp9
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection17prepareDataSocketMFKC5tango3net13SocketConduit13SocketConduitZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit** nocapture %data_arg) {
-entry:
- %tv.i = alloca %tango.net.Socket.timeval, align 8 ; <%tango.net.Socket.timeval*> [#uses=2]
- %.rettmp = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp20 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp25 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp53 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 6, i32 0 ; <i32*> [#uses=1]
- %tmp3 = load i32* %tmp2 ; <i32> [#uses=1]
- switch i32 %tmp3, label %default4 [
- i32 0, label %case
- i32 1, label %switchend
- ]
-
-default4: ; preds = %entry
- %tmp6 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp7 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp6 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 5 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 23, i8* getelementptr ([24 x i8]* @.str146, i32 0, i32 0) })
- br label %case
-
-case: ; preds = %default4, %entry
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket9SocketSet7__ClassZ) ; <i8*> [#uses=8]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.SocketSet* ; <%tango.net.Socket.SocketSet*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.SocketSet.__vtbl** ; <%tango.net.Socket.SocketSet.__vtbl**> [#uses=3]
- store %tango.net.Socket.SocketSet.__vtbl* @_D5tango3net6Socket9SocketSet6__vtblZ, %tango.net.Socket.SocketSet.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp9 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp9, i8* bitcast (i32* getelementptr (%tango.net.Socket.SocketSet* bitcast (%24* @_D5tango3net6Socket9SocketSet6__initZ to %tango.net.Socket.SocketSet*), i32 0, i32 2) to i8*), i32 16, i32 1)
- %1 = bitcast i8* %tmp9 to i32* ; <i32*> [#uses=2]
- store i32 128, i32* %1
- %tmp9.i.i = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp9.i.i to i8** ; <i8**> [#uses=1]
- %.gc_mem.i.i = call noalias i8* @_d_newarrayT(%object.TypeInfo* @_D11TypeInfo_Ag6__initZ, i32 128) ; <i8*> [#uses=1]
- store i8* %.gc_mem.i.i, i8** %2
- %tmp14.i.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp14.i.i to i32* ; <i32*> [#uses=1]
- %tmp17.i.i = load i32* %1 ; <i32> [#uses=1]
- %tmp18.i.i = shl i32 %tmp17.i.i, 3 ; <i32> [#uses=1]
- store i32 %tmp18.i.i, i32* %3
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp)
- to label %postinvoke unwind label %landingpad
-
-postinvoke: ; preds = %case
- %tmp17 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp18 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp17 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp18, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout(%tango.time.Time.Time* noalias nocapture sret %.rettmp20, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke21 unwind label %landingpad
-
-postinvoke21: ; preds = %postinvoke
- %.rettmp20.0 = getelementptr %tango.time.Time.Time* %.rettmp20, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp = load i64* %.rettmp20.0, align 8 ; <i64> [#uses=1]
- %tmp1.i = getelementptr %tango.time.Time.Time* %.rettmp, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i = load i64* %tmp1.i, align 8 ; <i64> [#uses=1]
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp25)
- to label %postinvoke26 unwind label %landingpad
-
-whilebody: ; preds = %postinvoke26
- %tmp32 = load %tango.net.Socket.SocketSet.__vtbl** %vtbl ; <%tango.net.Socket.SocketSet.__vtbl*> [#uses=1]
- %"set.reset@vtbl" = getelementptr %tango.net.Socket.SocketSet.__vtbl* %tmp32, i32 0, i32 10 ; <void (%tango.net.Socket.SocketSet*)**> [#uses=1]
- %set.reset = load void (%tango.net.Socket.SocketSet*)** %"set.reset@vtbl", align 4 ; <void (%tango.net.Socket.SocketSet*)*> [#uses=1]
- invoke fastcc void %set.reset(%tango.net.Socket.SocketSet* %.newclass_gc)
- to label %postinvoke34 unwind label %landingpad
-
-postinvoke26: ; preds = %postinvoke21
- %tmp5.i = add i64 %tmp3.i, %tmp ; <i64> [#uses=1]
- %tmp1.i133 = getelementptr %tango.time.Time.Time* %.rettmp25, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i135 = load i64* %tmp1.i133, align 8 ; <i64> [#uses=1]
- %tmp5.i137 = icmp slt i64 %tmp3.i135, %tmp5.i ; <i1> [#uses=1]
- br i1 %tmp5.i137, label %whilebody, label %endwhile
-
-postinvoke34: ; preds = %whilebody
- %tmp37 = load %tango.net.Socket.SocketSet.__vtbl** %vtbl ; <%tango.net.Socket.SocketSet.__vtbl*> [#uses=1]
- %"set.add@vtbl" = getelementptr %tango.net.Socket.SocketSet.__vtbl* %tmp37, i32 0, i32 12 ; <void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)**> [#uses=1]
- %set.add = load void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)** %"set.add@vtbl", align 4 ; <void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)*> [#uses=1]
- %tmp39 = load %tango.net.SocketConduit.SocketConduit** %data_arg ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp40 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp39, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp41 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp40 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp41, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp44 = invoke fastcc %tango.net.Socket.Socket* %data.socket(%tango.net.SocketConduit.SocketConduit* %tmp39)
- to label %postinvoke43 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=1]
-
-postinvoke43: ; preds = %postinvoke34
- invoke fastcc void %set.add(%tango.net.Socket.SocketSet* %.newclass_gc, %tango.net.Socket.Socket* %tmp44)
- to label %postinvoke45 unwind label %landingpad
-
-postinvoke45: ; preds = %postinvoke43
- %tmp49 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp17 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl50" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp49, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout52 = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl50", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout52(%tango.time.Time.Time* noalias nocapture sret %.rettmp53, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke54 unwind label %landingpad
-
-postinvoke54: ; preds = %postinvoke45
- %.rettmp53.0 = getelementptr %tango.time.Time.Time* %.rettmp53, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp150 = load i64* %.rettmp53.0, align 8 ; <i64> [#uses=2]
- %tmp3.i.i.i = sdiv i64 %tmp150, 10000000 ; <i64> [#uses=1]
- %tmp3.i14.i.i = sdiv i64 %tmp150, 10 ; <i64> [#uses=1]
- %tmp6.i.i = trunc i64 %tmp3.i14.i.i to i32 ; <i32> [#uses=1]
- %tmp7.i.i = urem i32 %tmp6.i.i, 1000000 ; <i32> [#uses=1]
- %tmp7.i = bitcast %tango.net.Socket.timeval* %tv.i to i64* ; <i64*> [#uses=1]
- %4 = shl i64 %tmp3.i.i.i, 32 ; <i64> [#uses=1]
- %5 = zext i32 %tmp7.i.i to i64 ; <i64> [#uses=1]
- %6 = or i64 %5, %4 ; <i64> [#uses=1]
- store i64 %6, i64* %tmp7.i, align 8
- %tmp5.i141142 = invoke fastcc i32 @_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetPS5tango3net6Socket7timevalZi(%tango.net.Socket.SocketSet* %.newclass_gc, %tango.net.Socket.SocketSet* null, %tango.net.Socket.SocketSet* null, %tango.net.Socket.timeval* %tv.i)
- to label %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit unwind label %landingpad ; <i32> [#uses=1]
-
-_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit: ; preds = %postinvoke54
- switch i32 %tmp5.i141142, label %endif [
- i32 -1, label %endwhile
- i32 0, label %endwhile
- ]
-
-endif: ; preds = %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit
- %tmp61 = load %tango.net.SocketConduit.SocketConduit** %data_arg ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp62 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp61, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp63 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp62 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl64" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp63, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket66 = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl64", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp68 = invoke fastcc %tango.net.Socket.Socket* %data.socket66(%tango.net.SocketConduit.SocketConduit* %tmp61)
- to label %postinvoke67 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=2]
-
-postinvoke67: ; preds = %endif
- %tmp69 = getelementptr %tango.net.Socket.Socket* %tmp68, i32 0, i32 0 ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- %tmp70 = load %tango.net.Socket.Socket.__vtbl** %tmp69 ; <%tango.net.Socket.Socket.__vtbl*> [#uses=1]
- %"data.socket().accept@vtbl" = getelementptr %tango.net.Socket.Socket.__vtbl* %tmp70, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.Socket.Socket*)**> [#uses=1]
- %"data.socket().accept" = load %tango.net.Socket.Socket* (%tango.net.Socket.Socket*)** %"data.socket().accept@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.Socket.Socket*)*> [#uses=1]
- %tmp73 = invoke fastcc %tango.net.Socket.Socket* %"data.socket().accept"(%tango.net.Socket.Socket* %tmp68)
- to label %endwhile unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=1]
-
-endwhile: ; preds = %postinvoke67, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit, %postinvoke26
- %new_data.0 = phi %tango.net.Socket.Socket* [ null, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit ], [ null, %postinvoke26 ], [ null, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit ], [ %tmp73, %postinvoke67 ] ; <%tango.net.Socket.Socket*> [#uses=2]
- %tmp76 = icmp eq %tango.net.Socket.Socket* %new_data.0, null ; <i1> [#uses=1]
- br i1 %tmp76, label %if77, label %endif78
-
-if77: ; preds = %endwhile
- %.newclass_gc_alloc80 = invoke noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ)
- to label %postinvoke79 unwind label %landingpad ; <i8*> [#uses=6]
-
-postinvoke79: ; preds = %if77
- %vtbl82 = bitcast i8* %.newclass_gc_alloc80 to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl82
- %monitor83 = getelementptr i8* %.newclass_gc_alloc80, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor83 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp84 = getelementptr i8* %.newclass_gc_alloc80, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp84, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i143 = getelementptr i8* %.newclass_gc_alloc80, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i143, i8* getelementptr ([4 x i8]* @.str148, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i144 = bitcast i8* %.newclass_gc_alloc80 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i145146 = invoke fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i144, %"byte[]" { i32 33, i8* getelementptr ([34 x i8]* @.str147, i32 0, i32 0) }, %object.Exception* null)
- to label %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit unwind label %landingpad ; <%object.Exception*> [#uses=0]
-
-_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit: ; preds = %postinvoke79
- %tmp90 = bitcast i8* %.newclass_gc_alloc80 to %object.Object* ; <%object.Object*> [#uses=1]
- invoke void @_d_throw_exception(%object.Object* %tmp90)
- to label %postinvoke91 unwind label %landingpad
-
-postinvoke91: ; preds = %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit
- unreachable
-
-endif78: ; preds = %endwhile
- %tmp92 = load %tango.net.SocketConduit.SocketConduit** %data_arg ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp93 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp92, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp94 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp93 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl95" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp94, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket97 = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl95", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp99 = invoke fastcc %tango.net.Socket.Socket* %data.socket97(%tango.net.SocketConduit.SocketConduit* %tmp92)
- to label %postinvoke98 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=2]
-
-postinvoke98: ; preds = %endif78
- %tmp100 = getelementptr %tango.net.Socket.Socket* %tmp99, i32 0, i32 0 ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- %tmp101 = load %tango.net.Socket.Socket.__vtbl** %tmp100 ; <%tango.net.Socket.Socket.__vtbl*> [#uses=1]
- %"data.socket().shutdown@vtbl" = getelementptr %tango.net.Socket.Socket.__vtbl* %tmp101, i32 0, i32 16 ; <%tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)**> [#uses=1]
- %"data.socket().shutdown" = load %tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)** %"data.socket().shutdown@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.Socket.Socket*, i32)*> [#uses=1]
- %tmp104 = invoke fastcc %tango.net.Socket.Socket* %"data.socket().shutdown"(%tango.net.Socket.Socket* %tmp99, i32 2)
- to label %postinvoke103 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=0]
-
-postinvoke103: ; preds = %postinvoke98
- %tmp105 = load %tango.net.SocketConduit.SocketConduit** %data_arg ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp106 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp105, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp107 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp106 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.detach@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp107, i32 0, i32 8 ; <void (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.detach = load void (%tango.net.SocketConduit.SocketConduit*)** %"data.detach@vtbl", align 4 ; <void (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- invoke fastcc void %data.detach(%tango.net.SocketConduit.SocketConduit* %tmp105)
- to label %postinvoke109 unwind label %landingpad
-
-postinvoke109: ; preds = %postinvoke103
- %tmp110 = load %tango.net.SocketConduit.SocketConduit** %data_arg ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp111 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp110, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp112 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp111 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl113" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp112, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket115 = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl113", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp117 = invoke fastcc %tango.net.Socket.Socket* %data.socket115(%tango.net.SocketConduit.SocketConduit* %tmp110)
- to label %postinvoke116 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=1]
-
-postinvoke116: ; preds = %postinvoke109
- %tmp118 = getelementptr %tango.net.Socket.Socket* %tmp117, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp120 = getelementptr %tango.net.Socket.Socket* %new_data.0, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp121 = load i32* %tmp120 ; <i32> [#uses=1]
- store i32 %tmp121, i32* %tmp118
- %.tmp123 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp123)
- ret void
-
-landingpad: ; preds = %postinvoke109, %postinvoke103, %postinvoke98, %endif78, %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit, %postinvoke79, %if77, %postinvoke67, %endif, %postinvoke54, %postinvoke45, %postinvoke43, %postinvoke34, %whilebody, %postinvoke21, %postinvoke, %case
- %8 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %9 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %8, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- %.tmp = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp)
- call void @_d_eh_resume_unwind(i8* %8)
- unreachable
-
-switchend: ; preds = %entry
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection17finishDataCommandMFC5tango3net13SocketConduit13SocketConduitZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %data_arg) {
-entry:
- %r = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = bitcast %tango.net.SocketConduit.SocketConduit* %data_arg to %tango.io.device.Conduit.Conduit* ; <%tango.io.device.Conduit.Conduit*> [#uses=1]
- %tmp1.i = bitcast %tango.net.SocketConduit.SocketConduit* %data_arg to %tango.io.device.Conduit.Conduit.__vtbl** ; <%tango.io.device.Conduit.Conduit.__vtbl**> [#uses=1]
- %tmp2.i = load %tango.io.device.Conduit.Conduit.__vtbl** %tmp1.i ; <%tango.io.device.Conduit.Conduit.__vtbl*> [#uses=1]
- %"this.detach@vtbl.i" = getelementptr %tango.io.device.Conduit.Conduit.__vtbl* %tmp2.i, i32 0, i32 8 ; <void (%tango.io.device.Conduit.Conduit*)**> [#uses=1]
- %this.detach.i = load void (%tango.io.device.Conduit.Conduit*)** %"this.detach@vtbl.i", align 4 ; <void (%tango.io.device.Conduit.Conduit*)*> [#uses=1]
- call fastcc void %this.detach.i(%tango.io.device.Conduit.Conduit* %tmp1)
- %tmp3 = getelementptr %tango.net.SocketConduit.SocketConduit* %data_arg, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=1]
- %tmp4 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp3 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.detach@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp4, i32 0, i32 8 ; <void (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.detach = load void (%tango.net.SocketConduit.SocketConduit*)** %"data.detach@vtbl", align 4 ; <void (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %data.detach(%tango.net.SocketConduit.SocketConduit* %data_arg)
- %tmp7 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp8 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp7 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp8, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- %tmp10 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %r, i32 0, i32 0, i32 0 ; <i8*> [#uses=3]
- %tmp11 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp10, i8* %tmp11, i32 12, i32 4)
- %tmp14 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp10, 1 ; <%"byte[]"> [#uses=1]
- %tmp15 = call i32 @_adEq(%"byte[]" %tmp14, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str149, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp16 = icmp eq i32 %tmp15, 0 ; <i1> [#uses=1]
- br i1 %tmp16, label %oror, label %endif
-
-oror: ; preds = %entry
- %tmp19 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp10, 1 ; <%"byte[]"> [#uses=1]
- %tmp20 = call i32 @_adEq(%"byte[]" %tmp19, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str150, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp21 = icmp eq i32 %tmp20, 0 ; <i1> [#uses=1]
- br i1 %tmp21, label %if, label %endif
-
-if: ; preds = %oror
- %tmp24 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp7 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp24, i32 0, i32 5 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 10, i8* getelementptr ([11 x i8]* @.str151, i32 0, i32 0) })
- ret void
-
-endif: ; preds = %oror, %entry
- ret void
-}
-
-define fastcc %tango.net.SocketConduit.SocketConduit* @_D5tango3net3ftp9FtpClient13FTPConnection18processDataCommandMFAaAAaXC5tango3net13SocketConduit13SocketConduit(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %command_arg, %"char[][]" %parameters_arg) {
-entry:
- %data = alloca %tango.net.SocketConduit.SocketConduit*, align 4 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=4]
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=5]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.getDataSocket@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 39 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.getDataSocket = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)** %"this.getDataSocket@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- %tmp4 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.getDataSocket(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
- store %tango.net.SocketConduit.SocketConduit* %tmp4, %tango.net.SocketConduit.SocketConduit** %data
- %tmp10 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp10, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- invoke fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %command_arg, %"char[][]" %parameters_arg)
- to label %postinvoke unwind label %landingpad
-
-postinvoke: ; preds = %entry
- %tmp16 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp16, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke18 unwind label %landingpad
-
-postinvoke18: ; preds = %postinvoke
- %tmp19 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=3]
- %tmp20 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp19, i8* %tmp20, i32 12, i32 4)
- %tmp23 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp19, 1 ; <%"byte[]"> [#uses=1]
- %tmp25 = invoke i32 @_adEq(%"byte[]" %tmp23, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str152, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly
- to label %postinvoke24 unwind label %landingpad ; <i32> [#uses=1]
-
-postinvoke24: ; preds = %postinvoke18
- %tmp26 = icmp eq i32 %tmp25, 0 ; <i1> [#uses=1]
- br i1 %tmp26, label %andand, label %endif
-
-andand: ; preds = %postinvoke24
- %tmp30 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp19, 1 ; <%"byte[]"> [#uses=1]
- %tmp32 = invoke i32 @_adEq(%"byte[]" %tmp30, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str153, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly
- to label %postinvoke31 unwind label %landingpad ; <i32> [#uses=1]
-
-postinvoke31: ; preds = %andand
- %tmp33 = icmp eq i32 %tmp32, 0 ; <i1> [#uses=1]
- br i1 %tmp33, label %if, label %endif
-
-if: ; preds = %postinvoke31
- %tmp37 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp37, i32 0, i32 14 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- invoke fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response)
- to label %endif unwind label %landingpad
-
-endif: ; preds = %if, %postinvoke31, %postinvoke24
- %tmp42 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.prepareDataSocket@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp42, i32 0, i32 43 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit**)**> [#uses=1]
- %this.prepareDataSocket = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit**)** %"this.prepareDataSocket@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit**)*> [#uses=1]
- invoke fastcc void %this.prepareDataSocket(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit** %data)
- to label %postinvoke44 unwind label %landingpad
-
-postinvoke44: ; preds = %endif
- %tmp45 = load %tango.net.SocketConduit.SocketConduit** %data ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
- ret %tango.net.SocketConduit.SocketConduit* %tmp45
-
-landingpad: ; preds = %endif, %if, %andand, %postinvoke18, %postinvoke, %entry
- %0 = call i8* @llvm.eh.exception() ; <i8*> [#uses=3]
- %1 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %0, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), %object.ClassInfo* @_D6Object7__ClassZ) ; <i32> [#uses=1]
- %cond = icmp eq i32 %1, 1 ; <i1> [#uses=1]
- br i1 %cond, label %catch, label %switchdefault
-
-catch: ; preds = %landingpad
- %2 = bitcast i8* %0 to %object.Object* ; <%object.Object*> [#uses=1]
- %tmp5 = load %tango.net.SocketConduit.SocketConduit** %data ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp6 = bitcast %tango.net.SocketConduit.SocketConduit* %tmp5 to %tango.io.device.Conduit.Conduit* ; <%tango.io.device.Conduit.Conduit*> [#uses=1]
- %tmp1.i = bitcast %tango.net.SocketConduit.SocketConduit* %tmp5 to %tango.io.device.Conduit.Conduit.__vtbl** ; <%tango.io.device.Conduit.Conduit.__vtbl**> [#uses=1]
- %tmp2.i = load %tango.io.device.Conduit.Conduit.__vtbl** %tmp1.i ; <%tango.io.device.Conduit.Conduit.__vtbl*> [#uses=1]
- %"this.detach@vtbl.i" = getelementptr %tango.io.device.Conduit.Conduit.__vtbl* %tmp2.i, i32 0, i32 8 ; <void (%tango.io.device.Conduit.Conduit*)**> [#uses=1]
- %this.detach.i = load void (%tango.io.device.Conduit.Conduit*)** %"this.detach@vtbl.i", align 4 ; <void (%tango.io.device.Conduit.Conduit*)*> [#uses=1]
- call fastcc void %this.detach.i(%tango.io.device.Conduit.Conduit* %tmp6)
- call void @_d_throw_exception(%object.Object* %2)
- unreachable
-
-switchdefault: ; preds = %landingpad
- call void @_d_eh_resume_unwind(i8* %0)
- unreachable
-}
-
-define fastcc %"FtpFileInfo[]" @_D5tango3net3ftp9FtpClient13FTPConnection2lsMFAaZAS5tango3net3ftp9FtpClient11FtpFileInfo(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %.frame.i = alloca %nest.splitLines, align 8 ; <%nest.splitLines*> [#uses=5]
- %.rettmp.i = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %.rettmp8.i = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %__arrayArg146 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpFileInfo, align 8 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=10]
- %path_arg207 = extractvalue %"byte[]" %path_arg, 0 ; <i32> [#uses=4]
- %path_arg208 = extractvalue %"byte[]" %path_arg, 1 ; <i8*> [#uses=3]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=7]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.isSupported@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 41 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.isSupported = load i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.isSupported@vtbl", align 4 ; <i1 (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp4 = call fastcc i1 %this.isSupported(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str154, i32 0, i32 0) }) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- %tmp6 = icmp eq i32 %path_arg207, 0 ; <i1> [#uses=1]
- %tmp11 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.processDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp11, i32 0, i32 45 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.processDataCommand = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.processDataCommand@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=2]
- br i1 %tmp6, label %else, label %if7
-
-if7: ; preds = %if
- %tmp13 = getelementptr [1 x %"byte[]"]* %__arrayArg146, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- %insert204 = insertvalue %"byte[]" undef, i32 %path_arg207, 0 ; <%"byte[]"> [#uses=1]
- %insert206 = insertvalue %"byte[]" %insert204, i8* %path_arg208, 1 ; <%"byte[]"> [#uses=1]
- store %"byte[]" %insert206, %"byte[]"* %tmp13, align 8
- %tmp16 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp13, 1 ; <%"char[][]"> [#uses=1]
- %tmp17 = invoke fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str155, i32 0, i32 0) }, %"char[][]" %tmp16)
- to label %endif unwind label %landingpad ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
-
-else: ; preds = %if
- %tmp25 = invoke fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str156, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- to label %endif unwind label %landingpad ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
-
-landingpad: ; preds = %else, %if7
- %0 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %1 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %0, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), %object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i32> [#uses=1]
- %cond149 = icmp eq i32 %1, 1 ; <i1> [#uses=1]
- br i1 %cond149, label %endif, label %switchdefault
-
-switchdefault: ; preds = %landingpad
- call void @_d_eh_resume_unwind(i8* %0)
- unreachable
-
-endif: ; preds = %landingpad, %else, %if7, %entry
- %data.0 = phi %tango.net.SocketConduit.SocketConduit* [ null, %entry ], [ %tmp17, %if7 ], [ %tmp25, %else ], [ null, %landingpad ] ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %mlsd_success.0 = phi i1 [ false, %entry ], [ true, %if7 ], [ true, %else ], [ false, %landingpad ] ; <i1> [#uses=1]
- br i1 %mlsd_success.0, label %if27, label %else29
-
-if27: ; preds = %endif
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango2io6device5Array5Array7__ClassZ) ; <i8*> [#uses=9]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Array.Array* ; <%tango.io.device.Array.Array*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Array.Array.__vtbl** ; <%tango.io.device.Array.Array.__vtbl**> [#uses=2]
- store %tango.io.device.Array.Array.__vtbl* @_D5tango2io6device5Array5Array6__vtblZ, %tango.io.device.Array.Array.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp30 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp30, i8* bitcast (%4** getelementptr (%tango.io.device.Array.Array* bitcast (%26* @_D5tango2io6device5Array5Array6__initZ to %tango.io.device.Array.Array*), i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp2.i = load %tango.io.device.Array.Array.__vtbl** %vtbl ; <%tango.io.device.Array.Array.__vtbl*> [#uses=1]
- %"this.assign@vtbl.i" = getelementptr %tango.io.device.Array.Array.__vtbl* %tmp2.i, i32 0, i32 15 ; <%tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]", i32)**> [#uses=1]
- %this.assign.i = load %tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]", i32)** %"this.assign@vtbl.i", align 4 ; <%tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]", i32)*> [#uses=1]
- %.gc_mem.i = call noalias i8* @_d_newarrayT(%object.TypeInfo* @_D11TypeInfo_Ah6__initZ, i32 256) ; <i8*> [#uses=1]
- %tmp5.i = insertvalue %"byte[]" undef, i32 256, 0 ; <%"byte[]"> [#uses=1]
- %tmp6.i = insertvalue %"byte[]" %tmp5.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp7.i = call fastcc %tango.io.device.Array.Array* %this.assign.i(%tango.io.device.Array.Array* %.newclass_gc, %"byte[]" %tmp6.i, i32 0) ; <%tango.io.device.Array.Array*> [#uses=0]
- %tmp9.i = getelementptr i8* %.newclass_gc_alloc, i32 36 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp9.i to i32* ; <i32*> [#uses=1]
- store i32 65536, i32* %3
- %tmp37 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readStream@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp37, i32 0, i32 47 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")**> [#uses=1]
- %this.readStream = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")** %"this.readStream@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")*> [#uses=1]
- %tmp41 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %tmp42 = bitcast i8* %tmp41 to %tango.io.model.IConduit.OutputStream* ; <%tango.io.model.IConduit.OutputStream*> [#uses=1]
- call fastcc void %this.readStream(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %data.0, %tango.io.model.IConduit.OutputStream* %tmp42, %"void delegate(uint pos)" zeroinitializer)
- %tmp45 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.finishDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp45, i32 0, i32 44 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.finishDataCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)** %"this.finishDataCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %this.finishDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %data.0)
- %tmp2.i209 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp2.i209 to i8** ; <i8**> [#uses=1]
- %.ptr.i = load i8** %4 ; <i8*> [#uses=1]
- %tmp4.i = getelementptr i8* %.newclass_gc_alloc, i32 24 ; <i8*> [#uses=1]
- %5 = bitcast i8* %tmp4.i to i32* ; <i32*> [#uses=1]
- %tmp6.i210 = getelementptr i8* %.newclass_gc_alloc, i32 28 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp6.i210 to i32* ; <i32*> [#uses=1]
- %tmp7.i211 = load i32* %5 ; <i32> [#uses=2]
- %tmp8.i = load i32* %6 ; <i32> [#uses=1]
- %tmp9.i212 = getelementptr i8* %.ptr.i, i32 %tmp7.i211 ; <i8*> [#uses=2]
- %tmp10.i = sub i32 %tmp8.i, %tmp7.i211 ; <i32> [#uses=2]
- %count.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 0 ; <i32*> [#uses=3]
- %result.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1 ; <%"char[][]"*> [#uses=1]
- store i32 0, i32* %count.i, align 8
- %7 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp10.i, i32* %7, align 8
- %.sret_arg10.1.i.i = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp9.i212, i8** %.sret_arg10.1.i.i, align 4
- %tmp1.i213 = bitcast %nest.splitLines* %.frame.i to i8* ; <i8*> [#uses=2]
- %tmp2.i214 = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1.i213, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func.i = insertvalue %"int delegate(ref char[])" %tmp2.i214, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody41MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp3.i = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, %"int delegate(ref char[])" %.func.i) ; <i32> [#uses=0]
- %tmp4.i215 = load i32* %count.i, align 8 ; <i32> [#uses=2]
- %.gc_mem.i216 = call noalias i8* @_d_newarrayT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D12TypeInfo_AAa6__initZ to %object.TypeInfo*), i32 %tmp4.i215) ; <i8*> [#uses=1]
- %.gc_mem5.i = bitcast i8* %.gc_mem.i216 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp6.i217 = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4.i215, i32* %tmp6.i217
- %tmp7.i218 = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1, i32 1 ; <%"byte[]"**> [#uses=1]
- store %"byte[]"* %.gc_mem5.i, %"byte[]"** %tmp7.i218
- store i32 0, i32* %count.i, align 8
- %8 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp10.i, i32* %8, align 8
- %.sret_arg10.1.i17.i = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp9.i212, i8** %.sret_arg10.1.i17.i, align 4
- %tmp11.i219 = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1.i213, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func12.i = insertvalue %"int delegate(ref char[])" %tmp11.i219, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody42MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp13.i = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, %"int delegate(ref char[])" %.func12.i) ; <i32> [#uses=0]
- %tmp14.i = load %"char[][]"* %result.i ; <%"char[][]"> [#uses=2]
- %tmp53189 = extractvalue %"char[][]" %tmp14.i, 0 ; <i32> [#uses=5]
- %tmp53190 = extractvalue %"char[][]" %tmp14.i, 1 ; <%"byte[]"*> [#uses=5]
- br label %foreachcond
-
-foreachcond: ; preds = %foreachnext, %if27
- %dir.1.1 = phi %tango.net.ftp.FtpClient.FtpFileInfo* [ null, %if27 ], [ %dir.1.0, %foreachnext ] ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=4]
- %dir.0.1 = phi i32 [ 0, %if27 ], [ %dir.0.0, %foreachnext ] ; <i32> [#uses=14]
- %foreachkey.0 = phi i32 [ 0, %if27 ], [ %tmp127, %foreachnext ] ; <i32> [#uses=3]
- %tmp65 = icmp ult i32 %foreachkey.0, %tmp53189 ; <i1> [#uses=1]
- br i1 %tmp65, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp67 = getelementptr %"byte[]"* %tmp53190, i32 %foreachkey.0 ; <%"byte[]"*> [#uses=1]
- %tmp68 = load %"byte[]"* %tmp67 ; <%"byte[]"> [#uses=2]
- %tmp68187 = extractvalue %"byte[]" %tmp68, 0 ; <i32> [#uses=2]
- %tmp71 = icmp eq i32 %tmp68187, 0 ; <i1> [#uses=1]
- br i1 %tmp71, label %foreachnext, label %try74
-
-try74: ; preds = %foreachbody
- %tmp68188 = extractvalue %"byte[]" %tmp68, 1 ; <i8*> [#uses=1]
- %tmp99 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.parseMlstLine@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp99, i32 0, i32 51 ; <void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.parseMlstLine = load void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.parseMlstLine@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %insert = insertvalue %"byte[]" undef, i32 %tmp68187, 0 ; <%"byte[]"> [#uses=1]
- %insert186 = insertvalue %"byte[]" %insert, i8* %tmp68188, 1 ; <%"byte[]"> [#uses=1]
- invoke fastcc void %this.parseMlstLine(%tango.net.ftp.FtpClient.FtpFileInfo* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %insert186)
- to label %postinvoke102 unwind label %landingpad75
-
-postinvoke102: ; preds = %try74
- %.rettmp179.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp180 = load i32* %.rettmp179.0, align 8 ; <i32> [#uses=2]
- %.rettmp179.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- %tmp181 = load i8** %.rettmp179.1, align 4 ; <i8*> [#uses=1]
- %.rettmp.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 1 ; <i32*> [#uses=1]
- %tmp162 = load i32* %.rettmp.1, align 8 ; <i32> [#uses=1]
- %.rettmp.2 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 2 ; <i64*> [#uses=1]
- %tmp163 = load i64* %.rettmp.2, align 4 ; <i64> [#uses=1]
- %.rettmp.3.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 3, i32 0 ; <i64*> [#uses=1]
- %tmp177 = load i64* %.rettmp.3.0, align 4 ; <i64> [#uses=1]
- %.rettmp.4.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 4, i32 0 ; <i64*> [#uses=1]
- %tmp175 = load i64* %.rettmp.4.0, align 4 ; <i64> [#uses=1]
- %.rettmp.5.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- %tmp171 = load i32* %.rettmp.5.0, align 4 ; <i32> [#uses=1]
- %.rettmp.5.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 5, i32 1 ; <i8**> [#uses=1]
- %tmp172 = load i8** %.rettmp.5.1, align 4 ; <i8*> [#uses=1]
- %.rettmp.6 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 6 ; <i8**> [#uses=1]
- %tmp170 = load i8** %.rettmp.6, align 4 ; <i8*> [#uses=1]
- %tmp108 = icmp eq i32 %tmp180, 0 ; <i1> [#uses=1]
- br i1 %tmp108, label %foreachnext, label %if109
-
-if109: ; preds = %postinvoke102
- %tmp113 = add i32 %dir.0.1, 1 ; <i32> [#uses=2]
- %tmp118 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %dir.1.1 to i8* ; <i8*> [#uses=1]
- %.gc_mem = invoke i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D48TypeInfo_AS5tango3net3ftp9FtpClient11FtpFileInfo6__initZ to %object.TypeInfo*), i32 %tmp113, i32 %dir.0.1, i8* %tmp118)
- to label %postinvoke119 unwind label %landingpad75 ; <i8*> [#uses=1]
-
-postinvoke119: ; preds = %if109
- %.gc_mem120 = bitcast i8* %.gc_mem to %tango.net.ftp.FtpClient.FtpFileInfo* ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=10]
- %9 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp180, i32* %9
- %tmp121182.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp181, i8** %tmp121182.1, align 4
- %tmp121.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 1 ; <i32*> [#uses=1]
- store i32 %tmp162, i32* %tmp121.1, align 8
- %tmp121.2 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 2 ; <i64*> [#uses=1]
- store i64 %tmp163, i64* %tmp121.2, align 4
- %tmp121.3.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 3, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp177, i64* %tmp121.3.0, align 4
- %tmp121.4.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 4, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp175, i64* %tmp121.4.0, align 4
- %tmp121.5.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 5, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp171, i32* %tmp121.5.0, align 4
- %tmp121.5.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 5, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp172, i8** %tmp121.5.1, align 4
- %tmp121.6 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem120, i32 %dir.0.1, i32 6 ; <i8**> [#uses=1]
- store i8* %tmp170, i8** %tmp121.6, align 4
- br label %foreachnext
-
-landingpad75: ; preds = %if109, %try74
- %10 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %11 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %10, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), %object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ, i32 0) ; <i32> [#uses=1]
- %cond = icmp eq i32 %11, 1 ; <i1> [#uses=1]
- br i1 %cond, label %catch77, label %switchdefault90
-
-catch77: ; preds = %landingpad75
- %tmp80 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendListCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp80, i32 0, i32 49 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.sendListCommand = load %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.sendListCommand@vtbl", align 4 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %insert200 = insertvalue %"byte[]" undef, i32 %path_arg207, 0 ; <%"byte[]"> [#uses=1]
- %insert202 = insertvalue %"byte[]" %insert200, i8* %path_arg208, 1 ; <%"byte[]"> [#uses=1]
- %tmp84 = invoke fastcc %"FtpFileInfo[]" %this.sendListCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %insert202)
- to label %postinvoke83 unwind label %catch77.landingpad55_crit_edge ; <%"FtpFileInfo[]"> [#uses=1]
-
-catch77.landingpad55_crit_edge: ; preds = %catch77
- %.tmp.pre = bitcast %"byte[]"* %tmp53190 to i8* ; <i8*> [#uses=1]
- br label %landingpad55
-
-postinvoke83: ; preds = %catch77
- %.tmp89 = bitcast %"byte[]"* %tmp53190 to i8* ; <i8*> [#uses=1]
- call void @_d_delarray(i32 %tmp53189, i8* %.tmp89)
- ret %"FtpFileInfo[]" %tmp84
-
-switchdefault90: ; preds = %landingpad75
- %.tmp95 = bitcast %"byte[]"* %tmp53190 to i8* ; <i8*> [#uses=2]
- invoke void @_d_delarray(i32 %tmp53189, i8* %.tmp95)
- to label %postinvoke96 unwind label %landingpad55
-
-postinvoke96: ; preds = %switchdefault90
- call void @_d_eh_resume_unwind(i8* %10)
- unreachable
-
-foreachnext: ; preds = %postinvoke119, %postinvoke102, %foreachbody
- %dir.1.0 = phi %tango.net.ftp.FtpClient.FtpFileInfo* [ %dir.1.1, %foreachbody ], [ %.gc_mem120, %postinvoke119 ], [ %dir.1.1, %postinvoke102 ] ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=1]
- %dir.0.0 = phi i32 [ %dir.0.1, %foreachbody ], [ %tmp113, %postinvoke119 ], [ %dir.0.1, %postinvoke102 ] ; <i32> [#uses=1]
- %tmp127 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- %insert192 = insertvalue %"FtpFileInfo[]" undef, i32 %dir.0.1, 0 ; <%"FtpFileInfo[]"> [#uses=1]
- %insert194 = insertvalue %"FtpFileInfo[]" %insert192, %tango.net.ftp.FtpClient.FtpFileInfo* %dir.1.1, 1 ; <%"FtpFileInfo[]"> [#uses=1]
- %.tmp133 = bitcast %"byte[]"* %tmp53190 to i8* ; <i8*> [#uses=1]
- call void @_d_delarray(i32 %tmp53189, i8* %.tmp133)
- ret %"FtpFileInfo[]" %insert194
-
-landingpad55: ; preds = %switchdefault90, %catch77.landingpad55_crit_edge
- %.tmp.pre-phi = phi i8* [ %.tmp.pre, %catch77.landingpad55_crit_edge ], [ %.tmp95, %switchdefault90 ] ; <i8*> [#uses=1]
- %12 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %13 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %12, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- call void @_d_delarray(i32 %tmp53189, i8* %.tmp.pre-phi)
- call void @_d_eh_resume_unwind(i8* %12)
- unreachable
-
-else29: ; preds = %endif
- %tmp142 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendListCommand@vtbl143" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp142, i32 0, i32 49 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.sendListCommand145 = load %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.sendListCommand@vtbl143", align 4 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %insert196 = insertvalue %"byte[]" undef, i32 %path_arg207, 0 ; <%"byte[]"> [#uses=1]
- %insert198 = insertvalue %"byte[]" %insert196, i8* %path_arg208, 1 ; <%"byte[]"> [#uses=1]
- %tmp147 = call fastcc %"FtpFileInfo[]" %this.sendListCommand145(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %insert198) ; <%"FtpFileInfo[]"> [#uses=1]
- ret %"FtpFileInfo[]" %tmp147
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection10readStreamMFC5tango3net13SocketConduit13SocketConduitC5tango2io5model8IConduit12OutputStreamDFkZvZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %data_arg, %tango.io.model.IConduit.OutputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg) {
-entry:
- %tv.i = alloca %tango.net.Socket.timeval, align 8 ; <%tango.net.Socket.timeval*> [#uses=2]
- %.rettmp = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp11 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %buf = alloca [8192 x i8], align 1 ; <[8192 x i8]*> [#uses=1]
- %.rettmp17 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp45 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp110 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp119 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %progress_arg144 = extractvalue %"void delegate(uint pos)" %progress_arg, 0 ; <i8*> [#uses=2]
- %progress_arg145 = extractvalue %"void delegate(uint pos)" %progress_arg, 1 ; <void (i8*, i32)*> [#uses=2]
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket9SocketSet7__ClassZ) ; <i8*> [#uses=8]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.SocketSet* ; <%tango.net.Socket.SocketSet*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.SocketSet.__vtbl** ; <%tango.net.Socket.SocketSet.__vtbl**> [#uses=3]
- store %tango.net.Socket.SocketSet.__vtbl* @_D5tango3net6Socket9SocketSet6__vtblZ, %tango.net.Socket.SocketSet.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp, i8* bitcast (i32* getelementptr (%tango.net.Socket.SocketSet* bitcast (%24* @_D5tango3net6Socket9SocketSet6__initZ to %tango.net.Socket.SocketSet*), i32 0, i32 2) to i8*), i32 16, i32 1)
- %1 = bitcast i8* %tmp to i32* ; <i32*> [#uses=2]
- store i32 128, i32* %1
- %tmp9.i.i = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp9.i.i to i8** ; <i8**> [#uses=1]
- %.gc_mem.i.i = call noalias i8* @_d_newarrayT(%object.TypeInfo* @_D11TypeInfo_Ag6__initZ, i32 128) ; <i8*> [#uses=1]
- store i8* %.gc_mem.i.i, i8** %2
- %tmp14.i.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp14.i.i to i32* ; <i32*> [#uses=1]
- %tmp17.i.i = load i32* %1 ; <i32> [#uses=1]
- %tmp18.i.i = shl i32 %tmp17.i.i, 3 ; <i32> [#uses=1]
- store i32 %tmp18.i.i, i32* %3
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp)
- to label %postinvoke unwind label %landingpad
-
-postinvoke: ; preds = %entry
- %tmp8 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp9 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp8 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp9, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout(%tango.time.Time.Time* noalias nocapture sret %.rettmp11, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke12 unwind label %landingpad
-
-postinvoke12: ; preds = %postinvoke
- %.rettmp11.0 = getelementptr %tango.time.Time.Time* %.rettmp11, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp183 = load i64* %.rettmp11.0, align 8 ; <i64> [#uses=1]
- %tmp1.i162 = getelementptr %tango.time.Time.Time* %.rettmp, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i164 = load i64* %tmp1.i162, align 8 ; <i64> [#uses=1]
- %tmp16 = getelementptr [8192 x i8]* %buf, i32 0, i32 0 ; <i8*> [#uses=3]
- call void @llvm.memset.i32(i8* %tmp16, i8 0, i32 8192, i32 1)
- br label %whilecond
-
-whilecond: ; preds = %postinvoke120, %postinvoke12
- %tmp3.i164.pn = phi i64 [ %tmp3.i164, %postinvoke12 ], [ %tmp3.i, %postinvoke120 ] ; <i64> [#uses=1]
- %.pn = phi i64 [ %tmp183, %postinvoke12 ], [ %tmp181, %postinvoke120 ] ; <i64> [#uses=1]
- %pos.0 = phi i32 [ 0, %postinvoke12 ], [ %tmp96, %postinvoke120 ] ; <i32> [#uses=1]
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp17)
- to label %postinvoke18 unwind label %landingpad
-
-whilebody: ; preds = %postinvoke18
- %tmp24 = load %tango.net.Socket.SocketSet.__vtbl** %vtbl ; <%tango.net.Socket.SocketSet.__vtbl*> [#uses=1]
- %"set.reset@vtbl" = getelementptr %tango.net.Socket.SocketSet.__vtbl* %tmp24, i32 0, i32 10 ; <void (%tango.net.Socket.SocketSet*)**> [#uses=1]
- %set.reset = load void (%tango.net.Socket.SocketSet*)** %"set.reset@vtbl", align 4 ; <void (%tango.net.Socket.SocketSet*)*> [#uses=1]
- invoke fastcc void %set.reset(%tango.net.Socket.SocketSet* %.newclass_gc)
- to label %postinvoke26 unwind label %landingpad
-
-postinvoke18: ; preds = %whilecond
- %end_time.0.0 = add i64 %tmp3.i164.pn, %.pn ; <i64> [#uses=1]
- %tmp1.i168 = getelementptr %tango.time.Time.Time* %.rettmp17, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i170 = load i64* %tmp1.i168, align 8 ; <i64> [#uses=1]
- %tmp5.i172 = icmp slt i64 %tmp3.i170, %end_time.0.0 ; <i1> [#uses=1]
- br i1 %tmp5.i172, label %whilebody, label %if125
-
-postinvoke26: ; preds = %whilebody
- %tmp29 = load %tango.net.Socket.SocketSet.__vtbl** %vtbl ; <%tango.net.Socket.SocketSet.__vtbl*> [#uses=1]
- %"set.add@vtbl" = getelementptr %tango.net.Socket.SocketSet.__vtbl* %tmp29, i32 0, i32 12 ; <void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)**> [#uses=1]
- %set.add = load void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)** %"set.add@vtbl", align 4 ; <void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)*> [#uses=1]
- %tmp32 = getelementptr %tango.net.SocketConduit.SocketConduit* %data_arg, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=2]
- %tmp33 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp32 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp33, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp36 = invoke fastcc %tango.net.Socket.Socket* %data.socket(%tango.net.SocketConduit.SocketConduit* %data_arg)
- to label %postinvoke35 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=1]
-
-postinvoke35: ; preds = %postinvoke26
- invoke fastcc void %set.add(%tango.net.Socket.SocketSet* %.newclass_gc, %tango.net.Socket.Socket* %tmp36)
- to label %postinvoke37 unwind label %landingpad
-
-postinvoke37: ; preds = %postinvoke35
- %tmp41 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp8 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl42" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp41, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout44 = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl42", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout44(%tango.time.Time.Time* noalias nocapture sret %.rettmp45, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke46 unwind label %landingpad
-
-postinvoke46: ; preds = %postinvoke37
- %.rettmp45.0 = getelementptr %tango.time.Time.Time* %.rettmp45, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp185 = load i64* %.rettmp45.0, align 8 ; <i64> [#uses=2]
- %tmp3.i.i.i = sdiv i64 %tmp185, 10000000 ; <i64> [#uses=1]
- %tmp3.i14.i.i = sdiv i64 %tmp185, 10 ; <i64> [#uses=1]
- %tmp6.i.i = trunc i64 %tmp3.i14.i.i to i32 ; <i32> [#uses=1]
- %tmp7.i.i = urem i32 %tmp6.i.i, 1000000 ; <i32> [#uses=1]
- %tmp7.i = bitcast %tango.net.Socket.timeval* %tv.i to i64* ; <i64*> [#uses=1]
- %4 = shl i64 %tmp3.i.i.i, 32 ; <i64> [#uses=1]
- %5 = zext i32 %tmp7.i.i to i64 ; <i64> [#uses=1]
- %6 = or i64 %5, %4 ; <i64> [#uses=1]
- store i64 %6, i64* %tmp7.i, align 8
- %tmp5.i176177 = invoke fastcc i32 @_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetPS5tango3net6Socket7timevalZi(%tango.net.Socket.SocketSet* %.newclass_gc, %tango.net.Socket.SocketSet* null, %tango.net.Socket.SocketSet* null, %tango.net.Socket.timeval* %tv.i)
- to label %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit unwind label %landingpad ; <i32> [#uses=1]
-
-_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit: ; preds = %postinvoke46
- switch i32 %tmp5.i176177, label %endif [
- i32 -1, label %if125
- i32 0, label %if125
- ]
-
-endif: ; preds = %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit
- %tmp55 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp32 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl56" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp55, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket58 = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl56", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp60 = invoke fastcc %tango.net.Socket.Socket* %data.socket58(%tango.net.SocketConduit.SocketConduit* %data_arg)
- to label %postinvoke59 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=2]
-
-postinvoke59: ; preds = %endif
- %tmp61 = getelementptr %tango.net.Socket.Socket* %tmp60, i32 0, i32 0 ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- %tmp62 = load %tango.net.Socket.Socket.__vtbl** %tmp61 ; <%tango.net.Socket.Socket.__vtbl*> [#uses=1]
- %"data.socket().receive@vtbl" = getelementptr %tango.net.Socket.Socket.__vtbl* %tmp62, i32 0, i32 29 ; <i32 (%tango.net.Socket.Socket*, %"byte[]", i32)**> [#uses=1]
- %"data.socket().receive" = load i32 (%tango.net.Socket.Socket*, %"byte[]", i32)** %"data.socket().receive@vtbl", align 4 ; <i32 (%tango.net.Socket.Socket*, %"byte[]", i32)*> [#uses=1]
- %tmp65 = insertvalue %"byte[]" { i32 8192, i8* undef }, i8* %tmp16, 1 ; <%"byte[]"> [#uses=1]
- %tmp67 = invoke fastcc i32 %"data.socket().receive"(%tango.net.Socket.Socket* %tmp60, %"byte[]" %tmp65, i32 0)
- to label %postinvoke66 unwind label %landingpad ; <i32> [#uses=3]
-
-postinvoke66: ; preds = %postinvoke59
- switch i32 %tmp67, label %endif76 [
- i32 -1, label %if125
- i32 0, label %if75
- ]
-
-if75: ; preds = %postinvoke66
- %.tmp141 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp141)
- ret void
-
-endif76: ; preds = %postinvoke66
- %tmp79 = bitcast %tango.io.model.IConduit.OutputStream* %stream_arg to i8* ; <i8*> [#uses=1]
- %tmp80 = call %object.Object* @_d_toObject(i8* %tmp79) nounwind readonly ; <%object.Object*> [#uses=1]
- %tmp82 = getelementptr %tango.io.model.IConduit.OutputStream* %stream_arg, i32 0, i32 0 ; <%tango.io.model.IConduit.OutputStream.__vtbl**> [#uses=1]
- %tmp83 = load %tango.io.model.IConduit.OutputStream.__vtbl** %tmp82 ; <%tango.io.model.IConduit.OutputStream.__vtbl*> [#uses=1]
- %"stream.write@vtbl" = getelementptr %tango.io.model.IConduit.OutputStream.__vtbl* %tmp83, i32 0, i32 5 ; <i32 (%tango.io.model.IConduit.OutputStream*, %"byte[]")**> [#uses=1]
- %stream.write = load i32 (%tango.io.model.IConduit.OutputStream*, %"byte[]")** %"stream.write@vtbl", align 4 ; <i32 (%tango.io.model.IConduit.OutputStream*, %"byte[]")*> [#uses=1]
- %tmp85 = bitcast %object.Object* %tmp80 to %tango.io.model.IConduit.OutputStream* ; <%tango.io.model.IConduit.OutputStream*> [#uses=1]
- %tmp90 = insertvalue %"byte[]" undef, i32 %tmp67, 0 ; <%"byte[]"> [#uses=1]
- %tmp91 = insertvalue %"byte[]" %tmp90, i8* %tmp16, 1 ; <%"byte[]"> [#uses=1]
- %tmp93 = invoke fastcc i32 %stream.write(%tango.io.model.IConduit.OutputStream* %tmp85, %"byte[]" %tmp91)
- to label %postinvoke92 unwind label %landingpad ; <i32> [#uses=0]
-
-postinvoke92: ; preds = %endif76
- %tmp96 = add i32 %pos.0, %tmp67 ; <i32> [#uses=2]
- %tmp98 = icmp eq i8* %progress_arg144, null ; <i1> [#uses=1]
- %tmp99 = icmp eq void (i8*, i32)* %progress_arg145, null ; <i1> [#uses=1]
- %tmp100 = and i1 %tmp98, %tmp99 ; <i1> [#uses=1]
- br i1 %tmp100, label %endif103, label %if102
-
-if102: ; preds = %postinvoke92
- invoke fastcc void %progress_arg145(i8* %progress_arg144, i32 %tmp96)
- to label %endif103 unwind label %landingpad
-
-endif103: ; preds = %if102, %postinvoke92
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp110)
- to label %postinvoke111 unwind label %landingpad
-
-postinvoke111: ; preds = %endif103
- %tmp115 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp8 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl116" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp115, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout118 = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl116", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout118(%tango.time.Time.Time* noalias nocapture sret %.rettmp119, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke120 unwind label %landingpad
-
-postinvoke120: ; preds = %postinvoke111
- %.rettmp119.0 = getelementptr %tango.time.Time.Time* %.rettmp119, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp181 = load i64* %.rettmp119.0, align 8 ; <i64> [#uses=1]
- %tmp1.i = getelementptr %tango.time.Time.Time* %.rettmp110, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i = load i64* %tmp1.i, align 8 ; <i64> [#uses=1]
- br label %whilecond
-
-if125: ; preds = %postinvoke66, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit, %postinvoke18
- %.newclass_gc_alloc128 = invoke noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ)
- to label %postinvoke127 unwind label %landingpad ; <i8*> [#uses=6]
-
-postinvoke127: ; preds = %if125
- %vtbl130 = bitcast i8* %.newclass_gc_alloc128 to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl130
- %monitor131 = getelementptr i8* %.newclass_gc_alloc128, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor131 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp132 = getelementptr i8* %.newclass_gc_alloc128, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp132, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc128, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* getelementptr ([4 x i8]* @.str162, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc128 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i154 = invoke fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" { i32 33, i8* getelementptr ([34 x i8]* @.str161, i32 0, i32 0) }, %object.Exception* null)
- to label %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit unwind label %landingpad ; <%object.Exception*> [#uses=0]
-
-_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit: ; preds = %postinvoke127
- %tmp138 = bitcast i8* %.newclass_gc_alloc128 to %object.Object* ; <%object.Object*> [#uses=1]
- invoke void @_d_throw_exception(%object.Object* %tmp138)
- to label %postinvoke139 unwind label %landingpad
-
-postinvoke139: ; preds = %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit
- unreachable
-
-landingpad: ; preds = %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit, %postinvoke127, %if125, %postinvoke111, %endif103, %if102, %endif76, %postinvoke59, %endif, %postinvoke46, %postinvoke37, %postinvoke35, %postinvoke26, %whilebody, %whilecond, %postinvoke, %entry
- %8 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %9 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %8, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- %.tmp = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp)
- call void @_d_eh_resume_unwind(i8* %8)
- unreachable
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection10sendStreamMFC5tango3net13SocketConduit13SocketConduitC5tango2io5model8IConduit11InputStreamDFkZvZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %data_arg, %tango.io.model.IConduit.InputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg) {
-entry:
- %tv.i = alloca %tango.net.Socket.timeval, align 8 ; <%tango.net.Socket.timeval*> [#uses=2]
- %.rettmp = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp11 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %buf = alloca [8192 x i8], align 1 ; <[8192 x i8]*> [#uses=2]
- %.rettmp18 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp46 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp123 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %.rettmp132 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %progress_arg157 = extractvalue %"void delegate(uint pos)" %progress_arg, 0 ; <i8*> [#uses=2]
- %progress_arg158 = extractvalue %"void delegate(uint pos)" %progress_arg, 1 ; <void (i8*, i32)*> [#uses=2]
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net6Socket9SocketSet7__ClassZ) ; <i8*> [#uses=8]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.SocketSet* ; <%tango.net.Socket.SocketSet*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.Socket.SocketSet.__vtbl** ; <%tango.net.Socket.SocketSet.__vtbl**> [#uses=3]
- store %tango.net.Socket.SocketSet.__vtbl* @_D5tango3net6Socket9SocketSet6__vtblZ, %tango.net.Socket.SocketSet.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp, i8* bitcast (i32* getelementptr (%tango.net.Socket.SocketSet* bitcast (%24* @_D5tango3net6Socket9SocketSet6__initZ to %tango.net.Socket.SocketSet*), i32 0, i32 2) to i8*), i32 16, i32 1)
- %1 = bitcast i8* %tmp to i32* ; <i32*> [#uses=2]
- store i32 128, i32* %1
- %tmp9.i.i = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp9.i.i to i8** ; <i8**> [#uses=1]
- %.gc_mem.i.i = call noalias i8* @_d_newarrayT(%object.TypeInfo* @_D11TypeInfo_Ag6__initZ, i32 128) ; <i8*> [#uses=1]
- store i8* %.gc_mem.i.i, i8** %2
- %tmp14.i.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp14.i.i to i32* ; <i32*> [#uses=1]
- %tmp17.i.i = load i32* %1 ; <i32> [#uses=1]
- %tmp18.i.i = shl i32 %tmp17.i.i, 3 ; <i32> [#uses=1]
- store i32 %tmp18.i.i, i32* %3
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp)
- to label %postinvoke unwind label %landingpad
-
-postinvoke: ; preds = %entry
- %tmp8 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp9 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp8 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp9, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout(%tango.time.Time.Time* noalias nocapture sret %.rettmp11, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke12 unwind label %landingpad
-
-postinvoke12: ; preds = %postinvoke
- %.rettmp11.0 = getelementptr %tango.time.Time.Time* %.rettmp11, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp196 = load i64* %.rettmp11.0, align 8 ; <i64> [#uses=1]
- %tmp1.i175 = getelementptr %tango.time.Time.Time* %.rettmp, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i177 = load i64* %tmp1.i175, align 8 ; <i64> [#uses=1]
- %tmp5.i179 = add i64 %tmp3.i177, %tmp196 ; <i64> [#uses=1]
- %tmp16 = getelementptr [8192 x i8]* %buf, i32 0, i32 0 ; <i8*> [#uses=2]
- call void @llvm.memset.i32(i8* %tmp16, i8 0, i32 8192, i32 1)
- br label %whilecond
-
-whilecond: ; preds = %postinvoke133, %endif112, %postinvoke12
- %end_time.0.0 = phi i64 [ %tmp5.i179, %postinvoke12 ], [ %end_time.0.0, %endif112 ], [ %tmp5.i171, %postinvoke133 ] ; <i64> [#uses=2]
- %buf_pos.1 = phi i32 [ 0, %postinvoke12 ], [ %tmp102, %postinvoke133 ], [ %tmp102, %endif112 ] ; <i32> [#uses=2]
- %buf_size.1 = phi i32 [ 0, %postinvoke12 ], [ %buf_size.0, %postinvoke133 ], [ %buf_size.0, %endif112 ] ; <i32> [#uses=2]
- %pos.0 = phi i32 [ 0, %postinvoke12 ], [ %tmp105, %postinvoke133 ], [ %tmp105, %endif112 ] ; <i32> [#uses=1]
- %completed.2 = phi i1 [ false, %postinvoke12 ], [ %completed.1, %postinvoke133 ], [ %completed.1, %endif112 ] ; <i1> [#uses=7]
- br i1 %completed.2, label %endwhile, label %andand
-
-whilebody: ; preds = %postinvoke19
- %tmp25 = load %tango.net.Socket.SocketSet.__vtbl** %vtbl ; <%tango.net.Socket.SocketSet.__vtbl*> [#uses=1]
- %"set.reset@vtbl" = getelementptr %tango.net.Socket.SocketSet.__vtbl* %tmp25, i32 0, i32 10 ; <void (%tango.net.Socket.SocketSet*)**> [#uses=1]
- %set.reset = load void (%tango.net.Socket.SocketSet*)** %"set.reset@vtbl", align 4 ; <void (%tango.net.Socket.SocketSet*)*> [#uses=1]
- invoke fastcc void %set.reset(%tango.net.Socket.SocketSet* %.newclass_gc)
- to label %postinvoke27 unwind label %landingpad
-
-andand: ; preds = %whilecond
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp18)
- to label %postinvoke19 unwind label %landingpad
-
-postinvoke19: ; preds = %andand
- %tmp1.i181 = getelementptr %tango.time.Time.Time* %.rettmp18, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i183 = load i64* %tmp1.i181, align 8 ; <i64> [#uses=1]
- %tmp5.i185 = icmp slt i64 %tmp3.i183, %end_time.0.0 ; <i1> [#uses=1]
- br i1 %tmp5.i185, label %whilebody, label %endwhile
-
-postinvoke27: ; preds = %whilebody
- %tmp30 = load %tango.net.Socket.SocketSet.__vtbl** %vtbl ; <%tango.net.Socket.SocketSet.__vtbl*> [#uses=1]
- %"set.add@vtbl" = getelementptr %tango.net.Socket.SocketSet.__vtbl* %tmp30, i32 0, i32 12 ; <void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)**> [#uses=1]
- %set.add = load void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)** %"set.add@vtbl", align 4 ; <void (%tango.net.Socket.SocketSet*, %tango.net.Socket.Socket*)*> [#uses=1]
- %tmp33 = getelementptr %tango.net.SocketConduit.SocketConduit* %data_arg, i32 0, i32 0 ; <%tango.net.SocketConduit.SocketConduit.__vtbl**> [#uses=2]
- %tmp34 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp33 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp34, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp37 = invoke fastcc %tango.net.Socket.Socket* %data.socket(%tango.net.SocketConduit.SocketConduit* %data_arg)
- to label %postinvoke36 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=1]
-
-postinvoke36: ; preds = %postinvoke27
- invoke fastcc void %set.add(%tango.net.Socket.SocketSet* %.newclass_gc, %tango.net.Socket.Socket* %tmp37)
- to label %postinvoke38 unwind label %landingpad
-
-postinvoke38: ; preds = %postinvoke36
- %tmp42 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp8 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl43" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp42, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout45 = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl43", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout45(%tango.time.Time.Time* noalias nocapture sret %.rettmp46, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke47 unwind label %landingpad
-
-postinvoke47: ; preds = %postinvoke38
- %.rettmp46.0 = getelementptr %tango.time.Time.Time* %.rettmp46, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp198 = load i64* %.rettmp46.0, align 8 ; <i64> [#uses=2]
- %tmp3.i.i.i = sdiv i64 %tmp198, 10000000 ; <i64> [#uses=1]
- %tmp3.i14.i.i = sdiv i64 %tmp198, 10 ; <i64> [#uses=1]
- %tmp6.i.i = trunc i64 %tmp3.i14.i.i to i32 ; <i32> [#uses=1]
- %tmp7.i.i = urem i32 %tmp6.i.i, 1000000 ; <i32> [#uses=1]
- %tmp7.i = bitcast %tango.net.Socket.timeval* %tv.i to i64* ; <i64*> [#uses=1]
- %4 = shl i64 %tmp3.i.i.i, 32 ; <i64> [#uses=1]
- %5 = zext i32 %tmp7.i.i to i64 ; <i64> [#uses=1]
- %6 = or i64 %5, %4 ; <i64> [#uses=1]
- store i64 %6, i64* %tmp7.i, align 8
- %tmp5.i189190 = invoke fastcc i32 @_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetPS5tango3net6Socket7timevalZi(%tango.net.Socket.SocketSet* null, %tango.net.Socket.SocketSet* %.newclass_gc, %tango.net.Socket.SocketSet* null, %tango.net.Socket.timeval* %tv.i)
- to label %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit unwind label %landingpad ; <i32> [#uses=1]
-
-_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit: ; preds = %postinvoke47
- switch i32 %tmp5.i189190, label %endif [
- i32 -1, label %endwhile
- i32 0, label %endwhile
- ]
-
-endif: ; preds = %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit
- %tmp57 = icmp eq i32 %buf_size.1, %buf_pos.1 ; <i1> [#uses=1]
- br i1 %tmp57, label %if58, label %endif59
-
-if58: ; preds = %endif
- %tmp61 = bitcast %tango.io.model.IConduit.InputStream* %stream_arg to i8* ; <i8*> [#uses=1]
- %tmp62 = call %object.Object* @_d_toObject(i8* %tmp61) nounwind readonly ; <%object.Object*> [#uses=1]
- %tmp64 = getelementptr %tango.io.model.IConduit.InputStream* %stream_arg, i32 0, i32 0 ; <%tango.io.model.IConduit.InputStream.__vtbl**> [#uses=1]
- %tmp65 = load %tango.io.model.IConduit.InputStream.__vtbl** %tmp64 ; <%tango.io.model.IConduit.InputStream.__vtbl*> [#uses=1]
- %"stream.read@vtbl" = getelementptr %tango.io.model.IConduit.InputStream.__vtbl* %tmp65, i32 0, i32 5 ; <i32 (%tango.io.model.IConduit.InputStream*, %"byte[]")**> [#uses=1]
- %stream.read = load i32 (%tango.io.model.IConduit.InputStream*, %"byte[]")** %"stream.read@vtbl", align 4 ; <i32 (%tango.io.model.IConduit.InputStream*, %"byte[]")*> [#uses=1]
- %tmp67 = bitcast %object.Object* %tmp62 to %tango.io.model.IConduit.InputStream* ; <%tango.io.model.IConduit.InputStream*> [#uses=1]
- %tmp69 = insertvalue %"byte[]" { i32 8192, i8* undef }, i8* %tmp16, 1 ; <%"byte[]"> [#uses=1]
- %tmp71 = invoke fastcc i32 %stream.read(%tango.io.model.IConduit.InputStream* %tmp67, %"byte[]" %tmp69)
- to label %postinvoke70 unwind label %landingpad ; <i32> [#uses=2]
-
-postinvoke70: ; preds = %if58
- %tmp72 = icmp eq i32 %tmp71, -1 ; <i1> [#uses=2]
- %buf_size.2 = select i1 %tmp72, i32 0, i32 %tmp71 ; <i32> [#uses=1]
- %completed.0 = or i1 %tmp72, %completed.2 ; <i1> [#uses=1]
- br label %endif59
-
-endif59: ; preds = %postinvoke70, %endif
- %buf_pos.0 = phi i32 [ 0, %postinvoke70 ], [ %buf_pos.1, %endif ] ; <i32> [#uses=3]
- %buf_size.0 = phi i32 [ %buf_size.2, %postinvoke70 ], [ %buf_size.1, %endif ] ; <i32> [#uses=3]
- %completed.1 = phi i1 [ %completed.0, %postinvoke70 ], [ %completed.2, %endif ] ; <i1> [#uses=3]
- %tmp77 = load %tango.net.SocketConduit.SocketConduit.__vtbl** %tmp33 ; <%tango.net.SocketConduit.SocketConduit.__vtbl*> [#uses=1]
- %"data.socket@vtbl78" = getelementptr %tango.net.SocketConduit.SocketConduit.__vtbl* %tmp77, i32 0, i32 14 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %data.socket80 = load %tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)** %"data.socket@vtbl78", align 4 ; <%tango.net.Socket.Socket* (%tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- %tmp82 = invoke fastcc %tango.net.Socket.Socket* %data.socket80(%tango.net.SocketConduit.SocketConduit* %data_arg)
- to label %postinvoke81 unwind label %landingpad ; <%tango.net.Socket.Socket*> [#uses=2]
-
-postinvoke81: ; preds = %endif59
- %tmp83 = getelementptr %tango.net.Socket.Socket* %tmp82, i32 0, i32 0 ; <%tango.net.Socket.Socket.__vtbl**> [#uses=1]
- %tmp84 = load %tango.net.Socket.Socket.__vtbl** %tmp83 ; <%tango.net.Socket.Socket.__vtbl*> [#uses=1]
- %"data.socket().send@vtbl" = getelementptr %tango.net.Socket.Socket.__vtbl* %tmp84, i32 0, i32 25 ; <i32 (%tango.net.Socket.Socket*, %"byte[]", i32)**> [#uses=1]
- %"data.socket().send" = load i32 (%tango.net.Socket.Socket*, %"byte[]", i32)** %"data.socket().send@vtbl", align 4 ; <i32 (%tango.net.Socket.Socket*, %"byte[]", i32)*> [#uses=1]
- %tmp89 = getelementptr [8192 x i8]* %buf, i32 0, i32 %buf_pos.0 ; <i8*> [#uses=1]
- %tmp90 = sub i32 %buf_size.0, %buf_pos.0 ; <i32> [#uses=1]
- %tmp91 = insertvalue %"byte[]" undef, i32 %tmp90, 0 ; <%"byte[]"> [#uses=1]
- %tmp92 = insertvalue %"byte[]" %tmp91, i8* %tmp89, 1 ; <%"byte[]"> [#uses=1]
- %tmp94 = invoke fastcc i32 %"data.socket().send"(%tango.net.Socket.Socket* %tmp82, %"byte[]" %tmp92, i32 0)
- to label %postinvoke93 unwind label %landingpad ; <i32> [#uses=4]
-
-postinvoke93: ; preds = %postinvoke81
- %tmp96 = icmp eq i32 %tmp94, -1 ; <i1> [#uses=1]
- br i1 %tmp96, label %endwhile, label %endif98
-
-endif98: ; preds = %postinvoke93
- %tmp102 = add i32 %buf_pos.0, %tmp94 ; <i32> [#uses=2]
- %tmp105 = add i32 %pos.0, %tmp94 ; <i32> [#uses=3]
- %tmp107 = icmp eq i8* %progress_arg157, null ; <i1> [#uses=1]
- %tmp108 = icmp eq void (i8*, i32)* %progress_arg158, null ; <i1> [#uses=1]
- %tmp109 = and i1 %tmp107, %tmp108 ; <i1> [#uses=1]
- br i1 %tmp109, label %endif112, label %if111
-
-if111: ; preds = %endif98
- invoke fastcc void %progress_arg158(i8* %progress_arg157, i32 %tmp105)
- to label %endif112 unwind label %landingpad
-
-endif112: ; preds = %if111, %endif98
- %tmp120 = icmp eq i32 %tmp94, 0 ; <i1> [#uses=1]
- br i1 %tmp120, label %whilecond, label %if121
-
-if121: ; preds = %endif112
- invoke fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret %.rettmp123)
- to label %postinvoke124 unwind label %landingpad
-
-postinvoke124: ; preds = %if121
- %tmp128 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp8 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.timeout@vtbl129" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp128, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.timeout131 = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.timeout@vtbl129", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- invoke fastcc void %this.timeout131(%tango.time.Time.Time* noalias nocapture sret %.rettmp132, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- to label %postinvoke133 unwind label %landingpad
-
-postinvoke133: ; preds = %postinvoke124
- %.rettmp132.0 = getelementptr %tango.time.Time.Time* %.rettmp132, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp194 = load i64* %.rettmp132.0, align 8 ; <i64> [#uses=1]
- %tmp1.i = getelementptr %tango.time.Time.Time* %.rettmp123, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp3.i = load i64* %tmp1.i, align 8 ; <i64> [#uses=1]
- %tmp5.i171 = add i64 %tmp3.i, %tmp194 ; <i64> [#uses=1]
- br label %whilecond
-
-endwhile: ; preds = %postinvoke93, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit, %postinvoke19, %whilecond
- %completed.3 = phi i1 [ %completed.2, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit ], [ %completed.1, %postinvoke93 ], [ %completed.2, %postinvoke19 ], [ %completed.2, %whilecond ], [ %completed.2, %_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetS5tango4time4Time8TimeSpanZi.exit ] ; <i1> [#uses=1]
- br i1 %completed.3, label %finally, label %if138
-
-if138: ; preds = %endwhile
- %.newclass_gc_alloc141 = invoke noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ)
- to label %postinvoke140 unwind label %landingpad ; <i8*> [#uses=6]
-
-postinvoke140: ; preds = %if138
- %vtbl143 = bitcast i8* %.newclass_gc_alloc141 to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl143
- %monitor144 = getelementptr i8* %.newclass_gc_alloc141, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor144 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp145 = getelementptr i8* %.newclass_gc_alloc141, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp145, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc141, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* getelementptr ([4 x i8]* @.str164, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc141 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i167 = invoke fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" { i32 33, i8* getelementptr ([34 x i8]* @.str163, i32 0, i32 0) }, %object.Exception* null)
- to label %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit unwind label %landingpad ; <%object.Exception*> [#uses=0]
-
-_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit: ; preds = %postinvoke140
- %tmp151 = bitcast i8* %.newclass_gc_alloc141 to %object.Object* ; <%object.Object*> [#uses=1]
- invoke void @_d_throw_exception(%object.Object* %tmp151)
- to label %postinvoke152 unwind label %landingpad
-
-postinvoke152: ; preds = %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit
- unreachable
-
-finally: ; preds = %endwhile
- %.tmp154 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp154)
- ret void
-
-landingpad: ; preds = %_D5tango3net3ftp9FtpClient12FtpException5_ctorMFAaG3aZC5tango3net3ftp9FtpClient12FtpException.exit, %postinvoke140, %if138, %postinvoke124, %if121, %if111, %postinvoke81, %endif59, %if58, %postinvoke47, %postinvoke38, %postinvoke36, %postinvoke27, %andand, %whilebody, %postinvoke, %entry
- %8 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %9 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %8, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- %.tmp = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp)
- call void @_d_eh_resume_unwind(i8* %8)
- unreachable
-}
-
-define fastcc %"FtpFileInfo[]" @_D5tango3net3ftp9FtpClient13FTPConnection15sendListCommandMFAaZAS5tango3net3ftp9FtpClient11FtpFileInfo(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %.frame.i = alloca %nest.splitLines, align 8 ; <%nest.splitLines*> [#uses=5]
- %.rettmp.i = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %.rettmp8.i = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %__arrayArg148 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpFileInfo, align 8 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=10]
- %path_arg169 = extractvalue %"byte[]" %path_arg, 0 ; <i32> [#uses=2]
- %tmp1 = icmp eq i32 %path_arg169, 0 ; <i1> [#uses=1]
- %tmp3 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=4]
- %tmp4 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.processDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp4, i32 0, i32 45 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.processDataCommand = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.processDataCommand@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=2]
- br i1 %tmp1, label %else, label %if
-
-if: ; preds = %entry
- %path_arg170 = extractvalue %"byte[]" %path_arg, 1 ; <i8*> [#uses=1]
- %tmp6 = getelementptr [1 x %"byte[]"]* %__arrayArg148, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- %insert166 = insertvalue %"byte[]" undef, i32 %path_arg169, 0 ; <%"byte[]"> [#uses=1]
- %insert168 = insertvalue %"byte[]" %insert166, i8* %path_arg170, 1 ; <%"byte[]"> [#uses=1]
- store %"byte[]" %insert168, %"byte[]"* %tmp6, align 8
- %tmp9 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp6, 1 ; <%"char[][]"> [#uses=1]
- %tmp10 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str165, i32 0, i32 0) }, %"char[][]" %tmp9) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
- br label %endif
-
-else: ; preds = %entry
- %tmp17 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str166, i32 0, i32 0) }, %"char[][]" zeroinitializer) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=1]
- br label %endif
-
-endif: ; preds = %else, %if
- %data.0 = phi %tango.net.SocketConduit.SocketConduit* [ %tmp10, %if ], [ %tmp17, %else ] ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango2io6device5Array5Array7__ClassZ) ; <i8*> [#uses=9]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Array.Array* ; <%tango.io.device.Array.Array*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Array.Array.__vtbl** ; <%tango.io.device.Array.Array.__vtbl**> [#uses=2]
- store %tango.io.device.Array.Array.__vtbl* @_D5tango2io6device5Array5Array6__vtblZ, %tango.io.device.Array.Array.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp18 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp18, i8* bitcast (%4** getelementptr (%tango.io.device.Array.Array* bitcast (%26* @_D5tango2io6device5Array5Array6__initZ to %tango.io.device.Array.Array*), i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp2.i = load %tango.io.device.Array.Array.__vtbl** %vtbl ; <%tango.io.device.Array.Array.__vtbl*> [#uses=1]
- %"this.assign@vtbl.i" = getelementptr %tango.io.device.Array.Array.__vtbl* %tmp2.i, i32 0, i32 15 ; <%tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]", i32)**> [#uses=1]
- %this.assign.i = load %tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]", i32)** %"this.assign@vtbl.i", align 4 ; <%tango.io.device.Array.Array* (%tango.io.device.Array.Array*, %"byte[]", i32)*> [#uses=1]
- %.gc_mem.i = call noalias i8* @_d_newarrayT(%object.TypeInfo* @_D11TypeInfo_Ah6__initZ, i32 256) ; <i8*> [#uses=1]
- %tmp5.i = insertvalue %"byte[]" undef, i32 256, 0 ; <%"byte[]"> [#uses=1]
- %tmp6.i = insertvalue %"byte[]" %tmp5.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp7.i = call fastcc %tango.io.device.Array.Array* %this.assign.i(%tango.io.device.Array.Array* %.newclass_gc, %"byte[]" %tmp6.i, i32 0) ; <%tango.io.device.Array.Array*> [#uses=0]
- %tmp9.i = getelementptr i8* %.newclass_gc_alloc, i32 36 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp9.i to i32* ; <i32*> [#uses=1]
- store i32 65536, i32* %1
- %tmp25 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readStream@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp25, i32 0, i32 47 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")**> [#uses=1]
- %this.readStream = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")** %"this.readStream@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")*> [#uses=1]
- %tmp29 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %tmp30 = bitcast i8* %tmp29 to %tango.io.model.IConduit.OutputStream* ; <%tango.io.model.IConduit.OutputStream*> [#uses=1]
- call fastcc void %this.readStream(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %data.0, %tango.io.model.IConduit.OutputStream* %tmp30, %"void delegate(uint pos)" zeroinitializer)
- %tmp33 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.finishDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp33, i32 0, i32 44 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.finishDataCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)** %"this.finishDataCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %this.finishDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %data.0)
- %tmp2.i171 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp2.i171 to i8** ; <i8**> [#uses=1]
- %.ptr.i = load i8** %2 ; <i8*> [#uses=1]
- %tmp4.i = getelementptr i8* %.newclass_gc_alloc, i32 24 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp4.i to i32* ; <i32*> [#uses=1]
- %tmp6.i172 = getelementptr i8* %.newclass_gc_alloc, i32 28 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp6.i172 to i32* ; <i32*> [#uses=1]
- %tmp7.i173 = load i32* %3 ; <i32> [#uses=2]
- %tmp8.i = load i32* %4 ; <i32> [#uses=1]
- %tmp9.i174 = getelementptr i8* %.ptr.i, i32 %tmp7.i173 ; <i8*> [#uses=2]
- %tmp10.i = sub i32 %tmp8.i, %tmp7.i173 ; <i32> [#uses=2]
- %count.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 0 ; <i32*> [#uses=3]
- %result.i = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1 ; <%"char[][]"*> [#uses=1]
- store i32 0, i32* %count.i, align 8
- %5 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp10.i, i32* %5, align 8
- %.sret_arg10.1.i.i = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp9.i174, i8** %.sret_arg10.1.i.i, align 4
- %tmp1.i186 = bitcast %nest.splitLines* %.frame.i to i8* ; <i8*> [#uses=2]
- %tmp2.i187 = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1.i186, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func.i = insertvalue %"int delegate(ref char[])" %tmp2.i187, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody41MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp3.i = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp.i, %"int delegate(ref char[])" %.func.i) ; <i32> [#uses=0]
- %tmp4.i188 = load i32* %count.i, align 8 ; <i32> [#uses=2]
- %.gc_mem.i189 = call noalias i8* @_d_newarrayT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D12TypeInfo_AAa6__initZ to %object.TypeInfo*), i32 %tmp4.i188) ; <i8*> [#uses=1]
- %.gc_mem5.i = bitcast i8* %.gc_mem.i189 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp6.i190 = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4.i188, i32* %tmp6.i190
- %tmp7.i191 = getelementptr %nest.splitLines* %.frame.i, i32 0, i32 1, i32 1 ; <%"byte[]"**> [#uses=1]
- store %"byte[]"* %.gc_mem5.i, %"byte[]"** %tmp7.i191
- store i32 0, i32* %count.i, align 8
- %6 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp10.i, i32* %6, align 8
- %.sret_arg10.1.i17.i = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp9.i174, i8** %.sret_arg10.1.i17.i, align 4
- %tmp11.i192 = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1.i186, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func12.i = insertvalue %"int delegate(ref char[])" %tmp11.i192, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody42MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp13.i = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8.i, %"int delegate(ref char[])" %.func12.i) ; <i32> [#uses=0]
- %tmp14.i = load %"char[][]"* %result.i ; <%"char[][]"> [#uses=2]
- %tmp41159 = extractvalue %"char[][]" %tmp14.i, 0 ; <i32> [#uses=3]
- %tmp41160 = extractvalue %"char[][]" %tmp14.i, 1 ; <%"byte[]"*> [#uses=3]
- br label %foreachcond
-
-foreachcond: ; preds = %foreachnext, %endif
- %dir.1.1 = phi %tango.net.ftp.FtpClient.FtpFileInfo* [ null, %endif ], [ %dir.1.0, %foreachnext ] ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=5]
- %dir.0.1 = phi i32 [ 0, %endif ], [ %dir.0.0, %foreachnext ] ; <i32> [#uses=15]
- %foreachkey.0 = phi i32 [ 0, %endif ], [ %tmp99, %foreachnext ] ; <i32> [#uses=3]
- %tmp51 = icmp ult i32 %foreachkey.0, %tmp41159 ; <i1> [#uses=1]
- br i1 %tmp51, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp53 = getelementptr %"byte[]"* %tmp41160, i32 %foreachkey.0 ; <%"byte[]"*> [#uses=1]
- %tmp54 = load %"byte[]"* %tmp53 ; <%"byte[]"> [#uses=2]
- %tmp54157 = extractvalue %"byte[]" %tmp54, 0 ; <i32> [#uses=7]
- %tmp54158 = extractvalue %"byte[]" %tmp54, 1 ; <i8*> [#uses=4]
- %tmp57 = icmp eq i32 %tmp54157, 0 ; <i1> [#uses=1]
- br i1 %tmp57, label %foreachnext, label %endif59
-
-endif59: ; preds = %foreachbody
- %tmp2.i.i = getelementptr i8* %tmp54158, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %endif59
- %len.0.i.i = phi i32 [ %tmp54157, %endif59 ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %p.0.i.i = phi i8* [ %tmp2.i.i, %endif59 ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp12.i.i = icmp eq i8 %tmp8.i.i, 32 ; <i1> [#uses=1]
- br i1 %tmp12.i.i, label %if.i.i, label %forcond.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp15.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp16.i.i = ptrtoint i8* %tmp54158 to i32 ; <i32> [#uses=1]
- %tmp17.i.i = sub i32 %tmp15.i.i, %tmp16.i.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
-
-_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit: ; preds = %if.i.i, %forcond.i.i
- %tmp1318.i = phi i32 [ %tmp17.i.i, %if.i.i ], [ %tmp54157, %forcond.i.i ] ; <i32> [#uses=1]
- %tmp2.i175 = icmp eq i32 %tmp54157, -1 ; <i1> [#uses=1]
- br i1 %tmp2.i175, label %whilecond.i, label %if.i
-
-if.i: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- br label %whilecond.i
-
-whilecond.i: ; preds = %whilebody.i, %if.i, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %start.0.i = phi i32 [ %tmp54157, %if.i ], [ %tmp8.i177, %whilebody.i ], [ -1, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit ] ; <i32> [#uses=2]
- %tmp6.i176 = icmp eq i32 %start.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp6.i176, label %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit, label %whilebody.i
-
-whilebody.i: ; preds = %whilecond.i
- %tmp8.i177 = add i32 %start.0.i, -1 ; <i32> [#uses=3]
- %tmp10.i178 = getelementptr i8* %tmp54158, i32 %tmp8.i177 ; <i8*> [#uses=1]
- %tmp11.i179 = load i8* %tmp10.i178 ; <i8> [#uses=1]
- %tmp15.i = icmp eq i8 %tmp11.i179, 32 ; <i1> [#uses=1]
- br i1 %tmp15.i, label %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit, label %whilecond.i
-
-_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit: ; preds = %whilebody.i, %whilecond.i
- %tmp64180 = phi i32 [ %tmp8.i177, %whilebody.i ], [ %tmp54157, %whilecond.i ] ; <i32> [#uses=1]
- %tmp65 = icmp eq i32 %tmp1318.i, %tmp64180 ; <i1> [#uses=1]
- br i1 %tmp65, label %foreachnext, label %endif67
-
-endif67: ; preds = %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit
- %tmp71 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.parseListLine@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp71, i32 0, i32 50 ; <void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.parseListLine = load void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.parseListLine@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpFileInfo*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %insert = insertvalue %"byte[]" undef, i32 %tmp54157, 0 ; <%"byte[]"> [#uses=1]
- %insert148 = insertvalue %"byte[]" %insert, i8* %tmp54158, 1 ; <%"byte[]"> [#uses=1]
- invoke fastcc void %this.parseListLine(%tango.net.ftp.FtpClient.FtpFileInfo* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %insert148)
- to label %postinvoke74 unwind label %landingpad
-
-postinvoke74: ; preds = %endif67
- %.rettmp141.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp142 = load i32* %.rettmp141.0, align 8 ; <i32> [#uses=2]
- %.rettmp141.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- %tmp143 = load i8** %.rettmp141.1, align 4 ; <i8*> [#uses=1]
- %.rettmp.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 1 ; <i32*> [#uses=1]
- %tmp124 = load i32* %.rettmp.1, align 8 ; <i32> [#uses=1]
- %.rettmp.2 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 2 ; <i64*> [#uses=1]
- %tmp125 = load i64* %.rettmp.2, align 4 ; <i64> [#uses=1]
- %.rettmp.3.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 3, i32 0 ; <i64*> [#uses=1]
- %tmp139 = load i64* %.rettmp.3.0, align 4 ; <i64> [#uses=1]
- %.rettmp.4.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 4, i32 0 ; <i64*> [#uses=1]
- %tmp137 = load i64* %.rettmp.4.0, align 4 ; <i64> [#uses=1]
- %.rettmp.5.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- %tmp133 = load i32* %.rettmp.5.0, align 4 ; <i32> [#uses=1]
- %.rettmp.5.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 5, i32 1 ; <i8**> [#uses=1]
- %tmp134 = load i8** %.rettmp.5.1, align 4 ; <i8*> [#uses=1]
- %.rettmp.6 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.rettmp, i32 0, i32 6 ; <i8**> [#uses=1]
- %tmp132 = load i8** %.rettmp.6, align 4 ; <i8*> [#uses=1]
- %tmp80 = icmp eq i32 %tmp142, 0 ; <i1> [#uses=1]
- br i1 %tmp80, label %foreachnext, label %if81
-
-if81: ; preds = %postinvoke74
- %tmp85 = add i32 %dir.0.1, 1 ; <i32> [#uses=2]
- %tmp90 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %dir.1.1 to i8* ; <i8*> [#uses=1]
- %.gc_mem = invoke i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D48TypeInfo_AS5tango3net3ftp9FtpClient11FtpFileInfo6__initZ to %object.TypeInfo*), i32 %tmp85, i32 %dir.0.1, i8* %tmp90)
- to label %postinvoke91 unwind label %landingpad ; <i8*> [#uses=1]
-
-postinvoke91: ; preds = %if81
- %.gc_mem92 = bitcast i8* %.gc_mem to %tango.net.ftp.FtpClient.FtpFileInfo* ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=10]
- %7 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp142, i32* %7
- %tmp93144.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp143, i8** %tmp93144.1, align 4
- %tmp93.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 1 ; <i32*> [#uses=1]
- store i32 %tmp124, i32* %tmp93.1, align 8
- %tmp93.2 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 2 ; <i64*> [#uses=1]
- store i64 %tmp125, i64* %tmp93.2, align 4
- %tmp93.3.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 3, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp139, i64* %tmp93.3.0, align 4
- %tmp93.4.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 4, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp137, i64* %tmp93.4.0, align 4
- %tmp93.5.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 5, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp133, i32* %tmp93.5.0, align 4
- %tmp93.5.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 5, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp134, i8** %tmp93.5.1, align 4
- %tmp93.6 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.gc_mem92, i32 %dir.0.1, i32 6 ; <i8**> [#uses=1]
- store i8* %tmp132, i8** %tmp93.6, align 4
- br label %foreachnext
-
-foreachnext: ; preds = %postinvoke91, %postinvoke74, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit, %foreachbody
- %dir.1.0 = phi %tango.net.ftp.FtpClient.FtpFileInfo* [ %dir.1.1, %foreachbody ], [ %dir.1.1, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit ], [ %.gc_mem92, %postinvoke91 ], [ %dir.1.1, %postinvoke74 ] ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=1]
- %dir.0.0 = phi i32 [ %dir.0.1, %foreachbody ], [ %dir.0.1, %_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk.exit ], [ %tmp85, %postinvoke91 ], [ %dir.0.1, %postinvoke74 ] ; <i32> [#uses=1]
- %tmp99 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- %insert162 = insertvalue %"FtpFileInfo[]" undef, i32 %dir.0.1, 0 ; <%"FtpFileInfo[]"> [#uses=1]
- %insert164 = insertvalue %"FtpFileInfo[]" %insert162, %tango.net.ftp.FtpClient.FtpFileInfo* %dir.1.1, 1 ; <%"FtpFileInfo[]"> [#uses=1]
- %.tmp105 = bitcast %"byte[]"* %tmp41160 to i8* ; <i8*> [#uses=1]
- call void @_d_delarray(i32 %tmp41159, i8* %.tmp105)
- ret %"FtpFileInfo[]" %insert164
-
-landingpad: ; preds = %if81, %endif67
- %8 = call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %9 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %8, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- %.tmp = bitcast %"byte[]"* %tmp41160 to i8* ; <i8*> [#uses=1]
- call void @_d_delarray(i32 %tmp41159, i8* %.tmp)
- call void @_d_eh_resume_unwind(i8* %8)
- unreachable
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo(%tango.net.ftp.FtpClient.FtpFileInfo* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* nocapture %.this_arg, %"byte[]" %line_arg) {
-entry:
- %info = alloca %tango.net.ftp.FtpClient.FtpFileInfo, align 8 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=22]
- %aatmpkeystorage = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage114 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage141 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %line_arg830 = extractvalue %"byte[]" %line_arg, 0 ; <i32> [#uses=21]
- %line_arg831 = extractvalue %"byte[]" %line_arg, 1 ; <i8*> [#uses=28]
- %tmp2 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %info to i8* ; <i8*> [#uses=6]
- call void @llvm.memcpy.i32(i8* %tmp2, i8* bitcast (%tango.net.ftp.FtpClient.FtpFileInfo* @_D5tango3net3ftp9FtpClient11FtpFileInfo6__initZ to i8*), i32 48, i32 4)
- %tmp5 = load i8* %line_arg831 ; <i8> [#uses=3]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %entry
- %len.0.i.i = phi i32 [ 10, %entry ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %p.0.i.i = phi i8* [ getelementptr ([11 x i8]* @.str167, i32 0, i32 -1), %entry ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp12.i.i = icmp eq i8 %tmp8.i.i, %tmp5 ; <i1> [#uses=1]
- br i1 %tmp12.i.i, label %if.i.i, label %forcond.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp15.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp17.i.i = sub i32 %tmp15.i.i, ptrtoint ([11 x i8]* @.str167 to i32) ; <i32> [#uses=1]
- %phitmp640 = icmp eq i32 %tmp17.i.i, 10 ; <i1> [#uses=1]
- %phitmp641 = zext i1 %phitmp640 to i32 ; <i32> [#uses=1]
- br label %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit
-
-_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit: ; preds = %if.i.i, %forcond.i.i
- %tmp39.i = phi i32 [ %phitmp641, %if.i.i ], [ 1, %forcond.i.i ] ; <i32> [#uses=1]
- switch i32 %tmp39.i, label %default223 [
- i32 1, label %case
- i32 0, label %case145
- ]
-
-case: ; preds = %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit
- %tmp9 = icmp ult i32 %line_arg830, 20 ; <i1> [#uses=1]
- br i1 %tmp9, label %if, label %endif
-
-if: ; preds = %case
- %tmp10 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp10, i8* %tmp2, i32 48, i32 1)
- ret void
-
-endif: ; preds = %case
- switch i8 %tmp5, label %else29 [
- i8 100, label %if18
- i8 108, label %if27
- ]
-
-if18: ; preds = %endif
- %tmp20 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 4, i32* %tmp20, align 8
- br label %endif19
-
-if27: ; preds = %endif
- %tmp30 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 5, i32* %tmp30, align 8
- br label %endif19
-
-else29: ; preds = %endif
- %tmp36 = icmp eq i8 %tmp5, 45 ; <i1> [#uses=1]
- %tmp40 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=2]
- br i1 %tmp36, label %if37, label %else39
-
-if37: ; preds = %else29
- store i32 1, i32* %tmp40, align 8
- br label %endif19
-
-else39: ; preds = %else29
- store i32 0, i32* %tmp40, align 8
- br label %endif19
-
-endif19: ; preds = %else39, %if37, %if27, %if18
- %tmp42 = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_StaticArray* @_D12TypeInfo_G4a6__initZ to %object.TypeInfo*), %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str168, i32 0, i32 0) }) ; <%"byte[]"> [#uses=2]
- %tmp42834 = extractvalue %"byte[]" %tmp42, 0 ; <i32> [#uses=1]
- %tmp42835 = extractvalue %"byte[]" %tmp42, 1 ; <i8*> [#uses=10]
- br label %forcond.i
-
-forcond.i: ; preds = %forinc.i, %endif19
- %storemerge.i = phi i32 [ %tmp106.i, %forinc.i ], [ 1, %endif19 ] ; <i32> [#uses=1]
- %tmp77.i286 = phi i32 [ %tmp106.i, %forinc.i ], [ 1, %endif19 ] ; <i32> [#uses=2]
- %tmp10.i = icmp ugt i32 %tmp77.i286, 3 ; <i1> [#uses=1]
- br i1 %tmp10.i, label %forcond.i295, label %forbody.i
-
-forbody.i: ; preds = %forcond.i
- %tmp16.i = getelementptr i8* %line_arg831, i32 %tmp77.i286 ; <i8*> [#uses=1]
- %tmp17.i = load i8* %tmp16.i ; <i8> [#uses=1]
- switch i8 %tmp17.i, label %forinc.i [
- i8 114, label %if.i
- i8 119, label %if49.i
- i8 120, label %if82.i
- ]
-
-if.i: ; preds = %forbody.i
- %tmp25.i = getelementptr i8* %tmp42835, i32 1 ; <i8*> [#uses=2]
- %tmp33.i = load i8* %tmp25.i ; <i8> [#uses=1]
- %tmp35.i = or i8 %tmp33.i, 4 ; <i8> [#uses=1]
- store i8 %tmp35.i, i8* %tmp25.i
- br label %forinc.i
-
-if49.i: ; preds = %forbody.i
- %tmp58.i = getelementptr i8* %tmp42835, i32 1 ; <i8*> [#uses=2]
- %tmp66.i = load i8* %tmp58.i ; <i8> [#uses=1]
- %tmp68.i = or i8 %tmp66.i, 2 ; <i8> [#uses=1]
- store i8 %tmp68.i, i8* %tmp58.i
- br label %forinc.i
-
-if82.i: ; preds = %forbody.i
- %tmp90.i290 = getelementptr i8* %tmp42835, i32 1 ; <i8*> [#uses=2]
- %tmp98.i = load i8* %tmp90.i290 ; <i8> [#uses=1]
- %tmp100.i = or i8 %tmp98.i, 1 ; <i8> [#uses=1]
- store i8 %tmp100.i, i8* %tmp90.i290
- br label %forinc.i
-
-forinc.i: ; preds = %if82.i, %if49.i, %if.i, %forbody.i
- %tmp106.i = add i32 %storemerge.i, 1 ; <i32> [#uses=2]
- br label %forcond.i
-
-forcond.i295: ; preds = %forinc.i326, %forcond.i
- %storemerge.i292 = phi i32 [ %tmp106.i325, %forinc.i326 ], [ 4, %forcond.i ] ; <i32> [#uses=1]
- %tmp77.i293 = phi i32 [ %tmp106.i325, %forinc.i326 ], [ 4, %forcond.i ] ; <i32> [#uses=2]
- %tmp10.i294 = icmp ugt i32 %tmp77.i293, 6 ; <i1> [#uses=1]
- br i1 %tmp10.i294, label %forcond.i332, label %forbody.i301
-
-forbody.i301: ; preds = %forcond.i295
- %tmp16.i298 = getelementptr i8* %line_arg831, i32 %tmp77.i293 ; <i8*> [#uses=1]
- %tmp17.i299 = load i8* %tmp16.i298 ; <i8> [#uses=1]
- switch i8 %tmp17.i299, label %forinc.i326 [
- i8 114, label %if.i307
- i8 119, label %if49.i315
- i8 120, label %if82.i323
- ]
-
-if.i307: ; preds = %forbody.i301
- %tmp25.i304 = getelementptr i8* %tmp42835, i32 2 ; <i8*> [#uses=2]
- %tmp33.i305 = load i8* %tmp25.i304 ; <i8> [#uses=1]
- %tmp35.i306 = or i8 %tmp33.i305, 4 ; <i8> [#uses=1]
- store i8 %tmp35.i306, i8* %tmp25.i304
- br label %forinc.i326
-
-if49.i315: ; preds = %forbody.i301
- %tmp58.i312 = getelementptr i8* %tmp42835, i32 2 ; <i8*> [#uses=2]
- %tmp66.i313 = load i8* %tmp58.i312 ; <i8> [#uses=1]
- %tmp68.i314 = or i8 %tmp66.i313, 2 ; <i8> [#uses=1]
- store i8 %tmp68.i314, i8* %tmp58.i312
- br label %forinc.i326
-
-if82.i323: ; preds = %forbody.i301
- %tmp90.i320 = getelementptr i8* %tmp42835, i32 2 ; <i8*> [#uses=2]
- %tmp98.i321 = load i8* %tmp90.i320 ; <i8> [#uses=1]
- %tmp100.i322 = or i8 %tmp98.i321, 1 ; <i8> [#uses=1]
- store i8 %tmp100.i322, i8* %tmp90.i320
- br label %forinc.i326
-
-forinc.i326: ; preds = %if82.i323, %if49.i315, %if.i307, %forbody.i301
- %tmp106.i325 = add i32 %storemerge.i292, 1 ; <i32> [#uses=2]
- br label %forcond.i295
-
-forcond.i332: ; preds = %forinc.i363, %forcond.i295
- %storemerge.i329 = phi i32 [ %tmp106.i362, %forinc.i363 ], [ 7, %forcond.i295 ] ; <i32> [#uses=3]
- %tmp77.i330 = phi i32 [ %tmp106.i362, %forinc.i363 ], [ 7, %forcond.i295 ] ; <i32> [#uses=2]
- %tmp10.i331 = icmp ugt i32 %tmp77.i330, 9 ; <i1> [#uses=1]
- br i1 %tmp10.i331, label %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo9read_modeMFiZv.exit364, label %forbody.i338
-
-forbody.i338: ; preds = %forcond.i332
- %tmp16.i335 = getelementptr i8* %line_arg831, i32 %tmp77.i330 ; <i8*> [#uses=1]
- %tmp17.i336 = load i8* %tmp16.i335 ; <i8> [#uses=1]
- switch i8 %tmp17.i336, label %forinc.i363 [
- i8 114, label %if.i344
- i8 119, label %if49.i352
- i8 120, label %if82.i360
- ]
-
-if.i344: ; preds = %forbody.i338
- %tmp25.i341 = getelementptr i8* %tmp42835, i32 3 ; <i8*> [#uses=2]
- %tmp33.i342 = load i8* %tmp25.i341 ; <i8> [#uses=1]
- %tmp35.i343 = or i8 %tmp33.i342, 4 ; <i8> [#uses=1]
- store i8 %tmp35.i343, i8* %tmp25.i341
- br label %forinc.i363
-
-if49.i352: ; preds = %forbody.i338
- %tmp58.i349 = getelementptr i8* %tmp42835, i32 3 ; <i8*> [#uses=2]
- %tmp66.i350 = load i8* %tmp58.i349 ; <i8> [#uses=1]
- %tmp68.i351 = or i8 %tmp66.i350, 2 ; <i8> [#uses=1]
- store i8 %tmp68.i351, i8* %tmp58.i349
- br label %forinc.i363
-
-if82.i360: ; preds = %forbody.i338
- %tmp90.i357 = getelementptr i8* %tmp42835, i32 3 ; <i8*> [#uses=2]
- %tmp98.i358 = load i8* %tmp90.i357 ; <i8> [#uses=1]
- %tmp100.i359 = or i8 %tmp98.i358, 1 ; <i8> [#uses=1]
- store i8 %tmp100.i359, i8* %tmp90.i357
- br label %forinc.i363
-
-forinc.i363: ; preds = %if82.i360, %if49.i352, %if.i344, %forbody.i338
- %tmp106.i362 = add i32 %storemerge.i329, 1 ; <i32> [#uses=2]
- br label %forcond.i332
-
-_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo9read_modeMFiZv.exit364: ; preds = %forcond.i332
- %tmp46 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 6 ; <i8**> [#uses=1]
- %tmp47 = bitcast i8** %tmp46 to %32* ; <%32*> [#uses=3]
- store %"byte[]" { i32 9, i8* getelementptr ([10 x i8]* @.str169, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage, align 8
- %tmp48 = bitcast %"byte[]"* %aatmpkeystorage to i8* ; <i8*> [#uses=1]
- %aa.index = call i8* @_aaGet(%32* nocapture %tmp47, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 8, i8* nocapture %tmp48) ; <i8*> [#uses=1]
- %tmp49 = bitcast i8* %aa.index to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %insert837 = insertvalue %"byte[]" undef, i32 %tmp42834, 0 ; <%"byte[]"> [#uses=1]
- %insert839 = insertvalue %"byte[]" %insert837, i8* %tmp42835, 1 ; <%"byte[]"> [#uses=1]
- store %"byte[]" %insert839, %"byte[]"* %tmp49
- br label %whilecond.i370
-
-whilecond.i370: ; preds = %whilebody.i372, %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo9read_modeMFiZv.exit364
- %.frame.0.11 = phi i32 [ %storemerge.i329, %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo9read_modeMFiZv.exit364 ], [ %tmp18.i371.c, %whilebody.i372 ] ; <i32> [#uses=2]
- %tmp3.i368 = phi i32 [ %tmp18.i371.c, %whilebody.i372 ], [ %storemerge.i329, %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo9read_modeMFiZv.exit364 ] ; <i32> [#uses=5]
- %tmp4.i369 = icmp ult i32 %tmp3.i368, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp4.i369, label %andand.i378, label %whilecond22.i383
-
-whilebody.i372: ; preds = %andand.i378
- %tmp18.i371.c = add i32 %tmp3.i368, 1 ; <i32> [#uses=2]
- br label %whilecond.i370
-
-andand.i378: ; preds = %whilecond.i370
- %tmp11.i375 = getelementptr i8* %line_arg831, i32 %tmp3.i368 ; <i8*> [#uses=1]
- %tmp12.i376 = load i8* %tmp11.i375 ; <i8> [#uses=1]
- %tmp14.i377 = icmp eq i8 %tmp12.i376, 32 ; <i1> [#uses=1]
- br i1 %tmp14.i377, label %whilebody.i372, label %whilecond22.i383
-
-whilecond22.i383: ; preds = %whilebody23.i385, %andand.i378, %whilecond.i370
- %.frame.0.10 = phi i32 [ %.frame.0.11, %andand.i378 ], [ %tmp50.i384, %whilebody23.i385 ], [ %.frame.0.11, %whilecond.i370 ] ; <i32> [#uses=2]
- %tmp49.i381 = phi i32 [ %tmp3.i368, %andand.i378 ], [ %tmp50.i384, %whilebody23.i385 ], [ %tmp3.i368, %whilecond.i370 ] ; <i32> [#uses=5]
- %tmp32.i382 = icmp ult i32 %tmp49.i381, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp32.i382, label %andand33.i391, label %whilecond54.i396
-
-whilebody23.i385: ; preds = %andand33.i391
- %tmp50.i384 = add i32 %tmp49.i381, 1 ; <i32> [#uses=2]
- br label %whilecond22.i383
-
-andand33.i391: ; preds = %whilecond22.i383
- %tmp42.i388 = getelementptr i8* %line_arg831, i32 %tmp49.i381 ; <i8*> [#uses=1]
- %tmp43.i389 = load i8* %tmp42.i388 ; <i8> [#uses=1]
- %tmp45.i390 = icmp eq i8 %tmp43.i389, 32 ; <i1> [#uses=1]
- br i1 %tmp45.i390, label %whilecond54.i396, label %whilebody23.i385
-
-whilecond54.i396: ; preds = %whilebody55.i401, %andand33.i391, %whilecond22.i383
- %.frame.0.9 = phi i32 [ %.frame.0.10, %andand33.i391 ], [ %tmp82.i400, %whilebody55.i401 ], [ %.frame.0.10, %whilecond22.i383 ] ; <i32> [#uses=2]
- %tmp81.i394 = phi i32 [ %tmp49.i381, %andand33.i391 ], [ %tmp82.i400, %whilebody55.i401 ], [ %tmp49.i381, %whilecond22.i383 ] ; <i32> [#uses=3]
- %tmp64.i395 = icmp ult i32 %tmp81.i394, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp64.i395, label %andand65.i407, label %whilecond.i716
-
-whilebody55.i401: ; preds = %andand65.i407
- %tmp82.i400 = add i32 %tmp81.i394, 1 ; <i32> [#uses=2]
- br label %whilecond54.i396
-
-andand65.i407: ; preds = %whilecond54.i396
- %tmp74.i404 = getelementptr i8* %line_arg831, i32 %tmp81.i394 ; <i8*> [#uses=1]
- %tmp75.i405 = load i8* %tmp74.i404 ; <i8> [#uses=1]
- %tmp77.i406 = icmp eq i8 %tmp75.i405, 32 ; <i1> [#uses=1]
- br i1 %tmp77.i406, label %whilebody55.i401, label %whilecond.i716
-
-whilecond.i716: ; preds = %whilebody.i717, %andand65.i407, %whilecond54.i396
- %.frame.0.0 = phi i32 [ %tmp18.i.c829, %whilebody.i717 ], [ %.frame.0.9, %whilecond54.i396 ], [ %.frame.0.9, %andand65.i407 ] ; <i32> [#uses=7]
- %tmp4.i715 = icmp ult i32 %.frame.0.0, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp4.i715, label %andand.i721, label %whilecond22.i724
-
-whilebody.i717: ; preds = %andand.i721
- %tmp18.i.c829 = add i32 %.frame.0.0, 1 ; <i32> [#uses=1]
- br label %whilecond.i716
-
-andand.i721: ; preds = %whilecond.i716
- %tmp11.i718 = getelementptr i8* %line_arg831, i32 %.frame.0.0 ; <i8*> [#uses=1]
- %tmp12.i719 = load i8* %tmp11.i718 ; <i8> [#uses=1]
- %tmp14.i720 = icmp eq i8 %tmp12.i719, 32 ; <i1> [#uses=1]
- br i1 %tmp14.i720, label %whilebody.i717, label %whilecond22.i724
-
-whilecond22.i724: ; preds = %whilebody23.i726, %andand.i721, %whilecond.i716
- %.frame.0.1 = phi i32 [ %.frame.0.0, %andand.i721 ], [ %tmp50.i725, %whilebody23.i726 ], [ %.frame.0.0, %whilecond.i716 ] ; <i32> [#uses=2]
- %tmp49.i722 = phi i32 [ %.frame.0.0, %andand.i721 ], [ %tmp50.i725, %whilebody23.i726 ], [ %.frame.0.0, %whilecond.i716 ] ; <i32> [#uses=5]
- %tmp32.i723 = icmp ult i32 %tmp49.i722, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp32.i723, label %andand33.i731, label %whilecond54.i734
-
-whilebody23.i726: ; preds = %andand33.i731
- %tmp50.i725 = add i32 %tmp49.i722, 1 ; <i32> [#uses=2]
- br label %whilecond22.i724
-
-andand33.i731: ; preds = %whilecond22.i724
- %tmp42.i728 = getelementptr i8* %line_arg831, i32 %tmp49.i722 ; <i8*> [#uses=1]
- %tmp43.i729 = load i8* %tmp42.i728 ; <i8> [#uses=1]
- %tmp45.i730 = icmp eq i8 %tmp43.i729, 32 ; <i1> [#uses=1]
- br i1 %tmp45.i730, label %whilecond54.i734, label %whilebody23.i726
-
-whilecond54.i734: ; preds = %whilebody55.i736, %andand33.i731, %whilecond22.i724
- %.frame.0.2 = phi i32 [ %.frame.0.1, %andand33.i731 ], [ %tmp82.i735, %whilebody55.i736 ], [ %.frame.0.1, %whilecond22.i724 ] ; <i32> [#uses=2]
- %tmp81.i732 = phi i32 [ %tmp49.i722, %andand33.i731 ], [ %tmp82.i735, %whilebody55.i736 ], [ %tmp49.i722, %whilecond22.i724 ] ; <i32> [#uses=3]
- %tmp64.i733 = icmp ult i32 %tmp81.i732, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp64.i733, label %andand65.i740, label %whilecond.i750
-
-whilebody55.i736: ; preds = %andand65.i740
- %tmp82.i735 = add i32 %tmp81.i732, 1 ; <i32> [#uses=2]
- br label %whilecond54.i734
-
-andand65.i740: ; preds = %whilecond54.i734
- %tmp74.i737 = getelementptr i8* %line_arg831, i32 %tmp81.i732 ; <i8*> [#uses=1]
- %tmp75.i738 = load i8* %tmp74.i737 ; <i8> [#uses=1]
- %tmp77.i739 = icmp eq i8 %tmp75.i738, 32 ; <i1> [#uses=1]
- br i1 %tmp77.i739, label %whilebody55.i736, label %whilecond.i750
-
-whilecond.i750: ; preds = %whilebody.i752, %andand65.i740, %whilecond54.i734
- %.frame.0.3 = phi i32 [ %tmp18.i751.c, %whilebody.i752 ], [ %.frame.0.2, %whilecond54.i734 ], [ %.frame.0.2, %andand65.i740 ] ; <i32> [#uses=11]
- %tmp4.i749 = icmp ult i32 %.frame.0.3, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp4.i749, label %andand.i758, label %whilecond22.i761
-
-whilebody.i752: ; preds = %andand.i758
- %tmp18.i751.c = add i32 %.frame.0.3, 1 ; <i32> [#uses=1]
- br label %whilecond.i750
-
-andand.i758: ; preds = %whilecond.i750
- %tmp11.i755 = getelementptr i8* %line_arg831, i32 %.frame.0.3 ; <i8*> [#uses=1]
- %tmp12.i756 = load i8* %tmp11.i755 ; <i8> [#uses=1]
- %tmp14.i757 = icmp eq i8 %tmp12.i756, 32 ; <i1> [#uses=1]
- br i1 %tmp14.i757, label %whilebody.i752, label %whilecond22.i761
-
-whilecond22.i761: ; preds = %whilebody23.i763, %andand.i758, %whilecond.i750
- %.frame.0.4 = phi i32 [ %.frame.0.3, %andand.i758 ], [ %tmp50.i762, %whilebody23.i763 ], [ %.frame.0.3, %whilecond.i750 ] ; <i32> [#uses=2]
- %tmp49.i759 = phi i32 [ %.frame.0.3, %andand.i758 ], [ %tmp50.i762, %whilebody23.i763 ], [ %.frame.0.3, %whilecond.i750 ] ; <i32> [#uses=7]
- %tmp32.i760 = icmp ult i32 %tmp49.i759, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp32.i760, label %andand33.i769, label %whilecond54.i773
-
-whilebody23.i763: ; preds = %andand33.i769
- %tmp50.i762 = add i32 %tmp49.i759, 1 ; <i32> [#uses=2]
- br label %whilecond22.i761
-
-andand33.i769: ; preds = %whilecond22.i761
- %tmp42.i766 = getelementptr i8* %line_arg831, i32 %tmp49.i759 ; <i8*> [#uses=1]
- %tmp43.i767 = load i8* %tmp42.i766 ; <i8> [#uses=1]
- %tmp45.i768 = icmp eq i8 %tmp43.i767, 32 ; <i1> [#uses=1]
- br i1 %tmp45.i768, label %whilecond54.i773, label %whilebody23.i763
-
-whilecond54.i773: ; preds = %whilebody55.i775, %andand33.i769, %whilecond22.i761
- %.frame.0.5 = phi i32 [ %.frame.0.4, %andand33.i769 ], [ %tmp82.i774, %whilebody55.i775 ], [ %.frame.0.4, %whilecond22.i761 ] ; <i32> [#uses=3]
- %tmp81.i770 = phi i32 [ %tmp49.i759, %andand33.i769 ], [ %tmp82.i774, %whilebody55.i775 ], [ %tmp49.i759, %whilecond22.i761 ] ; <i32> [#uses=3]
- %tmp64.i771 = icmp ult i32 %tmp81.i770, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp64.i771, label %andand65.i780, label %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit786
-
-whilebody55.i775: ; preds = %andand65.i780
- %tmp82.i774 = add i32 %tmp81.i770, 1 ; <i32> [#uses=2]
- br label %whilecond54.i773
-
-andand65.i780: ; preds = %whilecond54.i773
- %tmp74.i777 = getelementptr i8* %line_arg831, i32 %tmp81.i770 ; <i8*> [#uses=1]
- %tmp75.i778 = load i8* %tmp74.i777 ; <i8> [#uses=1]
- %tmp77.i779 = icmp eq i8 %tmp75.i778, 32 ; <i1> [#uses=1]
- br i1 %tmp77.i779, label %whilebody55.i775, label %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit786
-
-_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit786: ; preds = %andand65.i780, %whilecond54.i773
- %tmp89.i782 = getelementptr i8* %line_arg831, i32 %.frame.0.3 ; <i8*> [#uses=4]
- %tmp90.i783 = sub i32 %tmp49.i759, %.frame.0.3 ; <i32> [#uses=2]
- br label %whilecond.i792
-
-whilecond.i792: ; preds = %whilebody.i794, %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit786
- %.frame.0.6 = phi i32 [ %.frame.0.5, %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit786 ], [ %tmp18.i793.c, %whilebody.i794 ] ; <i32> [#uses=11]
- %tmp4.i791 = icmp ult i32 %.frame.0.6, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp4.i791, label %andand.i800, label %whilecond22.i803
-
-whilebody.i794: ; preds = %andand.i800
- %tmp18.i793.c = add i32 %.frame.0.6, 1 ; <i32> [#uses=1]
- br label %whilecond.i792
-
-andand.i800: ; preds = %whilecond.i792
- %tmp11.i797 = getelementptr i8* %line_arg831, i32 %.frame.0.6 ; <i8*> [#uses=1]
- %tmp12.i798 = load i8* %tmp11.i797 ; <i8> [#uses=1]
- %tmp14.i799 = icmp eq i8 %tmp12.i798, 32 ; <i1> [#uses=1]
- br i1 %tmp14.i799, label %whilebody.i794, label %whilecond22.i803
-
-whilecond22.i803: ; preds = %whilebody23.i805, %andand.i800, %whilecond.i792
- %.frame.0.7 = phi i32 [ %.frame.0.6, %andand.i800 ], [ %tmp50.i804, %whilebody23.i805 ], [ %.frame.0.6, %whilecond.i792 ] ; <i32> [#uses=2]
- %tmp49.i801 = phi i32 [ %.frame.0.6, %andand.i800 ], [ %tmp50.i804, %whilebody23.i805 ], [ %.frame.0.6, %whilecond.i792 ] ; <i32> [#uses=7]
- %tmp32.i802 = icmp ult i32 %tmp49.i801, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp32.i802, label %andand33.i811, label %whilecond54.i815
-
-whilebody23.i805: ; preds = %andand33.i811
- %tmp50.i804 = add i32 %tmp49.i801, 1 ; <i32> [#uses=2]
- br label %whilecond22.i803
-
-andand33.i811: ; preds = %whilecond22.i803
- %tmp42.i808 = getelementptr i8* %line_arg831, i32 %tmp49.i801 ; <i8*> [#uses=1]
- %tmp43.i809 = load i8* %tmp42.i808 ; <i8> [#uses=1]
- %tmp45.i810 = icmp eq i8 %tmp43.i809, 32 ; <i1> [#uses=1]
- br i1 %tmp45.i810, label %whilecond54.i815, label %whilebody23.i805
-
-whilecond54.i815: ; preds = %whilebody55.i817, %andand33.i811, %whilecond22.i803
- %.frame.0.8 = phi i32 [ %.frame.0.7, %andand33.i811 ], [ %tmp82.i816, %whilebody55.i817 ], [ %.frame.0.7, %whilecond22.i803 ] ; <i32> [#uses=2]
- %tmp81.i812 = phi i32 [ %tmp49.i801, %andand33.i811 ], [ %tmp82.i816, %whilebody55.i817 ], [ %tmp49.i801, %whilecond22.i803 ] ; <i32> [#uses=3]
- %tmp64.i813 = icmp ult i32 %tmp81.i812, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp64.i813, label %andand65.i822, label %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit828
-
-whilebody55.i817: ; preds = %andand65.i822
- %tmp82.i816 = add i32 %tmp81.i812, 1 ; <i32> [#uses=2]
- br label %whilecond54.i815
-
-andand65.i822: ; preds = %whilecond54.i815
- %tmp74.i819 = getelementptr i8* %line_arg831, i32 %tmp81.i812 ; <i8*> [#uses=1]
- %tmp75.i820 = load i8* %tmp74.i819 ; <i8> [#uses=1]
- %tmp77.i821 = icmp eq i8 %tmp75.i820, 32 ; <i1> [#uses=1]
- br i1 %tmp77.i821, label %whilebody55.i817, label %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit828
-
-_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit828: ; preds = %andand65.i822, %whilecond54.i815
- %tmp89.i824 = getelementptr i8* %line_arg831, i32 %.frame.0.6 ; <i8*> [#uses=4]
- %tmp90.i825 = sub i32 %tmp49.i801, %.frame.0.6 ; <i32> [#uses=2]
- %tmp63 = load i8* %tmp89.i824 ; <i8> [#uses=2]
- br label %forcond.i.i622
-
-forcond.i.i622: ; preds = %forbody.i.i626, %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit828
- %len.0.i.i618 = phi i32 [ 10, %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit828 ], [ %tmp4.i.i620, %forbody.i.i626 ] ; <i32> [#uses=2]
- %p.0.i.i619 = phi i8* [ getelementptr ([11 x i8]* @.str170, i32 0, i32 -1), %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit828 ], [ %tmp7.i.i623, %forbody.i.i626 ] ; <i8*> [#uses=1]
- %tmp4.i.i620 = add i32 %len.0.i.i618, -1 ; <i32> [#uses=1]
- %tmp5.i.i621 = icmp eq i32 %len.0.i.i618, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i621, label %if65, label %forbody.i.i626
-
-forbody.i.i626: ; preds = %forcond.i.i622
- %tmp7.i.i623 = getelementptr i8* %p.0.i.i619, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i624 = load i8* %tmp7.i.i623 ; <i8> [#uses=1]
- %tmp12.i.i625 = icmp eq i8 %tmp8.i.i624, %tmp63 ; <i1> [#uses=1]
- br i1 %tmp12.i.i625, label %if.i.i630, label %forcond.i.i622
-
-if.i.i630: ; preds = %forbody.i.i626
- %tmp15.i.i627 = ptrtoint i8* %tmp7.i.i623 to i32 ; <i32> [#uses=1]
- %tmp17.i.i629 = sub i32 %tmp15.i.i627, ptrtoint ([11 x i8]* @.str170 to i32) ; <i32> [#uses=1]
- %phitmp636 = icmp eq i32 %tmp17.i.i629, 10 ; <i1> [#uses=1]
- br i1 %phitmp636, label %if65, label %else67
-
-if65: ; preds = %if.i.i630, %forcond.i.i622
- %tmp69 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 2 ; <i64*> [#uses=1]
- %tmp4.i.i532 = icmp eq i32 %tmp49.i759, %.frame.0.3 ; <i1> [#uses=1]
- br i1 %tmp4.i.i532, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i576, label %forcond.i.i539
-
-forcond.i.i539: ; preds = %forinc.i.i546, %if65
- %sign.1.i533 = phi i1 [ false, %if65 ], [ %sign.0.i543, %forinc.i.i546 ] ; <i1> [#uses=4]
- %len.0.i.i534 = phi i32 [ %tmp33.i.i545, %forinc.i.i546 ], [ %tmp90.i783, %if65 ] ; <i32> [#uses=3]
- %p.0.i.i535 = phi i8* [ %tmp30.i.i544, %forinc.i.i546 ], [ %tmp89.i782, %if65 ] ; <i8*> [#uses=6]
- %c.0.in.i.i536 = phi i8* [ %tmp30.i.i544, %forinc.i.i546 ], [ %tmp89.i782, %if65 ] ; <i8*> [#uses=1]
- %c.0.i.i537 = load i8* %c.0.in.i.i536 ; <i8> [#uses=2]
- %tmp8.i.i538 = icmp eq i32 %len.0.i.i534, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i538, label %endfor.i.i550, label %forbody.i.i540
-
-forbody.i.i540: ; preds = %forcond.i.i539
- switch i8 %c.0.i.i537, label %endfor.i.i550 [
- i8 32, label %forinc.i.i546
- i8 9, label %forinc.i.i546
- i8 45, label %if20.i.i541
- i8 43, label %if26.i.i542
- ]
-
-if20.i.i541: ; preds = %forbody.i.i540
- br label %forinc.i.i546
-
-if26.i.i542: ; preds = %forbody.i.i540
- br label %forinc.i.i546
-
-forinc.i.i546: ; preds = %if26.i.i542, %if20.i.i541, %forbody.i.i540, %forbody.i.i540
- %sign.0.i543 = phi i1 [ false, %if26.i.i542 ], [ true, %if20.i.i541 ], [ %sign.1.i533, %forbody.i.i540 ], [ %sign.1.i533, %forbody.i.i540 ] ; <i1> [#uses=1]
- %tmp30.i.i544 = getelementptr i8* %p.0.i.i535, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i545 = add i32 %len.0.i.i534, -1 ; <i32> [#uses=1]
- br label %forcond.i.i539
-
-endfor.i.i550: ; preds = %forbody.i.i540, %forcond.i.i539
- %tmp37.i.i547 = icmp eq i8 %c.0.i.i537, 48 ; <i1> [#uses=1]
- %tmp39.i.i548 = icmp sgt i32 %len.0.i.i534, 1 ; <i1> [#uses=1]
- %or.cond.i.i549 = and i1 %tmp37.i.i547, %tmp39.i.i548 ; <i1> [#uses=1]
- br i1 %or.cond.i.i549, label %if40.i.i554, label %endif41.i.i564
-
-if40.i.i554: ; preds = %endfor.i.i550
- %tmp43.i.i551 = getelementptr i8* %p.0.i.i535, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i552 = load i8* %tmp43.i.i551 ; <i8> [#uses=1]
- %tmp45.i.i553 = zext i8 %tmp44.i.i552 to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i553, label %endif41.i.i564 [
- i32 120, label %case46.i.i556
- i32 88, label %case46.i.i556
- i32 98, label %case51.i.i558
- i32 66, label %case51.i.i558
- i32 111, label %case56.i.i560
- i32 79, label %case56.i.i560
- ]
-
-case46.i.i556: ; preds = %if40.i.i554, %if40.i.i554
- %tmp48.i.i555 = getelementptr i8* %p.0.i.i535, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i564
-
-case51.i.i558: ; preds = %if40.i.i554, %if40.i.i554
- %tmp53.i.i557 = getelementptr i8* %p.0.i.i535, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i564
-
-case56.i.i560: ; preds = %if40.i.i554, %if40.i.i554
- %tmp58.i.i559 = getelementptr i8* %p.0.i.i535, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i564
-
-endif41.i.i564: ; preds = %case56.i.i560, %case51.i.i558, %case46.i.i556, %if40.i.i554, %endfor.i.i550
- %r.0.i.i561 = phi i32 [ 0, %if40.i.i554 ], [ 8, %case56.i.i560 ], [ 2, %case51.i.i558 ], [ 16, %case46.i.i556 ], [ 0, %endfor.i.i550 ] ; <i32> [#uses=2]
- %p.2.i.i562 = phi i8* [ %tmp43.i.i551, %if40.i.i554 ], [ %tmp58.i.i559, %case56.i.i560 ], [ %tmp53.i.i557, %case51.i.i558 ], [ %tmp48.i.i555, %case46.i.i556 ], [ %p.0.i.i535, %endfor.i.i550 ] ; <i8*> [#uses=2]
- %tmp63.i.i563 = icmp eq i32 %r.0.i.i561, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i563, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i576, label %if70.i.i568
-
-if70.i.i568: ; preds = %endif41.i.i564
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i576
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i576: ; preds = %if70.i.i568, %endif41.i.i564, %if65
- %sign.2.i569 = phi i1 [ false, %if65 ], [ %sign.1.i533, %if70.i.i568 ], [ %sign.1.i533, %endif41.i.i564 ] ; <i1> [#uses=1]
- %radix.0.i570 = phi i32 [ 0, %if65 ], [ %r.0.i.i561, %if70.i.i568 ], [ 10, %endif41.i.i564 ] ; <i32> [#uses=2]
- %p.1.i.i571 = phi i8* [ %p.2.i.i562, %if70.i.i568 ], [ %tmp89.i782, %if65 ], [ %p.2.i.i562, %endif41.i.i564 ] ; <i8*> [#uses=1]
- %tmp84.i.i572 = ptrtoint i8* %p.1.i.i571 to i32 ; <i32> [#uses=1]
- %tmp85.i.i573 = ptrtoint i8* %tmp89.i782 to i32 ; <i32> [#uses=1]
- %tmp86.i.i574 = sub i32 %tmp84.i.i572, %tmp85.i.i573 ; <i32> [#uses=2]
- %tmp6.i575 = sub i32 %tmp90.i783, %tmp86.i.i574 ; <i32> [#uses=1]
- br label %foreachcond.i.i581
-
-foreachcond.i.i581: ; preds = %if55.i.i610, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i576
- %value.0.i.i577 = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i576 ], [ %tmp65.i.i607, %if55.i.i610 ] ; <i64> [#uses=3]
- %foreachkey.0.i.i579 = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i576 ], [ %tmp70.i.i609, %if55.i.i610 ] ; <i32> [#uses=3]
- %tmp3.i.i580 = icmp ult i32 %foreachkey.0.i.i579, %tmp6.i575 ; <i1> [#uses=1]
- br i1 %tmp3.i.i580, label %foreachbody.i.i587, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit614
-
-foreachbody.i.i587: ; preds = %foreachcond.i.i581
- %tmp5.sum.i582 = add i32 %tmp86.i.i574, %foreachkey.0.i.i579 ; <i32> [#uses=1]
- %tmp89.i782.sum = add i32 %.frame.0.3, %tmp5.sum.i582 ; <i32> [#uses=1]
- %tmp5.i.i583 = getelementptr i8* %line_arg831, i32 %tmp89.i782.sum ; <i8*> [#uses=1]
- %tmp6.i.i584 = load i8* %tmp5.i.i583 ; <i8> [#uses=6]
- %tmp6.off84.i.i585 = add i8 %tmp6.i.i584, -48 ; <i8> [#uses=1]
- %or.cond.i28.i586 = icmp ugt i8 %tmp6.off84.i.i585, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i586, label %else.i.i590, label %endif.i.i603
-
-else.i.i590: ; preds = %foreachbody.i.i587
- %tmp6.off83.i.i588 = add i8 %tmp6.i.i584, -97 ; <i8> [#uses=1]
- %or.cond81.i.i589 = icmp ugt i8 %tmp6.off83.i.i588, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i589, label %else24.i.i595, label %if22.i.i592
-
-if22.i.i592: ; preds = %else.i.i590
- %tmp27.i.i591 = add i8 %tmp6.i.i584, -39 ; <i8> [#uses=1]
- br label %endif.i.i603
-
-else24.i.i595: ; preds = %else.i.i590
- %tmp6.off.i.i593 = add i8 %tmp6.i.i584, -65 ; <i8> [#uses=1]
- %or.cond82.i.i594 = icmp ugt i8 %tmp6.off.i.i593, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i594, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit614, label %if39.i.i597
-
-if39.i.i597: ; preds = %else24.i.i595
- %tmp44.i29.i596 = add i8 %tmp6.i.i584, -7 ; <i8> [#uses=1]
- br label %endif.i.i603
-
-endif.i.i603: ; preds = %if39.i.i597, %if22.i.i592, %foreachbody.i.i587
- %c.0.i30.i598 = phi i8 [ %tmp27.i.i591, %if22.i.i592 ], [ %tmp44.i29.i596, %if39.i.i597 ], [ %tmp6.i.i584, %foreachbody.i.i587 ] ; <i8> [#uses=1]
- %tmp48.i31.i599 = zext i8 %c.0.i30.i598 to i32 ; <i32> [#uses=1]
- %tmp49.i.i600 = add i32 %tmp48.i31.i599, 208 ; <i32> [#uses=1]
- %tmp52.i.i601 = and i32 %tmp49.i.i600, 255 ; <i32> [#uses=2]
- %tmp54.i.i602 = icmp ult i32 %tmp52.i.i601, %radix.0.i570 ; <i1> [#uses=1]
- br i1 %tmp54.i.i602, label %if55.i.i610, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit614
-
-if55.i.i610: ; preds = %endif.i.i603
- %tmp59.i.i604 = zext i32 %radix.0.i570 to i64 ; <i64> [#uses=1]
- %tmp61.i.i605 = mul i64 %value.0.i.i577, %tmp59.i.i604 ; <i64> [#uses=1]
- %tmp64.i.i606 = zext i32 %tmp52.i.i601 to i64 ; <i64> [#uses=1]
- %tmp65.i.i607 = add i64 %tmp61.i.i605, %tmp64.i.i606 ; <i64> [#uses=1]
- %tmp70.i.i609 = add i32 %foreachkey.0.i.i579, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i581
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit614: ; preds = %endif.i.i603, %else24.i.i595, %foreachcond.i.i581
- %negval.i611 = sub i64 0, %value.0.i.i577 ; <i64> [#uses=1]
- %condtmp.0.i612 = select i1 %sign.2.i569, i64 %negval.i611, i64 %value.0.i.i577 ; <i64> [#uses=1]
- store i64 %condtmp.0.i612, i64* %tmp69
- br label %endif66
-
-else67: ; preds = %if.i.i630
- %tmp72 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 2 ; <i64*> [#uses=1]
- %tmp4.i.i447 = icmp eq i32 %tmp49.i801, %.frame.0.6 ; <i1> [#uses=1]
- br i1 %tmp4.i.i447, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i491, label %forcond.i.i454
-
-forcond.i.i454: ; preds = %forinc.i.i461, %else67
- %c.0.i.i452 = phi i8 [ %c.0.i.i452.pre, %forinc.i.i461 ], [ %tmp63, %else67 ] ; <i8> [#uses=2]
- %sign.1.i448 = phi i1 [ false, %else67 ], [ %sign.0.i458, %forinc.i.i461 ] ; <i1> [#uses=4]
- %len.0.i.i449 = phi i32 [ %tmp33.i.i460, %forinc.i.i461 ], [ %tmp90.i825, %else67 ] ; <i32> [#uses=3]
- %p.0.i.i450 = phi i8* [ %tmp30.i.i459, %forinc.i.i461 ], [ %tmp89.i824, %else67 ] ; <i8*> [#uses=6]
- %tmp8.i.i453 = icmp eq i32 %len.0.i.i449, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i453, label %endfor.i.i465, label %forbody.i.i455
-
-forbody.i.i455: ; preds = %forcond.i.i454
- switch i8 %c.0.i.i452, label %endfor.i.i465 [
- i8 32, label %forinc.i.i461
- i8 9, label %forinc.i.i461
- i8 45, label %if20.i.i456
- i8 43, label %if26.i.i457
- ]
-
-if20.i.i456: ; preds = %forbody.i.i455
- br label %forinc.i.i461
-
-if26.i.i457: ; preds = %forbody.i.i455
- br label %forinc.i.i461
-
-forinc.i.i461: ; preds = %if26.i.i457, %if20.i.i456, %forbody.i.i455, %forbody.i.i455
- %sign.0.i458 = phi i1 [ false, %if26.i.i457 ], [ true, %if20.i.i456 ], [ %sign.1.i448, %forbody.i.i455 ], [ %sign.1.i448, %forbody.i.i455 ] ; <i1> [#uses=1]
- %tmp30.i.i459 = getelementptr i8* %p.0.i.i450, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i460 = add i32 %len.0.i.i449, -1 ; <i32> [#uses=1]
- %c.0.i.i452.pre = load i8* %tmp30.i.i459 ; <i8> [#uses=1]
- br label %forcond.i.i454
-
-endfor.i.i465: ; preds = %forbody.i.i455, %forcond.i.i454
- %tmp37.i.i462 = icmp eq i8 %c.0.i.i452, 48 ; <i1> [#uses=1]
- %tmp39.i.i463 = icmp sgt i32 %len.0.i.i449, 1 ; <i1> [#uses=1]
- %or.cond.i.i464 = and i1 %tmp37.i.i462, %tmp39.i.i463 ; <i1> [#uses=1]
- br i1 %or.cond.i.i464, label %if40.i.i469, label %endif41.i.i479
-
-if40.i.i469: ; preds = %endfor.i.i465
- %tmp43.i.i466 = getelementptr i8* %p.0.i.i450, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i467 = load i8* %tmp43.i.i466 ; <i8> [#uses=1]
- %tmp45.i.i468 = zext i8 %tmp44.i.i467 to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i468, label %endif41.i.i479 [
- i32 120, label %case46.i.i471
- i32 88, label %case46.i.i471
- i32 98, label %case51.i.i473
- i32 66, label %case51.i.i473
- i32 111, label %case56.i.i475
- i32 79, label %case56.i.i475
- ]
-
-case46.i.i471: ; preds = %if40.i.i469, %if40.i.i469
- %tmp48.i.i470 = getelementptr i8* %p.0.i.i450, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i479
-
-case51.i.i473: ; preds = %if40.i.i469, %if40.i.i469
- %tmp53.i.i472 = getelementptr i8* %p.0.i.i450, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i479
-
-case56.i.i475: ; preds = %if40.i.i469, %if40.i.i469
- %tmp58.i.i474 = getelementptr i8* %p.0.i.i450, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i479
-
-endif41.i.i479: ; preds = %case56.i.i475, %case51.i.i473, %case46.i.i471, %if40.i.i469, %endfor.i.i465
- %r.0.i.i476 = phi i32 [ 0, %if40.i.i469 ], [ 8, %case56.i.i475 ], [ 2, %case51.i.i473 ], [ 16, %case46.i.i471 ], [ 0, %endfor.i.i465 ] ; <i32> [#uses=2]
- %p.2.i.i477 = phi i8* [ %tmp43.i.i466, %if40.i.i469 ], [ %tmp58.i.i474, %case56.i.i475 ], [ %tmp53.i.i472, %case51.i.i473 ], [ %tmp48.i.i470, %case46.i.i471 ], [ %p.0.i.i450, %endfor.i.i465 ] ; <i8*> [#uses=2]
- %tmp63.i.i478 = icmp eq i32 %r.0.i.i476, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i478, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i491, label %if70.i.i483
-
-if70.i.i483: ; preds = %endif41.i.i479
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i491
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i491: ; preds = %if70.i.i483, %endif41.i.i479, %else67
- %sign.2.i484 = phi i1 [ false, %else67 ], [ %sign.1.i448, %if70.i.i483 ], [ %sign.1.i448, %endif41.i.i479 ] ; <i1> [#uses=1]
- %radix.0.i485 = phi i32 [ 0, %else67 ], [ %r.0.i.i476, %if70.i.i483 ], [ 10, %endif41.i.i479 ] ; <i32> [#uses=2]
- %p.1.i.i486 = phi i8* [ %p.2.i.i477, %if70.i.i483 ], [ %tmp89.i824, %else67 ], [ %p.2.i.i477, %endif41.i.i479 ] ; <i8*> [#uses=1]
- %tmp84.i.i487 = ptrtoint i8* %p.1.i.i486 to i32 ; <i32> [#uses=1]
- %tmp85.i.i488 = ptrtoint i8* %tmp89.i824 to i32 ; <i32> [#uses=1]
- %tmp86.i.i489 = sub i32 %tmp84.i.i487, %tmp85.i.i488 ; <i32> [#uses=2]
- %tmp6.i490 = sub i32 %tmp90.i825, %tmp86.i.i489 ; <i32> [#uses=1]
- br label %foreachcond.i.i496
-
-foreachcond.i.i496: ; preds = %if55.i.i525, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i491
- %value.0.i.i492 = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i491 ], [ %tmp65.i.i522, %if55.i.i525 ] ; <i64> [#uses=3]
- %foreachkey.0.i.i494 = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i491 ], [ %tmp70.i.i524, %if55.i.i525 ] ; <i32> [#uses=3]
- %tmp3.i.i495 = icmp ult i32 %foreachkey.0.i.i494, %tmp6.i490 ; <i1> [#uses=1]
- br i1 %tmp3.i.i495, label %foreachbody.i.i502, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit529
-
-foreachbody.i.i502: ; preds = %foreachcond.i.i496
- %tmp5.sum.i497 = add i32 %tmp86.i.i489, %foreachkey.0.i.i494 ; <i32> [#uses=1]
- %tmp89.i824.sum = add i32 %.frame.0.6, %tmp5.sum.i497 ; <i32> [#uses=1]
- %tmp5.i.i498 = getelementptr i8* %line_arg831, i32 %tmp89.i824.sum ; <i8*> [#uses=1]
- %tmp6.i.i499 = load i8* %tmp5.i.i498 ; <i8> [#uses=6]
- %tmp6.off84.i.i500 = add i8 %tmp6.i.i499, -48 ; <i8> [#uses=1]
- %or.cond.i28.i501 = icmp ugt i8 %tmp6.off84.i.i500, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i501, label %else.i.i505, label %endif.i.i518
-
-else.i.i505: ; preds = %foreachbody.i.i502
- %tmp6.off83.i.i503 = add i8 %tmp6.i.i499, -97 ; <i8> [#uses=1]
- %or.cond81.i.i504 = icmp ugt i8 %tmp6.off83.i.i503, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i504, label %else24.i.i510, label %if22.i.i507
-
-if22.i.i507: ; preds = %else.i.i505
- %tmp27.i.i506 = add i8 %tmp6.i.i499, -39 ; <i8> [#uses=1]
- br label %endif.i.i518
-
-else24.i.i510: ; preds = %else.i.i505
- %tmp6.off.i.i508 = add i8 %tmp6.i.i499, -65 ; <i8> [#uses=1]
- %or.cond82.i.i509 = icmp ugt i8 %tmp6.off.i.i508, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i509, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit529, label %if39.i.i512
-
-if39.i.i512: ; preds = %else24.i.i510
- %tmp44.i29.i511 = add i8 %tmp6.i.i499, -7 ; <i8> [#uses=1]
- br label %endif.i.i518
-
-endif.i.i518: ; preds = %if39.i.i512, %if22.i.i507, %foreachbody.i.i502
- %c.0.i30.i513 = phi i8 [ %tmp27.i.i506, %if22.i.i507 ], [ %tmp44.i29.i511, %if39.i.i512 ], [ %tmp6.i.i499, %foreachbody.i.i502 ] ; <i8> [#uses=1]
- %tmp48.i31.i514 = zext i8 %c.0.i30.i513 to i32 ; <i32> [#uses=1]
- %tmp49.i.i515 = add i32 %tmp48.i31.i514, 208 ; <i32> [#uses=1]
- %tmp52.i.i516 = and i32 %tmp49.i.i515, 255 ; <i32> [#uses=2]
- %tmp54.i.i517 = icmp ult i32 %tmp52.i.i516, %radix.0.i485 ; <i1> [#uses=1]
- br i1 %tmp54.i.i517, label %if55.i.i525, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit529
-
-if55.i.i525: ; preds = %endif.i.i518
- %tmp59.i.i519 = zext i32 %radix.0.i485 to i64 ; <i64> [#uses=1]
- %tmp61.i.i520 = mul i64 %value.0.i.i492, %tmp59.i.i519 ; <i64> [#uses=1]
- %tmp64.i.i521 = zext i32 %tmp52.i.i516 to i64 ; <i64> [#uses=1]
- %tmp65.i.i522 = add i64 %tmp61.i.i520, %tmp64.i.i521 ; <i64> [#uses=1]
- %tmp70.i.i524 = add i32 %foreachkey.0.i.i494, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i496
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit529: ; preds = %endif.i.i518, %else24.i.i510, %foreachcond.i.i496
- %negval.i526 = sub i64 0, %value.0.i.i492 ; <i64> [#uses=1]
- %condtmp.0.i527 = select i1 %sign.2.i484, i64 %negval.i526, i64 %value.0.i.i492 ; <i64> [#uses=1]
- store i64 %condtmp.0.i527, i64* %tmp72
- br label %endif66
-
-endif66: ; preds = %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit529, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit614
- %tmp85 = phi i32 [ %.frame.0.8, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit529 ], [ %.frame.0.5, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit614 ] ; <i32> [#uses=1]
- %tmp75 = phi i32 [ %.frame.0.8, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit529 ], [ %.frame.0.5, %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit614 ] ; <i32> [#uses=1]
- %tmp76 = add i32 %tmp75, 13 ; <i32> [#uses=1]
- %tmp79 = icmp ult i32 %tmp76, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp79, label %endif81, label %if80
-
-if80: ; preds = %endif66
- %tmp82 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp82, i8* %tmp2, i32 48, i32 1)
- ret void
-
-endif81: ; preds = %endif66
- %tmp86 = add i32 %tmp85, 13 ; <i32> [#uses=2]
- %tmp93 = getelementptr i8* %line_arg831, i32 %tmp86 ; <i8*> [#uses=1]
- %tmp94 = sub i32 %line_arg830, %tmp86 ; <i32> [#uses=1]
- %tmp95 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 0 ; <i32*> [#uses=4]
- store i32 %tmp94, i32* %tmp95, align 8
- %tmp96 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 1 ; <i8**> [#uses=3]
- store i8* %tmp93, i8** %tmp96
- %tmp97 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- %tmp98 = load i32* %tmp97, align 8 ; <i32> [#uses=1]
- %tmp99 = icmp eq i32 %tmp98, 5 ; <i1> [#uses=1]
- br i1 %tmp99, label %if100, label %switchend
-
-if100: ; preds = %endif81
- %tmp102 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0 ; <%"byte[]"*> [#uses=1]
- %tmp103 = load %"byte[]"* %tmp102, align 8 ; <%"byte[]"> [#uses=2]
- %source_arg59.i = extractvalue %"byte[]" %tmp103, 0 ; <i32> [#uses=5]
- %source_arg60.i = extractvalue %"byte[]" %tmp103, 1 ; <i8*> [#uses=2]
- %tmp9.i418 = add i32 %source_arg59.i, -3 ; <i32> [#uses=2]
- %tmp16.i420 = icmp ugt i32 %tmp9.i418, %source_arg59.i ; <i1> [#uses=1]
- br i1 %tmp16.i420, label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit, label %whilecond.i422
-
-whilecond.i422: ; preds = %else40.i, %if100
- %source_arg60.pn.i = phi i8* [ %p.0.i, %else40.i ], [ %source_arg60.i, %if100 ] ; <i8*> [#uses=4]
- %start_arg.pn.i = phi i32 [ %tmp49.i443, %else40.i ], [ 0, %if100 ] ; <i32> [#uses=3]
- %extent.0.i = phi i32 [ %tmp51.i, %else40.i ], [ %tmp9.i418, %if100 ] ; <i32> [#uses=5]
- %p.0.i = getelementptr i8* %source_arg60.pn.i, i32 %start_arg.pn.i ; <i8*> [#uses=2]
- %tmp18.i421 = icmp eq i32 %extent.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp18.i421, label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit, label %whilebody.i425
-
-whilebody.i425: ; preds = %whilecond.i422
- %p.0.sum63.i = add i32 %start_arg.pn.i, -1 ; <i32> [#uses=1]
- %tmp2.i.i424 = getelementptr i8* %source_arg60.pn.i, i32 %p.0.sum63.i ; <i8*> [#uses=1]
- br label %forcond.i.i430
-
-forcond.i.i430: ; preds = %forbody.i.i434, %whilebody.i425
- %len.0.i.i426 = phi i32 [ %extent.0.i, %whilebody.i425 ], [ %tmp4.i.i428, %forbody.i.i434 ] ; <i32> [#uses=2]
- %p.0.i.i427 = phi i8* [ %tmp2.i.i424, %whilebody.i425 ], [ %tmp7.i.i431, %forbody.i.i434 ] ; <i8*> [#uses=1]
- %tmp4.i.i428 = add i32 %len.0.i.i426, -1 ; <i32> [#uses=1]
- %tmp5.i.i429 = icmp eq i32 %len.0.i.i426, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i429, label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i, label %forbody.i.i434
-
-forbody.i.i434: ; preds = %forcond.i.i430
- %tmp7.i.i431 = getelementptr i8* %p.0.i.i427, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i432 = load i8* %tmp7.i.i431 ; <i8> [#uses=1]
- %tmp12.i.i433 = icmp eq i8 %tmp8.i.i432, 32 ; <i1> [#uses=1]
- br i1 %tmp12.i.i433, label %if.i.i438, label %forcond.i.i430
-
-if.i.i438: ; preds = %forbody.i.i434
- %tmp15.i.i435 = ptrtoint i8* %tmp7.i.i431 to i32 ; <i32> [#uses=1]
- %tmp16.i.i436 = ptrtoint i8* %p.0.i to i32 ; <i32> [#uses=1]
- %tmp17.i.i437 = sub i32 %tmp15.i.i435, %tmp16.i.i436 ; <i32> [#uses=1]
- br label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i
-
-_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i: ; preds = %if.i.i438, %forcond.i.i430
- %tmp2561.i = phi i32 [ %tmp17.i.i437, %if.i.i438 ], [ %extent.0.i, %forcond.i.i430 ] ; <i32> [#uses=3]
- %tmp27.i = icmp eq i32 %tmp2561.i, %extent.0.i ; <i1> [#uses=1]
- br i1 %tmp27.i, label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit, label %else.i441
-
-else.i441: ; preds = %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i
- %p.0.sum.i = add i32 %start_arg.pn.i, %tmp2561.i ; <i32> [#uses=2]
- %tmp32.i440 = getelementptr i8* %source_arg60.pn.i, i32 %p.0.sum.i ; <i8*> [#uses=2]
- %tmp32.sum.i = add i32 %p.0.sum.i, -1 ; <i32> [#uses=1]
- %tmp2.i.i.i = getelementptr i8* %source_arg60.pn.i, i32 %tmp32.sum.i ; <i8*> [#uses=1]
- br label %forcond.i.i.i
-
-forcond.i.i.i: ; preds = %forbody.i.i.i, %else.i441
- %len.0.i.i.i = phi i32 [ 4, %else.i441 ], [ %tmp4.i.i.i, %forbody.i.i.i ] ; <i32> [#uses=2]
- %s2.0.i.i.i = phi i8* [ getelementptr ([5 x i8]* @.str171, i32 0, i32 0), %else.i441 ], [ %tmp11.i.i.i, %forbody.i.i.i ] ; <i8*> [#uses=2]
- %p.0.i.i.i = phi i8* [ %tmp2.i.i.i, %else.i441 ], [ %tmp7.i.i.i, %forbody.i.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i.i = add i32 %len.0.i.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i.i = icmp eq i32 %len.0.i.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i.i, label %if38.i, label %forbody.i.i.i
-
-forbody.i.i.i: ; preds = %forcond.i.i.i
- %tmp7.i.i.i = getelementptr i8* %p.0.i.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i.i = load i8* %tmp7.i.i.i ; <i8> [#uses=1]
- %tmp11.i.i.i = getelementptr i8* %s2.0.i.i.i, i32 1 ; <i8*> [#uses=1]
- %tmp12.i.i.i = load i8* %s2.0.i.i.i ; <i8> [#uses=1]
- %tmp14.i.i.i = icmp eq i8 %tmp8.i.i.i, %tmp12.i.i.i ; <i1> [#uses=1]
- br i1 %tmp14.i.i.i, label %forcond.i.i.i, label %if.i.i.i
-
-if.i.i.i: ; preds = %forbody.i.i.i
- %tmp17.i.i.i = ptrtoint i8* %tmp7.i.i.i to i32 ; <i32> [#uses=1]
- %tmp18.i.i.i = ptrtoint i8* %tmp32.i440 to i32 ; <i32> [#uses=1]
- %tmp19.i.i.i = sub i32 %tmp17.i.i.i, %tmp18.i.i.i ; <i32> [#uses=1]
- %phitmp = icmp eq i32 %tmp19.i.i.i, 4 ; <i1> [#uses=1]
- br i1 %phitmp, label %if38.i, label %else40.i
-
-if38.i: ; preds = %if.i.i.i, %forcond.i.i.i
- %tmp44.i = ptrtoint i8* %tmp32.i440 to i32 ; <i32> [#uses=1]
- %tmp45.i442 = ptrtoint i8* %source_arg60.i to i32 ; <i32> [#uses=1]
- %tmp46.i = sub i32 %tmp44.i, %tmp45.i442 ; <i32> [#uses=1]
- br label %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit
-
-else40.i: ; preds = %if.i.i.i
- %tmp49.i443 = add i32 %tmp2561.i, 1 ; <i32> [#uses=2]
- %tmp51.i = sub i32 %extent.0.i, %tmp49.i443 ; <i32> [#uses=1]
- br label %whilecond.i422
-
-_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit: ; preds = %if38.i, %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i, %whilecond.i422, %if100
- %tmp104444 = phi i32 [ %tmp46.i, %if38.i ], [ %source_arg59.i, %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit.i ], [ %source_arg59.i, %whilecond.i422 ], [ %source_arg59.i, %if100 ] ; <i32> [#uses=3]
- %.len107 = load i32* %tmp95, align 8 ; <i32> [#uses=1]
- %tmp109 = icmp eq i32 %tmp104444, %.len107 ; <i1> [#uses=1]
- br i1 %tmp109, label %switchend, label %if110
-
-if110: ; preds = %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit
- store %"byte[]" { i32 6, i8* getelementptr ([7 x i8]* @.str172, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage114, align 8
- %tmp115 = bitcast %"byte[]"* %aatmpkeystorage114 to i8* ; <i8*> [#uses=1]
- %aa.index116 = call i8* @_aaGet(%32* nocapture %tmp47, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 8, i8* nocapture %tmp115) ; <i8*> [#uses=2]
- %.ptr120 = load i8** %tmp96 ; <i8*> [#uses=2]
- %tmp122 = add i32 %tmp104444, 4 ; <i32> [#uses=2]
- %.len125 = load i32* %tmp95, align 8 ; <i32> [#uses=1]
- %tmp126 = getelementptr i8* %.ptr120, i32 %tmp122 ; <i8*> [#uses=1]
- %tmp127 = sub i32 %.len125, %tmp122 ; <i32> [#uses=1]
- %tmp128 = bitcast i8* %aa.index116 to i32* ; <i32*> [#uses=1]
- store i32 %tmp127, i32* %tmp128
- %tmp129 = getelementptr i8* %aa.index116, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %tmp129 to i8** ; <i8**> [#uses=1]
- store i8* %tmp126, i8** %0
- store i32 %tmp104444, i32* %tmp95, align 8
- store i8* %.ptr120, i8** %tmp96
- store %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str173, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage141, align 8
- %tmp142 = bitcast %"byte[]"* %aatmpkeystorage141 to i8* ; <i8*> [#uses=1]
- %aa.index143 = call i8* @_aaGet(%32* nocapture %tmp47, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 8, i8* nocapture %tmp142) ; <i8*> [#uses=1]
- %tmp144 = bitcast i8* %aa.index143 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- store %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str174, i32 0, i32 0) }, %"byte[]"* %tmp144
- br label %switchend
-
-case145: ; preds = %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit
- %tmp148 = icmp ult i32 %line_arg830, 18 ; <i1> [#uses=1]
- br i1 %tmp148, label %if149, label %endif150
-
-if149: ; preds = %case145
- %tmp151 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp151, i8* %tmp2, i32 48, i32 1)
- ret void
-
-endif150: ; preds = %case145
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.RegExpT!(char).RegExpT"* ; <%"tango.text.Regex.RegExpT!(char).RegExpT"*> [#uses=4]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"**> [#uses=4]
- store %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__vtblZ, %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp.i, i8* bitcast (%"Act[]"* getelementptr (%"tango.text.Regex.RegExpT!(char).RegExpT"* bitcast (%30* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT6__initZ to %"tango.text.Regex.RegExpT!(char).RegExpT"*), i32 0, i32 2) to i8*), i32 36, i32 1)
- %tmp2.i.i416 = call fastcc %"tango.text.Regex.RegExpT!(char).RegExpT"* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT5_ctorMFAabbbZC5tango4text5Regex14__T7RegExpTTaZ7RegExpT(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i, %"byte[]" { i32 42, i8* getelementptr ([43 x i8]* @.str175, i32 0, i32 0) }, i1 false, i1 true, i1 false) ; <%"tango.text.Regex.RegExpT!(char).RegExpT"*> [#uses=0]
- %tmp157 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.test@vtbl" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp157, i32 0, i32 7 ; <i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")**> [#uses=1]
- %r.test = load i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")** %"r.test@vtbl", align 4 ; <i1 (%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]")*> [#uses=1]
- %insert = insertvalue %"byte[]" undef, i32 %line_arg830, 0 ; <%"byte[]"> [#uses=1]
- %insert833 = insertvalue %"byte[]" %insert, i8* %line_arg831, 1 ; <%"byte[]"> [#uses=1]
- %tmp160 = call fastcc i1 %r.test(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i, %"byte[]" %insert833) ; <i1> [#uses=1]
- br i1 %tmp160, label %endif162, label %if161
-
-if161: ; preds = %endif150
- %tmp163 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp163, i8* %tmp2, i32 48, i32 1)
- ret void
-
-endif162: ; preds = %endif150
- %tmp168 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp168, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp170 = call fastcc %"byte[]" %r.match(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i, i32 0) ; <%"byte[]"> [#uses=1]
- %tmp171 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 3 ; <%tango.time.Time.Time*> [#uses=1]
- %tmp172 = call fastcc i32 @_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi(%"byte[]" %tmp170, %tango.time.Time.Time* %tmp171) ; <i32> [#uses=1]
- %tmp173 = icmp eq i32 %tmp172, 0 ; <i1> [#uses=1]
- br i1 %tmp173, label %if174, label %endif175
-
-if174: ; preds = %endif162
- %tmp = load i64* getelementptr (%tango.time.Time.Time* @_D5tango4time4Time4Time3maxS5tango4time4Time4Time, i32 0, i32 0), align 4 ; <i64> [#uses=1]
- %2 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 3, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp, i64* %2
- br label %endif175
-
-endif175: ; preds = %if174, %endif162
- %tmp180 = load %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"** %vtbl.i ; <%"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"*> [#uses=1]
- %"r.match@vtbl181" = getelementptr %"tango.text.Regex.RegExpT!(char).RegExpT.__vtbl"* %tmp180, i32 0, i32 9 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)**> [#uses=1]
- %r.match183 = load %"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)** %"r.match@vtbl181", align 4 ; <%"byte[]" (%"tango.text.Regex.RegExpT!(char).RegExpT"*, i32)*> [#uses=1]
- %tmp184 = call fastcc %"byte[]" %r.match183(%"tango.text.Regex.RegExpT!(char).RegExpT"* %.newclass_gc.i, i32 0) ; <%"byte[]"> [#uses=1]
- %.len185 = extractvalue %"byte[]" %tmp184, 0 ; <i32> [#uses=1]
- %.tmp = bitcast i8* %.newclass_gc_alloc.i to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_delclass(%object.Object* %.tmp)
- br label %whilecond.i
-
-whilecond.i: ; preds = %whilebody.i, %endif175
- %tmp3.i = phi i32 [ %tmp18.i.c, %whilebody.i ], [ %.len185, %endif175 ] ; <i32> [#uses=11]
- %tmp4.i = icmp ult i32 %tmp3.i, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp4.i, label %andand.i, label %whilecond22.i
-
-whilebody.i: ; preds = %andand.i
- %tmp18.i.c = add i32 %tmp3.i, 1 ; <i32> [#uses=1]
- br label %whilecond.i
-
-andand.i: ; preds = %whilecond.i
- %tmp11.i = getelementptr i8* %line_arg831, i32 %tmp3.i ; <i8*> [#uses=1]
- %tmp12.i = load i8* %tmp11.i ; <i8> [#uses=1]
- %tmp14.i = icmp eq i8 %tmp12.i, 32 ; <i1> [#uses=1]
- br i1 %tmp14.i, label %whilebody.i, label %whilecond22.i
-
-whilecond22.i: ; preds = %whilebody23.i, %andand.i, %whilecond.i
- %tmp217.rle699 = phi i32 [ %tmp50.i, %whilebody23.i ], [ %tmp3.i, %andand.i ], [ %tmp3.i, %whilecond.i ] ; <i32> [#uses=2]
- %tmp49.i = phi i32 [ %tmp3.i, %andand.i ], [ %tmp50.i, %whilebody23.i ], [ %tmp3.i, %whilecond.i ] ; <i32> [#uses=7]
- %tmp32.i = icmp ult i32 %tmp49.i, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp32.i, label %andand33.i, label %whilecond54.i
-
-whilebody23.i: ; preds = %andand33.i
- %tmp50.i = add i32 %tmp49.i, 1 ; <i32> [#uses=2]
- br label %whilecond22.i
-
-andand33.i: ; preds = %whilecond22.i
- %tmp42.i = getelementptr i8* %line_arg831, i32 %tmp49.i ; <i8*> [#uses=1]
- %tmp43.i = load i8* %tmp42.i ; <i8> [#uses=1]
- %tmp45.i = icmp eq i8 %tmp43.i, 32 ; <i1> [#uses=1]
- br i1 %tmp45.i, label %whilecond54.i, label %whilebody23.i
-
-whilecond54.i: ; preds = %whilebody55.i, %andand33.i, %whilecond22.i
- %tmp217 = phi i32 [ %tmp82.i, %whilebody55.i ], [ %tmp217.rle699, %andand33.i ], [ %tmp217.rle699, %whilecond22.i ] ; <i32> [#uses=2]
- %tmp81.i = phi i32 [ %tmp49.i, %andand33.i ], [ %tmp82.i, %whilebody55.i ], [ %tmp49.i, %whilecond22.i ] ; <i32> [#uses=3]
- %tmp64.i = icmp ult i32 %tmp81.i, %line_arg830 ; <i1> [#uses=1]
- br i1 %tmp64.i, label %andand65.i, label %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit
-
-whilebody55.i: ; preds = %andand65.i
- %tmp82.i = add i32 %tmp81.i, 1 ; <i32> [#uses=2]
- br label %whilecond54.i
-
-andand65.i: ; preds = %whilecond54.i
- %tmp74.i = getelementptr i8* %line_arg831, i32 %tmp81.i ; <i8*> [#uses=1]
- %tmp75.i = load i8* %tmp74.i ; <i8> [#uses=1]
- %tmp77.i = icmp eq i8 %tmp75.i, 32 ; <i1> [#uses=1]
- br i1 %tmp77.i, label %whilebody55.i, label %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit
-
-_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit: ; preds = %andand65.i, %whilecond54.i
- %tmp89.i = getelementptr i8* %line_arg831, i32 %tmp3.i ; <i8*> [#uses=4]
- %tmp90.i = sub i32 %tmp49.i, %tmp3.i ; <i32> [#uses=2]
- %tmp201 = load i8* %tmp89.i ; <i8> [#uses=2]
- %tmp203 = icmp eq i8 %tmp201, 60 ; <i1> [#uses=1]
- br i1 %tmp203, label %if204, label %else206
-
-if204: ; preds = %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit
- %tmp207 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 4, i32* %tmp207, align 8
- br label %endif193
-
-else206: ; preds = %_D5tango3net3ftp9FtpClient13FTPConnection13parseListLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo10parse_wordMFZAa.exit
- %tmp208 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 2 ; <i64*> [#uses=1]
- %tmp4.i.i274 = icmp eq i32 %tmp49.i, %tmp3.i ; <i1> [#uses=1]
- br i1 %tmp4.i.i274, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %forcond.i.i278
-
-forcond.i.i278: ; preds = %forinc.i.i, %else206
- %c.0.i.i = phi i8 [ %c.0.i.i.pre, %forinc.i.i ], [ %tmp201, %else206 ] ; <i8> [#uses=2]
- %sign.1.i = phi i1 [ false, %else206 ], [ %sign.0.i, %forinc.i.i ] ; <i1> [#uses=4]
- %len.0.i.i275 = phi i32 [ %tmp33.i.i, %forinc.i.i ], [ %tmp90.i, %else206 ] ; <i32> [#uses=3]
- %p.0.i.i276 = phi i8* [ %tmp30.i.i, %forinc.i.i ], [ %tmp89.i, %else206 ] ; <i8*> [#uses=6]
- %tmp8.i.i277 = icmp eq i32 %len.0.i.i275, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i277, label %endfor.i.i280, label %forbody.i.i279
-
-forbody.i.i279: ; preds = %forcond.i.i278
- switch i8 %c.0.i.i, label %endfor.i.i280 [
- i8 32, label %forinc.i.i
- i8 9, label %forinc.i.i
- i8 45, label %if20.i.i
- i8 43, label %if26.i.i
- ]
-
-if20.i.i: ; preds = %forbody.i.i279
- br label %forinc.i.i
-
-if26.i.i: ; preds = %forbody.i.i279
- br label %forinc.i.i
-
-forinc.i.i: ; preds = %if26.i.i, %if20.i.i, %forbody.i.i279, %forbody.i.i279
- %sign.0.i = phi i1 [ false, %if26.i.i ], [ true, %if20.i.i ], [ %sign.1.i, %forbody.i.i279 ], [ %sign.1.i, %forbody.i.i279 ] ; <i1> [#uses=1]
- %tmp30.i.i = getelementptr i8* %p.0.i.i276, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i = add i32 %len.0.i.i275, -1 ; <i32> [#uses=1]
- %c.0.i.i.pre = load i8* %tmp30.i.i ; <i8> [#uses=1]
- br label %forcond.i.i278
-
-endfor.i.i280: ; preds = %forbody.i.i279, %forcond.i.i278
- %tmp37.i.i = icmp eq i8 %c.0.i.i, 48 ; <i1> [#uses=1]
- %tmp39.i.i = icmp sgt i32 %len.0.i.i275, 1 ; <i1> [#uses=1]
- %or.cond.i.i = and i1 %tmp37.i.i, %tmp39.i.i ; <i1> [#uses=1]
- br i1 %or.cond.i.i, label %if40.i.i, label %endif41.i.i
-
-if40.i.i: ; preds = %endfor.i.i280
- %tmp43.i.i = getelementptr i8* %p.0.i.i276, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i = load i8* %tmp43.i.i ; <i8> [#uses=1]
- %tmp45.i.i = zext i8 %tmp44.i.i to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i, label %endif41.i.i [
- i32 120, label %case46.i.i
- i32 88, label %case46.i.i
- i32 98, label %case51.i.i
- i32 66, label %case51.i.i
- i32 111, label %case56.i.i
- i32 79, label %case56.i.i
- ]
-
-case46.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp48.i.i = getelementptr i8* %p.0.i.i276, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case51.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp53.i.i = getelementptr i8* %p.0.i.i276, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case56.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp58.i.i = getelementptr i8* %p.0.i.i276, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-endif41.i.i: ; preds = %case56.i.i, %case51.i.i, %case46.i.i, %if40.i.i, %endfor.i.i280
- %r.0.i.i = phi i32 [ 0, %if40.i.i ], [ 8, %case56.i.i ], [ 2, %case51.i.i ], [ 16, %case46.i.i ], [ 0, %endfor.i.i280 ] ; <i32> [#uses=2]
- %p.2.i.i = phi i8* [ %tmp43.i.i, %if40.i.i ], [ %tmp58.i.i, %case56.i.i ], [ %tmp53.i.i, %case51.i.i ], [ %tmp48.i.i, %case46.i.i ], [ %p.0.i.i276, %endfor.i.i280 ] ; <i8*> [#uses=2]
- %tmp63.i.i = icmp eq i32 %r.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %if70.i.i
-
-if70.i.i: ; preds = %endif41.i.i
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i: ; preds = %if70.i.i, %endif41.i.i, %else206
- %sign.2.i = phi i1 [ false, %else206 ], [ %sign.1.i, %if70.i.i ], [ %sign.1.i, %endif41.i.i ] ; <i1> [#uses=1]
- %radix.0.i = phi i32 [ 0, %else206 ], [ %r.0.i.i, %if70.i.i ], [ 10, %endif41.i.i ] ; <i32> [#uses=2]
- %p.1.i.i = phi i8* [ %p.2.i.i, %if70.i.i ], [ %tmp89.i, %else206 ], [ %p.2.i.i, %endif41.i.i ] ; <i8*> [#uses=1]
- %tmp84.i.i = ptrtoint i8* %p.1.i.i to i32 ; <i32> [#uses=1]
- %tmp85.i.i = ptrtoint i8* %tmp89.i to i32 ; <i32> [#uses=1]
- %tmp86.i.i = sub i32 %tmp84.i.i, %tmp85.i.i ; <i32> [#uses=2]
- %tmp6.i281 = sub i32 %tmp90.i, %tmp86.i.i ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-foreachcond.i.i: ; preds = %if55.i.i, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
- %value.0.i.i = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp65.i.i, %if55.i.i ] ; <i64> [#uses=3]
- %foreachkey.0.i.i = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp70.i.i, %if55.i.i ] ; <i32> [#uses=3]
- %tmp3.i.i = icmp ult i32 %foreachkey.0.i.i, %tmp6.i281 ; <i1> [#uses=1]
- br i1 %tmp3.i.i, label %foreachbody.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-foreachbody.i.i: ; preds = %foreachcond.i.i
- %tmp5.sum.i = add i32 %tmp86.i.i, %foreachkey.0.i.i ; <i32> [#uses=1]
- %tmp89.i.sum = add i32 %tmp3.i, %tmp5.sum.i ; <i32> [#uses=1]
- %tmp5.i.i282 = getelementptr i8* %line_arg831, i32 %tmp89.i.sum ; <i8*> [#uses=1]
- %tmp6.i.i = load i8* %tmp5.i.i282 ; <i8> [#uses=6]
- %tmp6.off84.i.i = add i8 %tmp6.i.i, -48 ; <i8> [#uses=1]
- %or.cond.i28.i = icmp ugt i8 %tmp6.off84.i.i, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i, label %else.i.i, label %endif.i.i
-
-else.i.i: ; preds = %foreachbody.i.i
- %tmp6.off83.i.i = add i8 %tmp6.i.i, -97 ; <i8> [#uses=1]
- %or.cond81.i.i = icmp ugt i8 %tmp6.off83.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i, label %else24.i.i, label %if22.i.i
-
-if22.i.i: ; preds = %else.i.i
- %tmp27.i.i = add i8 %tmp6.i.i, -39 ; <i8> [#uses=1]
- br label %endif.i.i
-
-else24.i.i: ; preds = %else.i.i
- %tmp6.off.i.i = add i8 %tmp6.i.i, -65 ; <i8> [#uses=1]
- %or.cond82.i.i = icmp ugt i8 %tmp6.off.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit, label %if39.i.i
-
-if39.i.i: ; preds = %else24.i.i
- %tmp44.i29.i = add i8 %tmp6.i.i, -7 ; <i8> [#uses=1]
- br label %endif.i.i
-
-endif.i.i: ; preds = %if39.i.i, %if22.i.i, %foreachbody.i.i
- %c.0.i30.i = phi i8 [ %tmp27.i.i, %if22.i.i ], [ %tmp44.i29.i, %if39.i.i ], [ %tmp6.i.i, %foreachbody.i.i ] ; <i8> [#uses=1]
- %tmp48.i31.i = zext i8 %c.0.i30.i to i32 ; <i32> [#uses=1]
- %tmp49.i.i = add i32 %tmp48.i31.i, 208 ; <i32> [#uses=1]
- %tmp52.i.i = and i32 %tmp49.i.i, 255 ; <i32> [#uses=2]
- %tmp54.i.i = icmp ult i32 %tmp52.i.i, %radix.0.i ; <i1> [#uses=1]
- br i1 %tmp54.i.i, label %if55.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-if55.i.i: ; preds = %endif.i.i
- %tmp59.i.i = zext i32 %radix.0.i to i64 ; <i64> [#uses=1]
- %tmp61.i.i = mul i64 %value.0.i.i, %tmp59.i.i ; <i64> [#uses=1]
- %tmp64.i.i = zext i32 %tmp52.i.i to i64 ; <i64> [#uses=1]
- %tmp65.i.i = add i64 %tmp61.i.i, %tmp64.i.i ; <i64> [#uses=1]
- %tmp70.i.i = add i32 %foreachkey.0.i.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit: ; preds = %endif.i.i, %else24.i.i, %foreachcond.i.i
- %negval.i = sub i64 0, %value.0.i.i ; <i64> [#uses=1]
- %condtmp.0.i = select i1 %sign.2.i, i64 %negval.i, i64 %value.0.i.i ; <i64> [#uses=1]
- store i64 %condtmp.0.i, i64* %tmp208
- %tmp211 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 1, i32* %tmp211, align 8
- br label %endif193
-
-endif193: ; preds = %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit, %if204
- %tmp218 = getelementptr i8* %line_arg831, i32 %tmp217 ; <i8*> [#uses=1]
- %tmp219 = sub i32 %line_arg830, %tmp217 ; <i32> [#uses=1]
- %tmp220 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp219, i32* %tmp220, align 8
- %tmp221 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp218, i8** %tmp221
- br label %switchend
-
-default223: ; preds = %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i8*> [#uses=6]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp224 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp224, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* getelementptr ([4 x i8]* @.str177, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" { i32 31, i8* getelementptr ([32 x i8]* @.str176, i32 0, i32 0) }, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp229 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp229)
- unreachable
-
-switchend: ; preds = %endif193, %if110, %_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk.exit, %endif81
- %tmp232 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- %.len233 = load i32* %tmp232, align 8 ; <i32> [#uses=2]
- %tmp234 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- %.ptr235 = load i8** %tmp234 ; <i8*> [#uses=2]
- %tmp236 = insertvalue %"byte[]" undef, i32 %.len233, 0 ; <%"byte[]"> [#uses=1]
- %tmp237 = insertvalue %"byte[]" %tmp236, i8* %.ptr235, 1 ; <%"byte[]"> [#uses=1]
- %tmp238 = call i32 @_adEq(%"byte[]" %tmp237, %"byte[]" { i32 1, i8* getelementptr ([2 x i8]* @.str178, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp239 = icmp eq i32 %tmp238, 0 ; <i1> [#uses=1]
- br i1 %tmp239, label %else242, label %if240
-
-if240: ; preds = %switchend
- %tmp243 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 2, i32* %tmp243, align 8
- br label %endif241
-
-else242: ; preds = %switchend
- %tmp250 = insertvalue %"byte[]" undef, i32 %.len233, 0 ; <%"byte[]"> [#uses=1]
- %tmp251 = insertvalue %"byte[]" %tmp250, i8* %.ptr235, 1 ; <%"byte[]"> [#uses=1]
- %tmp252 = call i32 @_adEq(%"byte[]" %tmp251, %"byte[]" { i32 2, i8* getelementptr ([3 x i8]* @.str179, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp253 = icmp eq i32 %tmp252, 0 ; <i1> [#uses=1]
- br i1 %tmp253, label %endif241, label %if254
-
-if254: ; preds = %else242
- %tmp256 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 3, i32* %tmp256, align 8
- br label %endif241
-
-endif241: ; preds = %if254, %else242, %if240
- %tmp257 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp257, i8* %tmp2, i32 48, i32 1)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection13parseMlstLineMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo(%tango.net.ftp.FtpClient.FtpFileInfo* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %line_arg) {
-entry:
- %.frame.i = alloca %nest.delimit, align 8 ; <%nest.delimit*> [#uses=2]
- %.rettmp.i = alloca %tango.net.ftp.FtpClient.FtpFeature, align 8 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=5]
- %info = alloca %tango.net.ftp.FtpClient.FtpFileInfo, align 4 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=14]
- %aatmpkeystorage = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage89 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage98 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage120 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage131 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage140 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage151 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage159 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %.rettmp = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %aatmpkeystorage174 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %aatmpkeystorage184 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %.rettmp198 = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %aatmpkeystorage202 = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=2]
- %line_arg217 = extractvalue %"byte[]" %line_arg, 0 ; <i32> [#uses=3]
- %line_arg218 = extractvalue %"byte[]" %line_arg, 1 ; <i8*> [#uses=3]
- %tmp = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %info to i8* ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp, i8* bitcast (%tango.net.ftp.FtpClient.FtpFileInfo* @_D5tango3net3ftp9FtpClient11FtpFileInfo6__initZ to i8*), i32 48, i32 4)
- br label %whilecond
-
-whilecond: ; preds = %andand, %entry
- %filename_pos.0 = phi i32 [ 0, %entry ], [ %tmp5, %andand ] ; <i32> [#uses=4]
- %tmp3 = icmp ult i32 %filename_pos.0, %line_arg217 ; <i1> [#uses=1]
- br i1 %tmp3, label %andand, label %endwhile
-
-andand: ; preds = %whilecond
- %tmp5 = add i32 %filename_pos.0, 1 ; <i32> [#uses=2]
- %tmp7 = getelementptr i8* %line_arg218, i32 %filename_pos.0 ; <i8*> [#uses=1]
- %tmp8 = load i8* %tmp7 ; <i8> [#uses=1]
- %tmp10 = icmp eq i8 %tmp8, 32 ; <i1> [#uses=1]
- br i1 %tmp10, label %endwhile, label %whilecond
-
-endwhile: ; preds = %andand, %whilecond
- %filename_pos.1 = phi i32 [ %tmp5, %andand ], [ %filename_pos.0, %whilecond ] ; <i32> [#uses=5]
- %tmp14 = icmp eq i32 %filename_pos.1, %line_arg217 ; <i1> [#uses=1]
- br i1 %tmp14, label %if, label %endif
-
-if: ; preds = %endwhile
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i8*> [#uses=6]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp15 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp15, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc, i32 36 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* getelementptr ([4 x i8]* @.str181, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" { i32 35, i8* getelementptr ([36 x i8]* @.str180, i32 0, i32 0) }, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp20 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp20)
- unreachable
-
-endif: ; preds = %endwhile
- %tmp27 = getelementptr i8* %line_arg218, i32 %filename_pos.1 ; <i8*> [#uses=1]
- %tmp28 = sub i32 %line_arg217, %filename_pos.1 ; <i32> [#uses=1]
- %tmp29 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp28, i32* %tmp29
- %tmp30 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp27, i8** %tmp30
- %tmp32 = icmp ugt i32 %filename_pos.1, 1 ; <i1> [#uses=1]
- br i1 %tmp32, label %if33, label %endif34
-
-if33: ; preds = %endif
- %tmp38 = add i32 %filename_pos.1, -1 ; <i32> [#uses=1]
- %result.i = getelementptr %nest.delimit* %.frame.i, i32 0, i32 0 ; <%"char[][]"*> [#uses=2]
- store %"char[][]" zeroinitializer, %"char[][]"* %result.i, align 8
- %1 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp.i, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp38, i32* %1, align 8
- %.sret_arg18.1.i.i = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp.i, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %line_arg218, i8** %.sret_arg18.1.i.i, align 4
- %.sret_arg.1.0.i.i = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp.i, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 1, i32* %.sret_arg.1.0.i.i, align 8
- %.sret_arg.1.1.i.i = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp.i, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- store i8* getelementptr ([2 x i8]* @.str182, i32 0, i32 0), i8** %.sret_arg.1.1.i.i, align 4
- %tmp2.i225 = bitcast %nest.delimit* %.frame.i to i8* ; <i8*> [#uses=1]
- %tmp3.i = insertvalue %"int delegate(ref char[])" undef, i8* %tmp2.i225, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func.i = insertvalue %"int delegate(ref char[])" %tmp3.i, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util14__T7delimitTaZ7delimitFAaAaZAAa15__foreachbody43MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp4.i = call fastcc i32 @_D5tango4text4Util18__T10DelimFructTaZ10DelimFruct7opApplyMFDFKAaZiZi(%tango.net.ftp.FtpClient.FtpFeature* %.rettmp.i, %"int delegate(ref char[])" %.func.i) ; <i32> [#uses=0]
- %tmp5.i226 = load %"char[][]"* %result.i, align 8 ; <%"char[][]"> [#uses=2]
- %tmp43215 = extractvalue %"char[][]" %tmp5.i226, 0 ; <i32> [#uses=1]
- %tmp43216 = extractvalue %"char[][]" %tmp5.i226, 1 ; <%"byte[]"*> [#uses=1]
- br label %foreachcond
-
-foreachcond: ; preds = %foreachnext, %if33
- %foreachkey.0 = phi i32 [ 0, %if33 ], [ %tmp85, %foreachnext ] ; <i32> [#uses=3]
- %tmp49 = icmp ult i32 %foreachkey.0, %tmp43215 ; <i1> [#uses=1]
- br i1 %tmp49, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp51 = getelementptr %"byte[]"* %tmp43216, i32 %foreachkey.0 ; <%"byte[]"*> [#uses=1]
- %tmp52 = load %"byte[]"* %tmp51 ; <%"byte[]"> [#uses=2]
- %tmp52213 = extractvalue %"byte[]" %tmp52, 0 ; <i32> [#uses=4]
- %tmp52214 = extractvalue %"byte[]" %tmp52, 1 ; <i8*> [#uses=4]
- %tmp2.i.i = getelementptr i8* %tmp52214, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %foreachbody
- %len.0.i.i = phi i32 [ %tmp52213, %foreachbody ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %p.0.i.i = phi i8* [ %tmp2.i.i, %foreachbody ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp12.i.i = icmp eq i8 %tmp8.i.i, 61 ; <i1> [#uses=1]
- br i1 %tmp12.i.i, label %if.i.i, label %forcond.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp15.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp16.i.i = ptrtoint i8* %tmp52214 to i32 ; <i32> [#uses=1]
- %tmp17.i.i = sub i32 %tmp15.i.i, %tmp16.i.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
-
-_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit: ; preds = %if.i.i, %forcond.i.i
- %tmp1318.i = phi i32 [ %tmp17.i.i, %if.i.i ], [ %tmp52213, %forcond.i.i ] ; <i32> [#uses=3]
- %tmp58 = icmp eq i32 %tmp1318.i, %tmp52213 ; <i1> [#uses=1]
- br i1 %tmp58, label %foreachnext, label %endif60
-
-endif60: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp62 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 6 ; <i8**> [#uses=1]
- %tmp68 = insertvalue %"byte[]" undef, i32 %tmp1318.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp69 = insertvalue %"byte[]" %tmp68, i8* %tmp52214, 1 ; <%"byte[]"> [#uses=1]
- %tmp70 = call fastcc %"byte[]" @_D5tango4text5Ascii7toLowerFAaAaZAa(%"byte[]" %tmp69, %"byte[]" zeroinitializer) ; <%"byte[]"> [#uses=1]
- %tmp71 = bitcast i8** %tmp62 to %32* ; <%32*> [#uses=1]
- store %"byte[]" %tmp70, %"byte[]"* %aatmpkeystorage, align 8
- %tmp72 = bitcast %"byte[]"* %aatmpkeystorage to i8* ; <i8*> [#uses=1]
- %aa.index = call i8* @_aaGet(%32* nocapture %tmp71, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 8, i8* nocapture %tmp72) ; <i8*> [#uses=2]
- %tmp77 = add i32 %tmp1318.i, 1 ; <i32> [#uses=2]
- %tmp80 = getelementptr i8* %tmp52214, i32 %tmp77 ; <i8*> [#uses=1]
- %tmp81 = sub i32 %tmp52213, %tmp77 ; <i32> [#uses=1]
- %tmp82 = bitcast i8* %aa.index to i32* ; <i32*> [#uses=1]
- store i32 %tmp81, i32* %tmp82
- %tmp83 = getelementptr i8* %aa.index, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp83 to i8** ; <i8**> [#uses=1]
- store i8* %tmp80, i8** %2
- br label %foreachnext
-
-foreachnext: ; preds = %endif60, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp85 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- %tmp86 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 6 ; <i8**> [#uses=1]
- %tmp87 = load i8** %tmp86 ; <i8*> [#uses=1]
- %tmp88 = bitcast i8* %tmp87 to %32* ; <%32*> [#uses=10]
- store %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str183, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage89, align 8
- %tmp90 = bitcast %"byte[]"* %aatmpkeystorage89 to i8* ; <i8*> [#uses=1]
- %aa.in = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp90) readonly ; <i8*> [#uses=1]
- %tmp94 = icmp eq i8* %aa.in, null ; <i1> [#uses=1]
- br i1 %tmp94, label %endif93, label %if92
-
-if92: ; preds = %foreachend
- store %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str188, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage98, align 8
- %tmp99 = bitcast %"byte[]"* %aatmpkeystorage98 to i8* ; <i8*> [#uses=1]
- %aa.index100 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp99) readonly ; <i8*> [#uses=1]
- %tmp101 = bitcast i8* %aa.index100 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp102 = load %"byte[]"* %tmp101 ; <%"byte[]"> [#uses=1]
- %tmp103 = call fastcc %"byte[]" @_D5tango4text5Ascii7toLowerFAaAaZAa(%"byte[]" %tmp102, %"byte[]" zeroinitializer) ; <%"byte[]"> [#uses=1]
- %tmp104 = call i32 @_d_switch_string(%"char[][]" { i32 4, %"byte[]"* getelementptr ([4 x %"byte[]"]* @.string_switch_table_data, i32 0, i32 0) }, %"byte[]" %tmp103) readonly ; <i32> [#uses=1]
- switch i32 %tmp104, label %default115 [
- i32 2, label %case
- i32 1, label %case106
- i32 3, label %case109
- i32 0, label %case112
- ]
-
-case: ; preds = %if92
- %tmp105 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 1, i32* %tmp105
- br label %endif93
-
-case106: ; preds = %if92
- %tmp107 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 2, i32* %tmp107
- br label %endif93
-
-case109: ; preds = %if92
- %tmp110 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 3, i32* %tmp110
- br label %endif93
-
-case112: ; preds = %if92
- %tmp113 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 4, i32* %tmp113
- br label %endif93
-
-default115: ; preds = %if92
- %tmp116 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 5, i32* %tmp116
- br label %endif93
-
-endif93: ; preds = %default115, %case112, %case109, %case106, %case, %foreachend
- store %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str189, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage120, align 8
- %tmp121 = bitcast %"byte[]"* %aatmpkeystorage120 to i8* ; <i8*> [#uses=1]
- %aa.in122 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp121) readonly ; <i8*> [#uses=1]
- %tmp126 = icmp eq i8* %aa.in122, null ; <i1> [#uses=1]
- br i1 %tmp126, label %endif125, label %if124
-
-if124: ; preds = %endif93
- %tmp127 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 2 ; <i64*> [#uses=1]
- store %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str190, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage131, align 8
- %tmp132 = bitcast %"byte[]"* %aatmpkeystorage131 to i8* ; <i8*> [#uses=1]
- %aa.index133 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp132) readonly ; <i8*> [#uses=1]
- %tmp134 = bitcast i8* %aa.index133 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp135 = load %"byte[]"* %tmp134 ; <%"byte[]"> [#uses=2]
- %digits_arg26.i = extractvalue %"byte[]" %tmp135, 0 ; <i32> [#uses=3]
- %digits_arg27.i = extractvalue %"byte[]" %tmp135, 1 ; <i8*> [#uses=5]
- %tmp4.i.i229 = icmp eq i32 %digits_arg26.i, 0 ; <i1> [#uses=1]
- br i1 %tmp4.i.i229, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %forcond.i.i233
-
-forcond.i.i233: ; preds = %forinc.i.i, %if124
- %sign.1.i = phi i1 [ false, %if124 ], [ %sign.0.i, %forinc.i.i ] ; <i1> [#uses=4]
- %len.0.i.i230 = phi i32 [ %tmp33.i.i, %forinc.i.i ], [ %digits_arg26.i, %if124 ] ; <i32> [#uses=3]
- %p.0.i.i231 = phi i8* [ %tmp30.i.i, %forinc.i.i ], [ %digits_arg27.i, %if124 ] ; <i8*> [#uses=6]
- %c.0.in.i.i = phi i8* [ %tmp30.i.i, %forinc.i.i ], [ %digits_arg27.i, %if124 ] ; <i8*> [#uses=1]
- %c.0.i.i = load i8* %c.0.in.i.i ; <i8> [#uses=2]
- %tmp8.i.i232 = icmp eq i32 %len.0.i.i230, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i.i232, label %endfor.i.i235, label %forbody.i.i234
-
-forbody.i.i234: ; preds = %forcond.i.i233
- switch i8 %c.0.i.i, label %endfor.i.i235 [
- i8 32, label %forinc.i.i
- i8 9, label %forinc.i.i
- i8 45, label %if20.i.i
- i8 43, label %if26.i.i
- ]
-
-if20.i.i: ; preds = %forbody.i.i234
- br label %forinc.i.i
-
-if26.i.i: ; preds = %forbody.i.i234
- br label %forinc.i.i
-
-forinc.i.i: ; preds = %if26.i.i, %if20.i.i, %forbody.i.i234, %forbody.i.i234
- %sign.0.i = phi i1 [ false, %if26.i.i ], [ true, %if20.i.i ], [ %sign.1.i, %forbody.i.i234 ], [ %sign.1.i, %forbody.i.i234 ] ; <i1> [#uses=1]
- %tmp30.i.i = getelementptr i8* %p.0.i.i231, i32 1 ; <i8*> [#uses=2]
- %tmp33.i.i = add i32 %len.0.i.i230, -1 ; <i32> [#uses=1]
- br label %forcond.i.i233
-
-endfor.i.i235: ; preds = %forbody.i.i234, %forcond.i.i233
- %tmp37.i.i = icmp eq i8 %c.0.i.i, 48 ; <i1> [#uses=1]
- %tmp39.i.i = icmp sgt i32 %len.0.i.i230, 1 ; <i1> [#uses=1]
- %or.cond.i.i = and i1 %tmp37.i.i, %tmp39.i.i ; <i1> [#uses=1]
- br i1 %or.cond.i.i, label %if40.i.i, label %endif41.i.i
-
-if40.i.i: ; preds = %endfor.i.i235
- %tmp43.i.i = getelementptr i8* %p.0.i.i231, i32 1 ; <i8*> [#uses=2]
- %tmp44.i.i = load i8* %tmp43.i.i ; <i8> [#uses=1]
- %tmp45.i.i = zext i8 %tmp44.i.i to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i.i, label %endif41.i.i [
- i32 120, label %case46.i.i
- i32 88, label %case46.i.i
- i32 98, label %case51.i.i
- i32 66, label %case51.i.i
- i32 111, label %case56.i.i
- i32 79, label %case56.i.i
- ]
-
-case46.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp48.i.i = getelementptr i8* %p.0.i.i231, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case51.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp53.i.i = getelementptr i8* %p.0.i.i231, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-case56.i.i: ; preds = %if40.i.i, %if40.i.i
- %tmp58.i.i = getelementptr i8* %p.0.i.i231, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i.i
-
-endif41.i.i: ; preds = %case56.i.i, %case51.i.i, %case46.i.i, %if40.i.i, %endfor.i.i235
- %r.0.i.i = phi i32 [ 0, %if40.i.i ], [ 8, %case56.i.i ], [ 2, %case51.i.i ], [ 16, %case46.i.i ], [ 0, %endfor.i.i235 ] ; <i32> [#uses=2]
- %p.2.i.i = phi i8* [ %tmp43.i.i, %if40.i.i ], [ %tmp58.i.i, %case56.i.i ], [ %tmp53.i.i, %case51.i.i ], [ %tmp48.i.i, %case46.i.i ], [ %p.0.i.i231, %endfor.i.i235 ] ; <i8*> [#uses=2]
- %tmp63.i.i = icmp eq i32 %r.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i, label %if70.i.i
-
-if70.i.i: ; preds = %endif41.i.i
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i: ; preds = %if70.i.i, %endif41.i.i, %if124
- %sign.2.i = phi i1 [ false, %if124 ], [ %sign.1.i, %if70.i.i ], [ %sign.1.i, %endif41.i.i ] ; <i1> [#uses=1]
- %radix.0.i = phi i32 [ 0, %if124 ], [ %r.0.i.i, %if70.i.i ], [ 10, %endif41.i.i ] ; <i32> [#uses=2]
- %p.1.i.i = phi i8* [ %p.2.i.i, %if70.i.i ], [ %digits_arg27.i, %if124 ], [ %p.2.i.i, %endif41.i.i ] ; <i8*> [#uses=1]
- %tmp84.i.i = ptrtoint i8* %p.1.i.i to i32 ; <i32> [#uses=1]
- %tmp85.i.i = ptrtoint i8* %digits_arg27.i to i32 ; <i32> [#uses=1]
- %tmp86.i.i = sub i32 %tmp84.i.i, %tmp85.i.i ; <i32> [#uses=2]
- %tmp6.i = sub i32 %digits_arg26.i, %tmp86.i.i ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-foreachcond.i.i: ; preds = %if55.i.i, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i
- %value.0.i.i = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp65.i.i, %if55.i.i ] ; <i64> [#uses=3]
- %foreachkey.0.i.i = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit.i ], [ %tmp70.i.i, %if55.i.i ] ; <i32> [#uses=3]
- %tmp3.i.i = icmp ult i32 %foreachkey.0.i.i, %tmp6.i ; <i1> [#uses=1]
- br i1 %tmp3.i.i, label %foreachbody.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-foreachbody.i.i: ; preds = %foreachcond.i.i
- %tmp5.sum.i = add i32 %tmp86.i.i, %foreachkey.0.i.i ; <i32> [#uses=1]
- %tmp5.i.i236 = getelementptr i8* %digits_arg27.i, i32 %tmp5.sum.i ; <i8*> [#uses=1]
- %tmp6.i.i = load i8* %tmp5.i.i236 ; <i8> [#uses=6]
- %tmp6.off84.i.i = add i8 %tmp6.i.i, -48 ; <i8> [#uses=1]
- %or.cond.i28.i = icmp ugt i8 %tmp6.off84.i.i, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28.i, label %else.i.i, label %endif.i.i
-
-else.i.i: ; preds = %foreachbody.i.i
- %tmp6.off83.i.i = add i8 %tmp6.i.i, -97 ; <i8> [#uses=1]
- %or.cond81.i.i = icmp ugt i8 %tmp6.off83.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i.i, label %else24.i.i, label %if22.i.i
-
-if22.i.i: ; preds = %else.i.i
- %tmp27.i.i = add i8 %tmp6.i.i, -39 ; <i8> [#uses=1]
- br label %endif.i.i
-
-else24.i.i: ; preds = %else.i.i
- %tmp6.off.i.i = add i8 %tmp6.i.i, -65 ; <i8> [#uses=1]
- %or.cond82.i.i = icmp ugt i8 %tmp6.off.i.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit, label %if39.i.i
-
-if39.i.i: ; preds = %else24.i.i
- %tmp44.i29.i = add i8 %tmp6.i.i, -7 ; <i8> [#uses=1]
- br label %endif.i.i
-
-endif.i.i: ; preds = %if39.i.i, %if22.i.i, %foreachbody.i.i
- %c.0.i30.i = phi i8 [ %tmp27.i.i, %if22.i.i ], [ %tmp44.i29.i, %if39.i.i ], [ %tmp6.i.i, %foreachbody.i.i ] ; <i8> [#uses=1]
- %tmp48.i31.i = zext i8 %c.0.i30.i to i32 ; <i32> [#uses=1]
- %tmp49.i.i = add i32 %tmp48.i31.i, 208 ; <i32> [#uses=1]
- %tmp52.i.i = and i32 %tmp49.i.i, 255 ; <i32> [#uses=2]
- %tmp54.i.i = icmp ult i32 %tmp52.i.i, %radix.0.i ; <i1> [#uses=1]
- br i1 %tmp54.i.i, label %if55.i.i, label %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit
-
-if55.i.i: ; preds = %endif.i.i
- %tmp59.i.i = zext i32 %radix.0.i to i64 ; <i64> [#uses=1]
- %tmp61.i.i = mul i64 %value.0.i.i, %tmp59.i.i ; <i64> [#uses=1]
- %tmp64.i.i = zext i32 %tmp52.i.i to i64 ; <i64> [#uses=1]
- %tmp65.i.i = add i64 %tmp61.i.i, %tmp64.i.i ; <i64> [#uses=1]
- %tmp70.i.i = add i32 %foreachkey.0.i.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i.i
-
-_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit: ; preds = %endif.i.i, %else24.i.i, %foreachcond.i.i
- %negval.i = sub i64 0, %value.0.i.i ; <i64> [#uses=1]
- %condtmp.0.i = select i1 %sign.2.i, i64 %negval.i, i64 %value.0.i.i ; <i64> [#uses=1]
- store i64 %condtmp.0.i, i64* %tmp127
- br label %endif125
-
-endif125: ; preds = %_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl.exit, %endif93
- store %"byte[]" { i32 10, i8* getelementptr ([11 x i8]* @.str191, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage140, align 8
- %tmp141 = bitcast %"byte[]"* %aatmpkeystorage140 to i8* ; <i8*> [#uses=1]
- %aa.in142 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp141) readonly ; <i8*> [#uses=1]
- %tmp146 = icmp eq i8* %aa.in142, null ; <i1> [#uses=1]
- br i1 %tmp146, label %endif145, label %if144
-
-if144: ; preds = %endif125
- %tmp147 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 5 ; <%"byte[]"*> [#uses=1]
- store %"byte[]" { i32 10, i8* getelementptr ([11 x i8]* @.str192, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage151, align 8
- %tmp152 = bitcast %"byte[]"* %aatmpkeystorage151 to i8* ; <i8*> [#uses=1]
- %aa.index153 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp152) readonly ; <i8*> [#uses=1]
- %tmp154 = bitcast i8* %aa.index153 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp155 = load %"byte[]"* %tmp154 ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp155, %"byte[]"* %tmp147
- br label %endif145
-
-endif145: ; preds = %if144, %endif125
- store %"byte[]" { i32 6, i8* getelementptr ([7 x i8]* @.str193, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage159, align 8
- %tmp160 = bitcast %"byte[]"* %aatmpkeystorage159 to i8* ; <i8*> [#uses=1]
- %aa.in161 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp160) readonly ; <i8*> [#uses=1]
- %tmp165 = icmp eq i8* %aa.in161, null ; <i1> [#uses=1]
- br i1 %tmp165, label %endif164, label %if163
-
-if163: ; preds = %endif145
- %tmp168 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp169 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp168 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.parseTimeval@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp169, i32 0, i32 31 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.parseTimeval = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.parseTimeval@vtbl", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- store %"byte[]" { i32 6, i8* getelementptr ([7 x i8]* @.str194, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage174, align 8
- %tmp175 = bitcast %"byte[]"* %aatmpkeystorage174 to i8* ; <i8*> [#uses=1]
- %aa.index176 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp175) readonly ; <i8*> [#uses=1]
- %tmp177 = bitcast i8* %aa.index176 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp178 = load %"byte[]"* %tmp177 ; <%"byte[]"> [#uses=1]
- call fastcc void %this.parseTimeval(%tango.time.Time.Time* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %tmp178)
- %tmp180219 = getelementptr %tango.time.Time.Time* %.rettmp, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp221 = load i64* %tmp180219, align 8 ; <i64> [#uses=1]
- %3 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 3, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp221, i64* %3
- br label %endif164
-
-endif164: ; preds = %if163, %endif145
- store %"byte[]" { i32 6, i8* getelementptr ([7 x i8]* @.str195, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage184, align 8
- %tmp185 = bitcast %"byte[]"* %aatmpkeystorage184 to i8* ; <i8*> [#uses=1]
- %aa.in186 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp185) readonly ; <i8*> [#uses=1]
- %tmp190 = icmp eq i8* %aa.in186, null ; <i1> [#uses=1]
- br i1 %tmp190, label %endif34, label %if188
-
-if188: ; preds = %endif164
- %tmp193 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp194 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp193 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.parseTimeval@vtbl195" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp194, i32 0, i32 31 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.parseTimeval197 = load void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.parseTimeval@vtbl195", align 4 ; <void (%tango.time.Time.Time*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- store %"byte[]" { i32 6, i8* getelementptr ([7 x i8]* @.str196, i32 0, i32 0) }, %"byte[]"* %aatmpkeystorage202, align 8
- %tmp203 = bitcast %"byte[]"* %aatmpkeystorage202 to i8* ; <i8*> [#uses=1]
- %aa.index204 = call i8* @_aaIn(%32* nocapture %tmp88, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i8* nocapture %tmp203) readonly ; <i8*> [#uses=1]
- %tmp205 = bitcast i8* %aa.index204 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp206 = load %"byte[]"* %tmp205 ; <%"byte[]"> [#uses=1]
- call fastcc void %this.parseTimeval197(%tango.time.Time.Time* noalias nocapture sret %.rettmp198, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %tmp206)
- %tmp208222 = getelementptr %tango.time.Time.Time* %.rettmp198, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp224 = load i64* %tmp208222, align 8 ; <i64> [#uses=1]
- %4 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %info, i32 0, i32 4, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp224, i64* %4
- br label %endif34
-
-endif34: ; preds = %if188, %endif164, %endif
- %tmp209 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp209, i8* %tmp, i32 48, i32 1)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection11getFileInfoMFAaZS5tango3net3ftp9FtpClient11FtpFileInfo(%tango.net.ftp.FtpClient.FtpFileInfo* noalias nocapture sret %.sret_arg, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp3 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp2 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.ls@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp3, i32 0, i32 46 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.ls = load %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.ls@vtbl", align 4 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp6 = tail call fastcc %"FtpFileInfo[]" %this.ls(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) ; <%"FtpFileInfo[]"> [#uses=2]
- %tmp699 = extractvalue %"FtpFileInfo[]" %tmp6, 0 ; <i32> [#uses=1]
- %tmp8 = icmp eq i32 %tmp699, 1 ; <i1> [#uses=1]
- br i1 %tmp8, label %if, label %else
-
-if: ; preds = %entry
- %tmp6100 = extractvalue %"FtpFileInfo[]" %tmp6, 1 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=1]
- %tmp11 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- %tmp12 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %tmp6100 to i8* ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp11, i8* %tmp12, i32 48, i32 1)
- ret void
-
-else: ; preds = %entry
- %tmp15 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp2 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendListCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp15, i32 0, i32 49 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.sendListCommand = load %"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.sendListCommand@vtbl", align 4 ; <%"FtpFileInfo[]" (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- %tmp18 = tail call fastcc %"FtpFileInfo[]" %this.sendListCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) ; <%"FtpFileInfo[]"> [#uses=2]
- %tmp1897 = extractvalue %"FtpFileInfo[]" %tmp18, 0 ; <i32> [#uses=2]
- %tmp1898 = extractvalue %"FtpFileInfo[]" %tmp18, 1 ; <%tango.net.ftp.FtpClient.FtpFileInfo*> [#uses=10]
- switch i32 %tmp1897, label %foreachcond [
- i32 0, label %if22
- i32 1, label %endif34
- ]
-
-if22: ; preds = %else
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango3net3ftp9FtpClient12FtpException7__ClassZ) ; <i8*> [#uses=6]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.net.ftp.FtpClient.FtpException.__vtbl** ; <%tango.net.ftp.FtpClient.FtpException.__vtbl**> [#uses=1]
- store %tango.net.ftp.FtpClient.FtpException.__vtbl* @_D5tango3net3ftp9FtpClient12FtpException6__vtblZ, %tango.net.ftp.FtpClient.FtpException.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp24 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* bitcast (%"byte[]"* getelementptr (%tango.net.ftp.FtpClient.FtpException* @_D5tango3net3ftp9FtpClient12FtpException6__initZ, i32 0, i32 2) to i8*), i32 31, i32 1)
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc, i32 36 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i, i8* getelementptr ([4 x i8]* @.str198, i32 0, i32 0), i32 3, i32 1)
- %tmp5.i = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %tmp7.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %tmp5.i, %"byte[]" { i32 37, i8* getelementptr ([38 x i8]* @.str197, i32 0, i32 0) }, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp29 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp29)
- unreachable
-
-foreachcond: ; preds = %foreachnext, %else
- %foreachkey.0 = phi i32 [ %tmp54, %foreachnext ], [ 0, %else ] ; <i32> [#uses=11]
- %tmp40 = icmp ult i32 %foreachkey.0, %tmp1897 ; <i1> [#uses=1]
- br i1 %tmp40, label %foreachbody, label %endif34
-
-foreachbody: ; preds = %foreachcond
- %tmp42.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 1 ; <i32*> [#uses=1]
- %tmp74 = load i32* %tmp42.1, align 8 ; <i32> [#uses=2]
- %tmp47 = icmp eq i32 %tmp74, 2 ; <i1> [#uses=1]
- br i1 %tmp47, label %if48, label %foreachnext
-
-if48: ; preds = %foreachbody
- %tmp4291.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp92 = load i32* %tmp4291.0 ; <i32> [#uses=1]
- %tmp4291.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 0, i32 1 ; <i8**> [#uses=1]
- %tmp93 = load i8** %tmp4291.1, align 4 ; <i8*> [#uses=1]
- %tmp42.2 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 2 ; <i64*> [#uses=1]
- %tmp75 = load i64* %tmp42.2, align 4 ; <i64> [#uses=1]
- %tmp42.3.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 3, i32 0 ; <i64*> [#uses=1]
- %tmp89 = load i64* %tmp42.3.0, align 4 ; <i64> [#uses=1]
- %tmp42.4.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 4, i32 0 ; <i64*> [#uses=1]
- %tmp87 = load i64* %tmp42.4.0, align 4 ; <i64> [#uses=1]
- %tmp42.5.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 5, i32 0 ; <i32*> [#uses=1]
- %tmp83 = load i32* %tmp42.5.0, align 4 ; <i32> [#uses=1]
- %tmp42.5.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 5, i32 1 ; <i8**> [#uses=1]
- %tmp84 = load i8** %tmp42.5.1, align 4 ; <i8*> [#uses=1]
- %tmp42.6 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898, i32 %foreachkey.0, i32 6 ; <i8**> [#uses=1]
- %tmp82 = load i8** %tmp42.6, align 4 ; <i8*> [#uses=1]
- %1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp92, i32* %1
- %.sret_arg94.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp93, i8** %.sret_arg94.1, align 4
- %.sret_arg.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 1 ; <i32*> [#uses=1]
- store i32 %tmp74, i32* %.sret_arg.1, align 8
- %.sret_arg.2 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 2 ; <i64*> [#uses=1]
- store i64 %tmp75, i64* %.sret_arg.2, align 4
- %.sret_arg.3.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 3, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp89, i64* %.sret_arg.3.0, align 4
- %.sret_arg.4.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 4, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp87, i64* %.sret_arg.4.0, align 4
- %.sret_arg.5.0 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 5, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp83, i32* %.sret_arg.5.0, align 4
- %.sret_arg.5.1 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 5, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp84, i8** %.sret_arg.5.1, align 4
- %.sret_arg.6 = getelementptr %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg, i32 0, i32 6 ; <i8**> [#uses=1]
- store i8* %tmp82, i8** %.sret_arg.6, align 4
- ret void
-
-foreachnext: ; preds = %foreachbody
- %tmp54 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-endif34: ; preds = %foreachcond, %else
- %tmp58 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %.sret_arg to i8* ; <i8*> [#uses=1]
- %tmp59 = bitcast %tango.net.ftp.FtpClient.FtpFileInfo* %tmp1898 to i8* ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp58, i8* %tmp59, i32 48, i32 1)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection3putMFAaAaDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, %"byte[]" %local_file_arg, %"void delegate(uint pos)" %progress_arg, i32 %format_arg) {
-entry:
- %style_arg = alloca i32, align 8 ; <i32*> [#uses=2]
- %tmpcast = bitcast i32* %style_arg to %tango.io.device.File.File.Style* ; <%tango.io.device.File.File.Style*> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango2io6device4File4File7__ClassZ) ; <i8*> [#uses=10]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.io.device.File.File* ; <%tango.io.device.File.File*> [#uses=2]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.io.device.File.File.__vtbl** ; <%tango.io.device.File.File.__vtbl**> [#uses=3]
- store %tango.io.device.File.File.__vtbl* @_D5tango2io6device4File4File6__vtblZ, %tango.io.device.File.File.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp, i8* bitcast (%13** getelementptr (%tango.io.device.File.File* bitcast (%27* @_D5tango2io6device4File4File6__initZ to %tango.io.device.File.File*), i32 0, i32 2) to i8*), i32 32, i32 1)
- %tmp50 = load i32* bitcast (%tango.io.device.File.File.Style* @_D5tango2io6device4File4File12ReadExistingS5tango2io6device4File4File5Style to i32*), align 1 ; <i32> [#uses=1]
- store i32 %tmp50, i32* %style_arg, align 8
- %tmp2.i = load %tango.io.device.File.File.__vtbl** %vtbl ; <%tango.io.device.File.File.__vtbl*> [#uses=1]
- %"this.open@vtbl.i" = getelementptr %tango.io.device.File.File.__vtbl* %tmp2.i, i32 0, i32 18 ; <void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)**> [#uses=1]
- %this.open.i = load void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)** %"this.open@vtbl.i", align 4 ; <void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)*> [#uses=1]
- tail call fastcc void %this.open.i(%tango.io.device.File.File* %.newclass_gc, %"byte[]" %local_file_arg, %tango.io.device.File.File.Style* byval %tmpcast)
- %tmp13 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=2]
- %tmp14 = load i32* %tmp13 ; <i32> [#uses=2]
- %tmp15 = icmp eq i32 %tmp14, 0 ; <i1> [#uses=1]
- br i1 %tmp15, label %endif, label %if
-
-if: ; preds = %entry
- %tmp18 = load %tango.io.device.File.File.__vtbl** %vtbl ; <%tango.io.device.File.File.__vtbl*> [#uses=1]
- %"file.seek@vtbl" = getelementptr %tango.io.device.File.File.__vtbl* %tmp18, i32 0, i32 13 ; <i64 (%tango.io.device.File.File*, i64, i32)**> [#uses=1]
- %file.seek = load i64 (%tango.io.device.File.File*, i64, i32)** %"file.seek@vtbl", align 4 ; <i64 (%tango.io.device.File.File*, i64, i32)*> [#uses=1]
- %tmp23 = zext i32 %tmp14 to i64 ; <i64> [#uses=1]
- %tmp24 = invoke fastcc i64 %file.seek(%tango.io.device.File.File* %.newclass_gc, i64 %tmp23, i32 0)
- to label %postinvoke unwind label %landingpad ; <i64> [#uses=0]
-
-postinvoke: ; preds = %if
- store i32 0, i32* %tmp13
- br label %endif
-
-endif: ; preds = %postinvoke, %entry
- %tmp28 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp29 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp28 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.put@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp29, i32 0, i32 54 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)", i32)**> [#uses=1]
- %this.put = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)", i32)** %"this.put@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)", i32)*> [#uses=1]
- %tmp34 = bitcast i8* %tmp to %tango.io.model.IConduit.InputStream* ; <%tango.io.model.IConduit.InputStream*> [#uses=1]
- invoke fastcc void %this.put(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, %tango.io.model.IConduit.InputStream* %tmp34, %"void delegate(uint pos)" %progress_arg, i32 %format_arg)
- to label %finally unwind label %landingpad
-
-finally: ; preds = %endif
- %tmp39 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device* ; <%tango.io.device.Device.Device*> [#uses=1]
- %tmp40 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device.__vtbl** ; <%tango.io.device.Device.Device.__vtbl**> [#uses=1]
- %tmp41 = load %tango.io.device.Device.Device.__vtbl** %tmp40 ; <%tango.io.device.Device.Device.__vtbl*> [#uses=1]
- %"(cast(Device)file).detach@vtbl42" = getelementptr %tango.io.device.Device.Device.__vtbl* %tmp41, i32 0, i32 8 ; <void (%tango.io.device.Device.Device*)**> [#uses=1]
- %"(cast(Device)file).detach44" = load void (%tango.io.device.Device.Device*)** %"(cast(Device)file).detach@vtbl42", align 4 ; <void (%tango.io.device.Device.Device*)*> [#uses=1]
- tail call fastcc void %"(cast(Device)file).detach44"(%tango.io.device.Device.Device* %tmp39)
- %.tmp46 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_delclass(%object.Object* %.tmp46)
- ret void
-
-landingpad: ; preds = %endif, %if
- %1 = tail call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %2 = tail call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %1, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- %tmp7 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device* ; <%tango.io.device.Device.Device*> [#uses=1]
- %tmp8 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device.__vtbl** ; <%tango.io.device.Device.Device.__vtbl**> [#uses=1]
- %tmp9 = load %tango.io.device.Device.Device.__vtbl** %tmp8 ; <%tango.io.device.Device.Device.__vtbl*> [#uses=1]
- %"(cast(Device)file).detach@vtbl" = getelementptr %tango.io.device.Device.Device.__vtbl* %tmp9, i32 0, i32 8 ; <void (%tango.io.device.Device.Device*)**> [#uses=1]
- %"(cast(Device)file).detach" = load void (%tango.io.device.Device.Device*)** %"(cast(Device)file).detach@vtbl", align 4 ; <void (%tango.io.device.Device.Device*)*> [#uses=1]
- tail call fastcc void %"(cast(Device)file).detach"(%tango.io.device.Device.Device* %tmp7)
- %.tmp = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_delclass(%object.Object* %.tmp)
- tail call void @_d_eh_resume_unwind(i8* %1)
- unreachable
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection3putMFAaC5tango2io5model8IConduit11InputStreamDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, %tango.io.model.IConduit.InputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg, i32 %format_arg) {
-entry:
- %__arrayArg150 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=4]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.type@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 29 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)**> [#uses=1]
- %this.type = load void (%tango.net.ftp.FtpClient.FTPConnection*, i32)** %"this.type@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)*> [#uses=1]
- call fastcc void %this.type(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 %format_arg)
- %tmp7 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.processDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 45 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.processDataCommand = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.processDataCommand@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp9 = getelementptr [1 x %"byte[]"]* %__arrayArg150, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp9, align 8
- %tmp12 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp9, 1 ; <%"char[][]"> [#uses=1]
- %tmp13 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str199, i32 0, i32 0) }, %"char[][]" %tmp12) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp15 = icmp eq %tango.io.model.IConduit.InputStream* %stream_arg, null ; <i1> [#uses=1]
- br i1 %tmp15, label %endif, label %if
-
-if: ; preds = %entry
- %tmp18 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendStream@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp18, i32 0, i32 48 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")**> [#uses=1]
- %this.sendStream = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")** %"this.sendStream@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")*> [#uses=1]
- call fastcc void %this.sendStream(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp13, %tango.io.model.IConduit.InputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg)
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp25 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.finishDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp25, i32 0, i32 44 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.finishDataCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)** %"this.finishDataCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %this.finishDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp13)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection6appendMFAaC5tango2io5model8IConduit11InputStreamDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, %tango.io.model.IConduit.InputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg, i32 %format_arg) {
-entry:
- %__arrayArg151 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=4]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.type@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 29 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)**> [#uses=1]
- %this.type = load void (%tango.net.ftp.FtpClient.FTPConnection*, i32)** %"this.type@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)*> [#uses=1]
- call fastcc void %this.type(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 %format_arg)
- %tmp7 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.processDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 45 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.processDataCommand = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.processDataCommand@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp9 = getelementptr [1 x %"byte[]"]* %__arrayArg151, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp9, align 8
- %tmp12 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp9, 1 ; <%"char[][]"> [#uses=1]
- %tmp13 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str200, i32 0, i32 0) }, %"char[][]" %tmp12) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp16 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendStream@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp16, i32 0, i32 48 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")**> [#uses=1]
- %this.sendStream = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")** %"this.sendStream@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.InputStream*, %"void delegate(uint pos)")*> [#uses=1]
- call fastcc void %this.sendStream(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp13, %tango.io.model.IConduit.InputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg)
- %tmp23 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.finishDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp23, i32 0, i32 44 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.finishDataCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)** %"this.finishDataCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %this.finishDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp13)
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection11restartSeekMFkZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 %offset_arg) {
-entry:
- %tmp = alloca [16 x i8], align 1 ; <[16 x i8]*> [#uses=3]
- %__arrayArg152 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = getelementptr [16 x i8]* %tmp, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp1, i8 -1, i32 16, i32 1)
- %tmp3 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp4 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp4, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp6 = getelementptr [1 x %"byte[]"]* %__arrayArg152, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- %tmp49.i = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 2) ; <%"byte[]"> [#uses=1]
- %tmp49178.i = extractvalue %"byte[]" %tmp49.i, 1 ; <i8*> [#uses=1]
- %tmp52.i = load i32* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 0), align 8 ; <i32> [#uses=2]
- %tmp56.i = getelementptr [16 x i8]* %tmp, i32 0, i32 16 ; <i8*> [#uses=1]
- br label %dowhile.i
-
-dowhile.i: ; preds = %andand.i, %entry
- %p.0.i = phi i8* [ %tmp65.i, %andand.i ], [ %tmp56.i, %entry ] ; <i8*> [#uses=1]
- %v.0.i = phi i32 [ %tmp75.i, %andand.i ], [ %offset_arg, %entry ] ; <i32> [#uses=2]
- %len.0.i = phi i32 [ %tmp78.i, %andand.i ], [ 16, %entry ] ; <i32> [#uses=3]
- %tmp65.i = getelementptr i8* %p.0.i, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i = urem i32 %v.0.i, %tmp52.i ; <i32> [#uses=1]
- %tmp71.i = getelementptr i8* %tmp49178.i, i32 %tmp68.i ; <i8*> [#uses=1]
- %tmp72.i = load i8* %tmp71.i ; <i8> [#uses=1]
- store i8 %tmp72.i, i8* %tmp65.i
- %tmp75.i = udiv i32 %v.0.i, %tmp52.i ; <i32> [#uses=2]
- %tmp76.i = icmp eq i32 %tmp75.i, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i, label %condtrue.i, label %andand.i
-
-andand.i: ; preds = %dowhile.i
- %tmp78.i = add i32 %len.0.i, -1 ; <i32> [#uses=2]
- %tmp79.i = icmp eq i32 %len.0.i, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i, label %condtrue.i, label %dowhile.i
-
-condtrue.i: ; preds = %andand.i, %dowhile.i
- %len.1.i = phi i32 [ %tmp78.i, %andand.i ], [ %len.0.i, %dowhile.i ] ; <i32> [#uses=2]
- %tmp112.i = load %"byte[]"* getelementptr ([8 x %nest.parseListLine]* @.constarray262, i32 0, i32 0, i32 1) ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i = extractvalue %"byte[]" %tmp112.i, 0 ; <i32> [#uses=3]
- %tmp117.i = icmp ugt i32 %len.1.i, %condtmp.0175.i ; <i1> [#uses=1]
- br i1 %tmp117.i, label %if118.i, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-if118.i: ; preds = %condtrue.i
- %condtmp.0176.i = extractvalue %"byte[]" %tmp112.i, 1 ; <i8*> [#uses=1]
- %tmp123.i = add i32 %condtmp.0175.i, 1 ; <i32> [#uses=1]
- %tmp124.i = sub i32 %len.1.i, %tmp123.i ; <i32> [#uses=2]
- %tmp156.i = getelementptr [16 x i8]* %tmp, i32 0, i32 %tmp124.i ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i, i8* %condtmp.0176.i, i32 %condtmp.0175.i, i32 1)
- %tmp170.i = sub i32 16, %tmp124.i ; <i32> [#uses=1]
- %tmp171.i = insertvalue %"byte[]" undef, i32 %tmp170.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i = insertvalue %"byte[]" %tmp171.i, i8* %tmp156.i, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit: ; preds = %if118.i, %condtrue.i
- %tmp6.i21 = phi %"byte[]" [ %tmp172.i, %if118.i ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i21, %"byte[]"* %tmp6, align 8
- %tmp13 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp6, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str201, i32 0, i32 0) }, %"char[][]" %tmp13)
- %tmp16 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp16, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str202, i32 0, i32 0) })
- %tmp19 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- store i32 %offset_arg, i32* %tmp19
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection8allocateMFlZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i64 %bytes_arg) {
-entry:
- %tmp = alloca [16 x i8], align 1 ; <[16 x i8]*> [#uses=3]
- %__arrayArg153 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %response = alloca %tango.net.ftp.FtpClient.FtpResponse, align 4 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=2]
- %tmp1 = getelementptr [16 x i8]* %tmp, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp1, i8 -1, i32 16, i32 1)
- %tmp3 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=3]
- %tmp4 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp4, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp6 = getelementptr [1 x %"byte[]"]* %__arrayArg153, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- %tmp10.i = icmp slt i64 %bytes_arg, 0 ; <i1> [#uses=1]
- %negval.i = sub i64 0, %bytes_arg ; <i64> [#uses=1]
- %bytes_arg.lobit = lshr i64 %bytes_arg, 63 ; <i64> [#uses=1]
- %tmp36 = trunc i64 %bytes_arg.lobit to i32 ; <i32> [#uses=3]
- %i.1.i = select i1 %tmp10.i, i64 %negval.i, i64 %bytes_arg ; <i64> [#uses=3]
- %tmp48.i = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %tmp36, i32 2 ; <%"byte[]"*> [#uses=1]
- %tmp49.i = load %"byte[]"* %tmp48.i ; <%"byte[]"> [#uses=1]
- %tmp49178.i = extractvalue %"byte[]" %tmp49.i, 1 ; <i8*> [#uses=2]
- %tmp51.i = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %tmp36, i32 0 ; <i32*> [#uses=1]
- %tmp52.i = load i32* %tmp51.i ; <i32> [#uses=3]
- %tmp56.i = getelementptr [16 x i8]* %tmp, i32 0, i32 16 ; <i8*> [#uses=2]
- %tmp58.i = icmp ugt i64 %i.1.i, 4294967295 ; <i1> [#uses=1]
- br i1 %tmp58.i, label %dowhile82.i, label %if59.i
-
-if59.i: ; preds = %entry
- %tmp63.i = trunc i64 %i.1.i to i32 ; <i32> [#uses=1]
- br label %dowhile.i
-
-dowhile.i: ; preds = %andand.i, %if59.i
- %p.0.i = phi i8* [ %tmp56.i, %if59.i ], [ %tmp65.i, %andand.i ] ; <i8*> [#uses=1]
- %v.0.i = phi i32 [ %tmp63.i, %if59.i ], [ %tmp75.i, %andand.i ] ; <i32> [#uses=2]
- %len.0.i = phi i32 [ 16, %if59.i ], [ %tmp78.i, %andand.i ] ; <i32> [#uses=3]
- %tmp65.i = getelementptr i8* %p.0.i, i32 -1 ; <i8*> [#uses=2]
- %tmp68.i = urem i32 %v.0.i, %tmp52.i ; <i32> [#uses=1]
- %tmp71.i = getelementptr i8* %tmp49178.i, i32 %tmp68.i ; <i8*> [#uses=1]
- %tmp72.i = load i8* %tmp71.i ; <i8> [#uses=1]
- store i8 %tmp72.i, i8* %tmp65.i
- %tmp75.i = udiv i32 %v.0.i, %tmp52.i ; <i32> [#uses=2]
- %tmp76.i = icmp eq i32 %tmp75.i, 0 ; <i1> [#uses=1]
- br i1 %tmp76.i, label %condtrue.i, label %andand.i
-
-andand.i: ; preds = %dowhile.i
- %tmp78.i = add i32 %len.0.i, -1 ; <i32> [#uses=2]
- %tmp79.i = icmp eq i32 %len.0.i, 1 ; <i1> [#uses=1]
- br i1 %tmp79.i, label %condtrue.i, label %dowhile.i
-
-dowhile82.i: ; preds = %andand100.i, %entry
- %p.2.i = phi i8* [ %tmp86.i, %andand100.i ], [ %tmp56.i, %entry ] ; <i8*> [#uses=1]
- %v80.0.i = phi i64 [ %tmp99.i, %andand100.i ], [ %i.1.i, %entry ] ; <i64> [#uses=2]
- %len.2.i = phi i32 [ %tmp104.i, %andand100.i ], [ 16, %entry ] ; <i32> [#uses=3]
- %tmp86.i = getelementptr i8* %p.2.i, i32 -1 ; <i8*> [#uses=2]
- %tmp88.i = zext i32 %tmp52.i to i64 ; <i64> [#uses=2]
- %tmp90.i = urem i64 %v80.0.i, %tmp88.i ; <i64> [#uses=1]
- %tmp91.i = trunc i64 %tmp90.i to i32 ; <i32> [#uses=1]
- %tmp94.i = getelementptr i8* %tmp49178.i, i32 %tmp91.i ; <i8*> [#uses=1]
- %tmp95.i = load i8* %tmp94.i ; <i8> [#uses=1]
- store i8 %tmp95.i, i8* %tmp86.i
- %tmp99.i = udiv i64 %v80.0.i, %tmp88.i ; <i64> [#uses=2]
- %tmp102.i = icmp eq i64 %tmp99.i, 0 ; <i1> [#uses=1]
- br i1 %tmp102.i, label %condtrue.i, label %andand100.i
-
-andand100.i: ; preds = %dowhile82.i
- %tmp104.i = add i32 %len.2.i, -1 ; <i32> [#uses=2]
- %tmp105.i = icmp eq i32 %len.2.i, 1 ; <i1> [#uses=1]
- br i1 %tmp105.i, label %condtrue.i, label %dowhile82.i
-
-condtrue.i: ; preds = %andand100.i, %dowhile82.i, %andand.i, %dowhile.i
- %len.1.i = phi i32 [ %tmp78.i, %andand.i ], [ %len.0.i, %dowhile.i ], [ %tmp104.i, %andand100.i ], [ %len.2.i, %dowhile82.i ] ; <i32> [#uses=2]
- %tmp111.i = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %tmp36, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp112.i = load %"byte[]"* %tmp111.i ; <%"byte[]"> [#uses=2]
- %condtmp.0175.i = extractvalue %"byte[]" %tmp112.i, 0 ; <i32> [#uses=3]
- %tmp117.i = icmp ugt i32 %len.1.i, %condtmp.0175.i ; <i1> [#uses=1]
- br i1 %tmp117.i, label %if118.i, label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-if118.i: ; preds = %condtrue.i
- %condtmp.0176.i = extractvalue %"byte[]" %tmp112.i, 1 ; <i8*> [#uses=1]
- %tmp123.i = add i32 %condtmp.0175.i, 1 ; <i32> [#uses=1]
- %tmp124.i = sub i32 %len.1.i, %tmp123.i ; <i32> [#uses=2]
- %tmp156.i = getelementptr [16 x i8]* %tmp, i32 0, i32 %tmp124.i ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp156.i, i8* %condtmp.0176.i, i32 %condtmp.0175.i, i32 1)
- %tmp170.i = sub i32 16, %tmp124.i ; <i32> [#uses=1]
- %tmp171.i = insertvalue %"byte[]" undef, i32 %tmp170.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp172.i = insertvalue %"byte[]" %tmp171.i, i8* %tmp156.i, 1 ; <%"byte[]"> [#uses=1]
- br label %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
-
-_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit: ; preds = %if118.i, %condtrue.i
- %tmp6.i35 = phi %"byte[]" [ %tmp172.i, %if118.i ], [ { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }, %condtrue.i ] ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp6.i35, %"byte[]"* %tmp6, align 8
- %tmp12 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp6, 1 ; <%"char[][]"> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str203, i32 0, i32 0) }, %"char[][]" %tmp12)
- %tmp15 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp15, i32 0, i32 37 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*)*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg)
- %tmp17 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %response, i32 0, i32 0, i32 0 ; <i8*> [#uses=3]
- %tmp18 = getelementptr %tango.net.ftp.FtpClient.FtpResponse* %.rettmp, i32 0, i32 0, i32 0 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp17, i8* %tmp18, i32 12, i32 4)
- %tmp21 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp17, 1 ; <%"byte[]"> [#uses=1]
- %tmp22 = call i32 @_adEq(%"byte[]" %tmp21, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str204, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp23 = icmp eq i32 %tmp22, 0 ; <i1> [#uses=1]
- br i1 %tmp23, label %andand, label %endif
-
-andand: ; preds = %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
- %tmp27 = insertvalue %"byte[]" { i32 3, i8* undef }, i8* %tmp17, 1 ; <%"byte[]"> [#uses=1]
- %tmp28 = call i32 @_adEq(%"byte[]" %tmp27, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str205, i32 0, i32 0) }, %object.TypeInfo* @_D11TypeInfo_Aa6__initZ) readonly ; <i32> [#uses=1]
- %tmp29 = icmp eq i32 %tmp28, 0 ; <i1> [#uses=1]
- br i1 %tmp29, label %if, label %endif
-
-if: ; preds = %andand
- %tmp33 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.exception@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp33, i32 0, i32 14 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)**> [#uses=1]
- %this.exception = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)** %"this.exception@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpResponse*)*> [#uses=1]
- call fastcc void %this.exception(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpResponse* byval %response)
- ret void
-
-endif: ; preds = %andand, %_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa.exit
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection3getMFAaAaDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, %"byte[]" %local_file_arg, %"void delegate(uint pos)" %progress_arg, i32 %format_arg) {
-entry:
- %style_arg57 = alloca i32, align 8 ; <i32*> [#uses=2]
- %style_arg = alloca i32, align 8 ; <i32*> [#uses=2]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=3]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp3 = icmp eq i32 %tmp2, 0 ; <i1> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango2io6device4File4File7__ClassZ) ; <i8*> [#uses=11]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %tango.io.device.File.File* ; <%tango.io.device.File.File*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %tango.io.device.File.File.__vtbl** ; <%tango.io.device.File.File.__vtbl**> [#uses=4]
- store %tango.io.device.File.File.__vtbl* @_D5tango2io6device4File4File6__vtblZ, %tango.io.device.File.File.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp4 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4, i8* bitcast (%13** getelementptr (%tango.io.device.File.File* bitcast (%27* @_D5tango2io6device4File4File6__initZ to %tango.io.device.File.File*), i32 0, i32 2) to i8*), i32 32, i32 1)
- br i1 %tmp3, label %if, label %else
-
-if: ; preds = %entry
- %tmpcast = bitcast i32* %style_arg to %tango.io.device.File.File.Style* ; <%tango.io.device.File.File.Style*> [#uses=1]
- %tmp65 = load i32* bitcast (%tango.io.device.File.File.Style* @_D5tango2io6device4File4File15ReadWriteCreateS5tango2io6device4File4File5Style to i32*), align 1 ; <i32> [#uses=1]
- store i32 %tmp65, i32* %style_arg, align 8
- %tmp2.i = load %tango.io.device.File.File.__vtbl** %vtbl ; <%tango.io.device.File.File.__vtbl*> [#uses=1]
- %"this.open@vtbl.i" = getelementptr %tango.io.device.File.File.__vtbl* %tmp2.i, i32 0, i32 18 ; <void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)**> [#uses=1]
- %this.open.i = load void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)** %"this.open@vtbl.i", align 4 ; <void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)*> [#uses=1]
- tail call fastcc void %this.open.i(%tango.io.device.File.File* %.newclass_gc, %"byte[]" %local_file_arg, %tango.io.device.File.File.Style* byval %tmpcast)
- br label %try
-
-else: ; preds = %entry
- %tmpcast68 = bitcast i32* %style_arg57 to %tango.io.device.File.File.Style* ; <%tango.io.device.File.File.Style*> [#uses=1]
- %tmp = load i32* bitcast (%tango.io.device.File.File.Style* @_D5tango2io6device4File4File17ReadWriteExistingS5tango2io6device4File4File5Style to i32*), align 1 ; <i32> [#uses=1]
- store i32 %tmp, i32* %style_arg57, align 8
- %tmp2.i61 = load %tango.io.device.File.File.__vtbl** %vtbl ; <%tango.io.device.File.File.__vtbl*> [#uses=1]
- %"this.open@vtbl.i62" = getelementptr %tango.io.device.File.File.__vtbl* %tmp2.i61, i32 0, i32 18 ; <void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)**> [#uses=1]
- %this.open.i63 = load void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)** %"this.open@vtbl.i62", align 4 ; <void (%tango.io.device.File.File*, %"byte[]", %tango.io.device.File.File.Style*)*> [#uses=1]
- tail call fastcc void %this.open.i63(%tango.io.device.File.File* %.newclass_gc, %"byte[]" %local_file_arg, %tango.io.device.File.File.Style* byval %tmpcast68)
- %tmp22 = load %tango.io.device.File.File.__vtbl** %vtbl ; <%tango.io.device.File.File.__vtbl*> [#uses=1]
- %"file.seek@vtbl" = getelementptr %tango.io.device.File.File.__vtbl* %tmp22, i32 0, i32 13 ; <i64 (%tango.io.device.File.File*, i64, i32)**> [#uses=1]
- %file.seek = load i64 (%tango.io.device.File.File*, i64, i32)** %"file.seek@vtbl", align 4 ; <i64 (%tango.io.device.File.File*, i64, i32)*> [#uses=1]
- %tmp26 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp27 = zext i32 %tmp26 to i64 ; <i64> [#uses=1]
- %tmp28 = tail call fastcc i64 %file.seek(%tango.io.device.File.File* %.newclass_gc, i64 %tmp27, i32 0) ; <i64> [#uses=0]
- store i32 0, i32* %tmp1
- br label %try
-
-try: ; preds = %else, %if
- %tmp38 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp39 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp38 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.get@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp39, i32 0, i32 60 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)", i32)**> [#uses=1]
- %this.get = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)", i32)** %"this.get@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)", i32)*> [#uses=1]
- %tmp43 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %tmp44 = bitcast i8* %tmp43 to %tango.io.model.IConduit.OutputStream* ; <%tango.io.model.IConduit.OutputStream*> [#uses=1]
- invoke fastcc void %this.get(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, %tango.io.model.IConduit.OutputStream* %tmp44, %"void delegate(uint pos)" %progress_arg, i32 %format_arg)
- to label %finally unwind label %landingpad
-
-finally: ; preds = %try
- %tmp48 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device* ; <%tango.io.device.Device.Device*> [#uses=1]
- %tmp49 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device.__vtbl** ; <%tango.io.device.Device.Device.__vtbl**> [#uses=1]
- %tmp50 = load %tango.io.device.Device.Device.__vtbl** %tmp49 ; <%tango.io.device.Device.Device.__vtbl*> [#uses=1]
- %"(cast(Device)file).detach@vtbl51" = getelementptr %tango.io.device.Device.Device.__vtbl* %tmp50, i32 0, i32 8 ; <void (%tango.io.device.Device.Device*)**> [#uses=1]
- %"(cast(Device)file).detach53" = load void (%tango.io.device.Device.Device*)** %"(cast(Device)file).detach@vtbl51", align 4 ; <void (%tango.io.device.Device.Device*)*> [#uses=1]
- tail call fastcc void %"(cast(Device)file).detach53"(%tango.io.device.Device.Device* %tmp48)
- %.tmp55 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_delclass(%object.Object* %.tmp55)
- ret void
-
-landingpad: ; preds = %try
- %1 = tail call i8* @llvm.eh.exception() ; <i8*> [#uses=2]
- %2 = tail call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32(i8* %1, i8* bitcast (i32 (i32, i32, i64, i8*, i8*)* @_d_eh_personality to i8*), i32 0) ; <i32> [#uses=0]
- %tmp32 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device* ; <%tango.io.device.Device.Device*> [#uses=1]
- %tmp33 = bitcast i8* %.newclass_gc_alloc to %tango.io.device.Device.Device.__vtbl** ; <%tango.io.device.Device.Device.__vtbl**> [#uses=1]
- %tmp34 = load %tango.io.device.Device.Device.__vtbl** %tmp33 ; <%tango.io.device.Device.Device.__vtbl*> [#uses=1]
- %"(cast(Device)file).detach@vtbl" = getelementptr %tango.io.device.Device.Device.__vtbl* %tmp34, i32 0, i32 8 ; <void (%tango.io.device.Device.Device*)**> [#uses=1]
- %"(cast(Device)file).detach" = load void (%tango.io.device.Device.Device*)** %"(cast(Device)file).detach@vtbl", align 4 ; <void (%tango.io.device.Device.Device*)*> [#uses=1]
- tail call fastcc void %"(cast(Device)file).detach"(%tango.io.device.Device.Device* %tmp32)
- %.tmp = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_delclass(%object.Object* %.tmp)
- tail call void @_d_eh_resume_unwind(i8* %1)
- unreachable
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection10enableUTF8MFZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) {
-entry:
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpResponse, align 8 ; <%tango.net.ftp.FtpClient.FtpResponse*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=2]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.sendCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 35 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.sendCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.sendCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- call fastcc void %this.sendCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 12, i8* getelementptr ([13 x i8]* @.str206, i32 0, i32 0) }, %"char[][]" zeroinitializer)
- %tmp6 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readResponse@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp6, i32 0, i32 36 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")**> [#uses=1]
- %this.readResponse = load void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")** %"this.readResponse@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FtpResponse*, %tango.net.ftp.FtpClient.FTPConnection*, %"byte[]")*> [#uses=1]
- call fastcc void %this.readResponse(%tango.net.ftp.FtpClient.FtpResponse* noalias nocapture sret %.rettmp, %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 3, i8* getelementptr ([4 x i8]* @.str207, i32 0, i32 0) })
- ret void
-}
-
-define fastcc void @_D5tango3net3ftp9FtpClient13FTPConnection3getMFAaC5tango2io5model8IConduit12OutputStreamDFkZvE5tango3net3ftp9FtpClient9FtpFormatZv(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg, %tango.io.model.IConduit.OutputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg, i32 %format_arg) {
-entry:
- %__arrayArg155 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=4]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.type@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 29 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)**> [#uses=1]
- %this.type = load void (%tango.net.ftp.FtpClient.FTPConnection*, i32)** %"this.type@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, i32)*> [#uses=1]
- call fastcc void %this.type(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 %format_arg)
- %tmp7 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.processDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp7, i32 0, i32 45 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.processDataCommand = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.processDataCommand@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp9 = getelementptr [1 x %"byte[]"]* %__arrayArg155, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp9, align 8
- %tmp12 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp9, 1 ; <%"char[][]"> [#uses=1]
- %tmp13 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str208, i32 0, i32 0) }, %"char[][]" %tmp12) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=2]
- %tmp16 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.readStream@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp16, i32 0, i32 47 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")**> [#uses=1]
- %this.readStream = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")** %"this.readStream@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*, %tango.io.model.IConduit.OutputStream*, %"void delegate(uint pos)")*> [#uses=1]
- call fastcc void %this.readStream(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp13, %tango.io.model.IConduit.OutputStream* %stream_arg, %"void delegate(uint pos)" %progress_arg)
- %tmp23 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.finishDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp23, i32 0, i32 44 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)**> [#uses=1]
- %this.finishDataCommand = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)** %"this.finishDataCommand@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.SocketConduit.SocketConduit*)*> [#uses=1]
- call fastcc void %this.finishDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.SocketConduit.SocketConduit* %tmp13)
- ret void
-}
-
-define fastcc %tango.io.model.IConduit.InputStream* @_D5tango3net3ftp9FtpClient13FTPConnection5inputMFAaZC5tango2io5model8IConduit11InputStream(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %__arrayArg156 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 9 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=1]
- %tmp3 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp4 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.processDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp4, i32 0, i32 45 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.processDataCommand = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.processDataCommand@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp6 = getelementptr [1 x %"byte[]"]* %__arrayArg156, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp6, align 8
- %tmp9 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp6, 1 ; <%"char[][]"> [#uses=1]
- %tmp10 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str209, i32 0, i32 0) }, %"char[][]" %tmp9) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=3]
- store %tango.net.SocketConduit.SocketConduit* %tmp10, %tango.net.SocketConduit.SocketConduit** %tmp1
- %tmp14 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp10, i32 0, i32 2 ; <%15**> [#uses=1]
- %tmp15 = bitcast %15** %tmp14 to %tango.io.model.IConduit.InputStream* ; <%tango.io.model.IConduit.InputStream*> [#uses=1]
- %.nullcheck = icmp eq %tango.net.SocketConduit.SocketConduit* %tmp10, null ; <i1> [#uses=1]
- %.interface = select i1 %.nullcheck, %tango.io.model.IConduit.InputStream* null, %tango.io.model.IConduit.InputStream* %tmp15 ; <%tango.io.model.IConduit.InputStream*> [#uses=1]
- ret %tango.io.model.IConduit.InputStream* %.interface
-}
-
-define fastcc %tango.io.model.IConduit.OutputStream* @_D5tango3net3ftp9FtpClient13FTPConnection6outputMFAaZC5tango2io5model8IConduit12OutputStream(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %path_arg) {
-entry:
- %__arrayArg157 = alloca [1 x %"byte[]"], align 8 ; <[1 x %"byte[]"]*> [#uses=1]
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 9 ; <%tango.net.SocketConduit.SocketConduit**> [#uses=1]
- %tmp3 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp4 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp3 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.processDataCommand@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp4, i32 0, i32 45 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")**> [#uses=1]
- %this.processDataCommand = load %tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")** %"this.processDataCommand@vtbl", align 4 ; <%tango.net.SocketConduit.SocketConduit* (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"char[][]")*> [#uses=1]
- %tmp6 = getelementptr [1 x %"byte[]"]* %__arrayArg157, i32 0, i32 0 ; <%"byte[]"*> [#uses=2]
- store %"byte[]" %path_arg, %"byte[]"* %tmp6, align 8
- %tmp9 = insertvalue %"char[][]" { i32 1, %"byte[]"* undef }, %"byte[]"* %tmp6, 1 ; <%"char[][]"> [#uses=1]
- %tmp10 = call fastcc %tango.net.SocketConduit.SocketConduit* %this.processDataCommand(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" { i32 4, i8* getelementptr ([5 x i8]* @.str210, i32 0, i32 0) }, %"char[][]" %tmp9) ; <%tango.net.SocketConduit.SocketConduit*> [#uses=3]
- store %tango.net.SocketConduit.SocketConduit* %tmp10, %tango.net.SocketConduit.SocketConduit** %tmp1
- %tmp14 = getelementptr %tango.net.SocketConduit.SocketConduit* %tmp10, i32 0, i32 3 ; <%16**> [#uses=1]
- %tmp15 = bitcast %16** %tmp14 to %tango.io.model.IConduit.OutputStream* ; <%tango.io.model.IConduit.OutputStream*> [#uses=1]
- %.nullcheck = icmp eq %tango.net.SocketConduit.SocketConduit* %tmp10, null ; <i1> [#uses=1]
- %.interface = select i1 %.nullcheck, %tango.io.model.IConduit.OutputStream* null, %tango.io.model.IConduit.OutputStream* %tmp15 ; <%tango.io.model.IConduit.OutputStream*> [#uses=1]
- ret %tango.io.model.IConduit.OutputStream* %.interface
-}
-
-define fastcc %tango.net.ftp.FtpClient.FTPConnection* @_D5tango3net3ftp9FtpClient13FTPConnection5_ctorMFZC5tango3net3ftp9FtpClient13FTPConnection(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg) nounwind readnone {
-entry:
- ret %tango.net.ftp.FtpClient.FTPConnection* %.this_arg
-}
-
-define fastcc %tango.net.ftp.FtpClient.FTPConnection* @_D5tango3net3ftp9FtpClient13FTPConnection5_ctorMFAaAaAakZC5tango3net3ftp9FtpClient13FTPConnection(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %hostname_arg, %"byte[]" %username_arg, %"byte[]" %password_arg, i32 %port_arg) {
-entry:
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.connect@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 16 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)**> [#uses=1]
- %this.connect = load void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)** %"this.connect@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %"byte[]", %"byte[]", %"byte[]", i32)*> [#uses=1]
- tail call fastcc void %this.connect(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %"byte[]" %hostname_arg, %"byte[]" %username_arg, %"byte[]" %password_arg, i32 %port_arg)
- ret %tango.net.ftp.FtpClient.FTPConnection* %.this_arg
-}
-
-define fastcc %tango.net.ftp.FtpClient.FTPConnection* @_D5tango3net3ftp9FtpClient13FTPConnection5_ctorMFS5tango3net3ftp9FtpClient10FtpAddressZC5tango3net3ftp9FtpClient13FTPConnection(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpAddress* byval %fad_arg) {
-entry:
- %tmp1 = getelementptr %tango.net.ftp.FtpClient.FTPConnection* %.this_arg, i32 0, i32 0 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl**> [#uses=1]
- %tmp2 = load %tango.net.ftp.FtpClient.FTPConnection.__vtbl** %tmp1 ; <%tango.net.ftp.FtpClient.FTPConnection.__vtbl*> [#uses=1]
- %"this.connect@vtbl" = getelementptr %tango.net.ftp.FtpClient.FTPConnection.__vtbl* %tmp2, i32 0, i32 15 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpAddress*)**> [#uses=1]
- %this.connect = load void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpAddress*)** %"this.connect@vtbl", align 4 ; <void (%tango.net.ftp.FtpClient.FTPConnection*, %tango.net.ftp.FtpClient.FtpAddress*)*> [#uses=1]
- tail call fastcc void %this.connect(%tango.net.ftp.FtpClient.FTPConnection* %.this_arg, %tango.net.ftp.FtpClient.FtpAddress* byval %fad_arg)
- ret %tango.net.ftp.FtpClient.FTPConnection* %.this_arg
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA8tagCountMFZk(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 6 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp3 = add i32 %tmp2, -1 ; <i32> [#uses=1]
- ret i32 %tmp3
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i1 %unanchored_arg) {
-entry:
- %tmp.i872 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i823 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i798 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i773 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i = alloca i32, align 4 ; <i32*> [#uses=2]
- %.frame = alloca %nest.parse, align 8 ; <%nest.parse*> [#uses=43]
- %occur = alloca %tango.net.Socket.timeval, align 8 ; <%tango.net.Socket.timeval*> [#uses=3]
- %cc = alloca %"tango.text.Regex.CharClass!(dchar).CharClass", align 8 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=3]
- %cc323 = alloca %"tango.text.Regex.CharClass!(dchar).CharClass", align 8 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=3]
- %cc351 = alloca %"tango.text.Regex.CharClass!(dchar).CharClass", align 8 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=3]
- %cc381 = alloca %"tango.text.Regex.CharClass!(dchar).CharClass", align 8 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=4]
- %cc448 = alloca %"tango.text.Regex.CharClass!(dchar).CharClass", align 8 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=4]
- %trans = alloca [4 x %"tango.text.Regex.List!(TNFATransition).List"*], align 4 ; <[4 x %"tango.text.Regex.List!(TNFATransition).List"*]*> [#uses=4]
- %layout = getelementptr %nest.parse* %.frame, i32 0, i32 0 ; <%"tango.text.convert.Layout.Layout!(char).Layout"**> [#uses=1]
- %frags = getelementptr %nest.parse* %.frame, i32 0, i32 1 ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=27]
- %opStack = getelementptr %nest.parse* %.frame, i32 0, i32 2 ; <%"tango.text.Regex.Stack!(Operator).Stack"*> [#uses=1]
- %tagStack = getelementptr %nest.parse* %.frame, i32 0, i32 3 ; <%"tango.text.Regex.Stack!(Operator).Stack"*> [#uses=1]
- %occurStack = getelementptr %nest.parse* %.frame, i32 0, i32 4 ; <%"tango.text.Regex.Stack!(Pair!(uint)).Stack"*> [#uses=1]
- %finish = getelementptr %nest.parse* %.frame, i32 0, i32 5 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %todo = getelementptr %nest.parse* %.frame, i32 0, i32 6 ; <%"tango.text.Regex.Stack!(TNFATransition).Stack"*> [#uses=1]
- %nextPrio = getelementptr %nest.parse* %.frame, i32 0, i32 7 ; <i32*> [#uses=1]
- %this = getelementptr %nest.parse* %.frame, i32 0, i32 8 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- store %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFA!(dchar).TNFA"** %this, align 8
- %tmp2 = call fastcc %"tango.text.convert.Layout.Layout!(char).Layout"* @_D5tango4text7convert6Layout13__T6LayoutTaZ6Layout8instanceFZC5tango4text7convert6Layout13__T6LayoutTaZ6Layout() ; <%"tango.text.convert.Layout.Layout!(char).Layout"*> [#uses=1]
- store %"tango.text.convert.Layout.Layout!(char).Layout"* %tmp2, %"tango.text.convert.Layout.Layout!(char).Layout"** %layout, align 8
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFAFragment).List"* ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__vtblZ, %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp3 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp3, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List"** %frags
- %tmp7 = bitcast %"tango.text.Regex.Stack!(Operator).Stack"* %opStack to i8* ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp7, i8 0, i32 12, i32 8)
- %tmp8 = bitcast %"tango.text.Regex.Stack!(Operator).Stack"* %tagStack to i8* ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp8, i8 0, i32 12, i32 4)
- %tmp9 = bitcast %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %occurStack to i8* ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp9, i8 0, i32 12, i32 8)
- %tmp1.i = getelementptr %nest.parse* %.frame, i32 0, i32 2, i32 0 ; <i32*> [#uses=4]
- %tmp4.i = getelementptr %nest.parse* %.frame, i32 0, i32 2, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len.i = load i32* %tmp4.i ; <i32> [#uses=3]
- %tmp5.i = load i32* %tmp1.i, align 8 ; <i32> [#uses=2]
- %tmp6.i = icmp ult i32 %tmp5.i, %.len.i ; <i1> [#uses=1]
- br i1 %tmp6.i, label %entry.endif_crit_edge.i, label %if.i
-
-entry.endif_crit_edge.i: ; preds = %entry
- %tmp26.pre.i = getelementptr %nest.parse* %.frame, i32 0, i32 2, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr27.i.pre = load i32** %tmp26.pre.i ; <i32*> [#uses=1]
- br label %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit
-
-if.i: ; preds = %entry
- %tmp13.i = shl i32 %.len.i, 1 ; <i32> [#uses=1]
- %tmp1437.i = or i32 %tmp13.i, 1 ; <i32> [#uses=2]
- %tmp17.i = getelementptr %nest.parse* %.frame, i32 0, i32 2, i32 1, i32 1 ; <i32**> [#uses=2]
- %.ptr.i = load i32** %tmp17.i ; <i32*> [#uses=1]
- %tmp18.i = bitcast i32* %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i = call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D55TypeInfo_AE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ to %object.TypeInfo*), i32 %tmp1437.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i to i32* ; <i32*> [#uses=2]
- store i32 %tmp1437.i, i32* %tmp4.i
- store i32* %.gc_mem19.i, i32** %tmp17.i
- %tmp28.pre.i = load i32* %tmp1.i, align 8 ; <i32> [#uses=1]
- br label %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit
-
-_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit: ; preds = %if.i, %entry.endif_crit_edge.i
- %.ptr27.i = phi i32* [ %.ptr27.i.pre, %entry.endif_crit_edge.i ], [ %.gc_mem19.i, %if.i ] ; <i32*> [#uses=1]
- %tmp28.i = phi i32 [ %tmp5.i, %entry.endif_crit_edge.i ], [ %tmp28.pre.i, %if.i ] ; <i32> [#uses=1]
- %tmp29.i = getelementptr i32* %.ptr27.i, i32 %tmp28.i ; <i32*> [#uses=1]
- store i32 0, i32* %tmp29.i
- %tmp35.i = load i32* %tmp1.i, align 8 ; <i32> [#uses=1]
- %tmp36.i = add i32 %tmp35.i, 1 ; <i32> [#uses=1]
- store i32 %tmp36.i, i32* %tmp1.i, align 8
- br i1 %unanchored_arg, label %if, label %whilecond
-
-if: ; preds = %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit
- %tmp11 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp12 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp11, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp13 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp12 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp13, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp16 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass8any_charS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 0) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp17 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp11, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp16) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp18 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=3]
- %tmp19 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp18, i32 12, i1 false) ; <i1> [#uses=0]
- %tmp21 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp18, i32 1, i1 false) ; <i1> [#uses=0]
- %tmp23 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp18, i32 3, i1 false) ; <i1> [#uses=0]
- br label %whilecond
-
-whilecond: ; preds = %endif532, %default515, %endif436, %endif370, %case350, %case338, %case322, %case310, %case296, %case284, %case272, %case260, %case248, %endif181, %endif165, %endif148, %endif131, %else120, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896, %else99, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847, %else85, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822, %else71, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797, %case61, %else, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741, %case, %if, %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit
- %.rettmp.0.1.0 = phi i32 [ undef, %if ], [ %.rettmp.0.1.0, %endif532 ], [ %.rettmp.0.1.0, %default515 ], [ %.rettmp.0.1.0, %endif436 ], [ %.rettmp.0.1.0, %endif370 ], [ %.rettmp.0.1.0, %case350 ], [ %.rettmp.0.1.0, %case338 ], [ %.rettmp.0.1.0, %case322 ], [ %.rettmp.0.1.0, %case310 ], [ %tmp, %case296 ], [ %.rettmp.0.1.0, %case284 ], [ %.rettmp.0.1.0, %case272 ], [ %.rettmp.0.1.0, %case260 ], [ %.rettmp.0.1.0, %case248 ], [ %.rettmp.0.1.0, %endif148 ], [ %.rettmp.0.1.0, %endif131 ], [ %.rettmp.0.1.0, %endif181 ], [ %.rettmp.0.1.0, %endif165 ], [ %.rettmp.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896 ], [ %.rettmp.0.1.0, %else120 ], [ %.rettmp.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847 ], [ %.rettmp.0.1.0, %else99 ], [ %.rettmp.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822 ], [ %.rettmp.0.1.0, %else85 ], [ %.rettmp.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797 ], [ %.rettmp.0.1.0, %else71 ], [ %.rettmp.0.1.0, %case61 ], [ %.rettmp.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741 ], [ %.rettmp.0.1.0, %else ], [ %.rettmp.0.1.0, %case ], [ undef, %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit ] ; <i32> [#uses=28]
- %.rettmp324.0.1.0 = phi i32 [ undef, %if ], [ %.rettmp324.0.1.0, %endif532 ], [ %.rettmp324.0.1.0, %default515 ], [ %.rettmp324.0.1.0, %endif436 ], [ %.rettmp324.0.1.0, %endif370 ], [ %.rettmp324.0.1.0, %case350 ], [ %.rettmp324.0.1.0, %case338 ], [ %tmp1018, %case322 ], [ %.rettmp324.0.1.0, %case310 ], [ %.rettmp324.0.1.0, %case296 ], [ %.rettmp324.0.1.0, %case284 ], [ %.rettmp324.0.1.0, %case272 ], [ %.rettmp324.0.1.0, %case260 ], [ %.rettmp324.0.1.0, %case248 ], [ %.rettmp324.0.1.0, %endif148 ], [ %.rettmp324.0.1.0, %endif131 ], [ %.rettmp324.0.1.0, %endif181 ], [ %.rettmp324.0.1.0, %endif165 ], [ %.rettmp324.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896 ], [ %.rettmp324.0.1.0, %else120 ], [ %.rettmp324.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847 ], [ %.rettmp324.0.1.0, %else99 ], [ %.rettmp324.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822 ], [ %.rettmp324.0.1.0, %else85 ], [ %.rettmp324.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797 ], [ %.rettmp324.0.1.0, %else71 ], [ %.rettmp324.0.1.0, %case61 ], [ %.rettmp324.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741 ], [ %.rettmp324.0.1.0, %else ], [ %.rettmp324.0.1.0, %case ], [ undef, %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit ] ; <i32> [#uses=28]
- %.rettmp352.0.1.0 = phi i32 [ undef, %if ], [ %.rettmp352.0.1.0, %endif532 ], [ %.rettmp352.0.1.0, %default515 ], [ %.rettmp352.0.1.0, %endif436 ], [ %.rettmp352.0.1.0, %endif370 ], [ %tmp1013, %case350 ], [ %.rettmp352.0.1.0, %case338 ], [ %.rettmp352.0.1.0, %case322 ], [ %.rettmp352.0.1.0, %case310 ], [ %.rettmp352.0.1.0, %case296 ], [ %.rettmp352.0.1.0, %case284 ], [ %.rettmp352.0.1.0, %case272 ], [ %.rettmp352.0.1.0, %case260 ], [ %.rettmp352.0.1.0, %case248 ], [ %.rettmp352.0.1.0, %endif148 ], [ %.rettmp352.0.1.0, %endif131 ], [ %.rettmp352.0.1.0, %endif181 ], [ %.rettmp352.0.1.0, %endif165 ], [ %.rettmp352.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896 ], [ %.rettmp352.0.1.0, %else120 ], [ %.rettmp352.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847 ], [ %.rettmp352.0.1.0, %else99 ], [ %.rettmp352.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822 ], [ %.rettmp352.0.1.0, %else85 ], [ %.rettmp352.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797 ], [ %.rettmp352.0.1.0, %else71 ], [ %.rettmp352.0.1.0, %case61 ], [ %.rettmp352.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741 ], [ %.rettmp352.0.1.0, %else ], [ %.rettmp352.0.1.0, %case ], [ undef, %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit ] ; <i32> [#uses=28]
- %.rettmp382.0.1.0 = phi i32 [ undef, %if ], [ %.rettmp382.0.1.0, %endif532 ], [ %.rettmp382.0.1.0, %default515 ], [ %.rettmp382.0.1.0, %endif436 ], [ %tmp1008, %endif370 ], [ %.rettmp382.0.1.0, %case350 ], [ %.rettmp382.0.1.0, %case338 ], [ %.rettmp382.0.1.0, %case322 ], [ %.rettmp382.0.1.0, %case310 ], [ %.rettmp382.0.1.0, %case296 ], [ %.rettmp382.0.1.0, %case284 ], [ %.rettmp382.0.1.0, %case272 ], [ %.rettmp382.0.1.0, %case260 ], [ %.rettmp382.0.1.0, %case248 ], [ %.rettmp382.0.1.0, %endif148 ], [ %.rettmp382.0.1.0, %endif131 ], [ %.rettmp382.0.1.0, %endif181 ], [ %.rettmp382.0.1.0, %endif165 ], [ %.rettmp382.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896 ], [ %.rettmp382.0.1.0, %else120 ], [ %.rettmp382.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847 ], [ %.rettmp382.0.1.0, %else99 ], [ %.rettmp382.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822 ], [ %.rettmp382.0.1.0, %else85 ], [ %.rettmp382.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797 ], [ %.rettmp382.0.1.0, %else71 ], [ %.rettmp382.0.1.0, %case61 ], [ %.rettmp382.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741 ], [ %.rettmp382.0.1.0, %else ], [ %.rettmp382.0.1.0, %case ], [ undef, %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit ] ; <i32> [#uses=28]
- %.rettmp449.0.1.0 = phi i32 [ undef, %if ], [ %.rettmp449.0.1.0, %endif532 ], [ %.rettmp449.0.1.0, %default515 ], [ %tmp1003, %endif436 ], [ %.rettmp449.0.1.0, %endif370 ], [ %.rettmp449.0.1.0, %case350 ], [ %.rettmp449.0.1.0, %case338 ], [ %.rettmp449.0.1.0, %case322 ], [ %.rettmp449.0.1.0, %case310 ], [ %.rettmp449.0.1.0, %case296 ], [ %.rettmp449.0.1.0, %case284 ], [ %.rettmp449.0.1.0, %case272 ], [ %.rettmp449.0.1.0, %case260 ], [ %.rettmp449.0.1.0, %case248 ], [ %.rettmp449.0.1.0, %endif148 ], [ %.rettmp449.0.1.0, %endif131 ], [ %.rettmp449.0.1.0, %endif181 ], [ %.rettmp449.0.1.0, %endif165 ], [ %.rettmp449.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896 ], [ %.rettmp449.0.1.0, %else120 ], [ %.rettmp449.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847 ], [ %.rettmp449.0.1.0, %else99 ], [ %.rettmp449.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822 ], [ %.rettmp449.0.1.0, %else85 ], [ %.rettmp449.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797 ], [ %.rettmp449.0.1.0, %else71 ], [ %.rettmp449.0.1.0, %case61 ], [ %.rettmp449.0.1.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741 ], [ %.rettmp449.0.1.0, %else ], [ %.rettmp449.0.1.0, %case ], [ undef, %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit ] ; <i32> [#uses=28]
- %implicit_concat.0 = phi i1 [ true, %endif532 ], [ true, %default515 ], [ true, %endif436 ], [ true, %endif370 ], [ true, %case350 ], [ true, %case338 ], [ true, %case322 ], [ true, %case310 ], [ true, %case296 ], [ true, %case284 ], [ true, %case272 ], [ true, %case260 ], [ true, %case248 ], [ true, %endif131 ], [ true, %endif148 ], [ true, %endif181 ], [ true, %endif165 ], [ %implicit_concat.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896 ], [ %implicit_concat.0, %else120 ], [ %implicit_concat.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847 ], [ %implicit_concat.0, %else99 ], [ %implicit_concat.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822 ], [ %implicit_concat.0, %else85 ], [ %implicit_concat.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797 ], [ %implicit_concat.0, %else71 ], [ %implicit_concat.0, %case61 ], [ false, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741 ], [ false, %else ], [ false, %case ], [ false, %if ], [ false, %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit ] ; <i1> [#uses=17]
- %tmp1.i692 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 8 ; <i32*> [#uses=23]
- %tmp4.i693 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=14]
- %.len.i694 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp5.i695 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- %tmp6.i696 = icmp ult i32 %tmp5.i695, %.len.i694 ; <i1> [#uses=1]
- br i1 %tmp6.i696, label %whilebody, label %endwhile
-
-whilebody: ; preds = %whilecond
- %tmp1.i697 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=9]
- store i32 %tmp5.i695, i32* %tmp1.i697
- %tmp13.i700 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i = load %"Act[]"* %tmp13.i700 ; <%"Act[]"> [#uses=1]
- %tmp17.i701 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i, i32* %tmp1.i692) ; <i32> [#uses=2]
- switch i32 %tmp17.i701, label %default529 [
- i32 124, label %case
- i32 40, label %case31
- i32 41, label %case61
- i32 63, label %case65
- i32 42, label %case79
- i32 43, label %case93
- i32 123, label %case107
- i32 91, label %case128
- i32 46, label %case145
- i32 36, label %case162
- i32 94, label %case178
- i32 62, label %case194
- i32 60, label %case214
- i32 92, label %case236
- ]
-
-case: ; preds = %whilebody
- %tmp29 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp30 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp29, i32 2, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-case31: ; preds = %whilebody
- br i1 %implicit_concat.0, label %if33, label %endif34
-
-if33: ; preds = %case31
- %tmp35 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp36 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp35, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif34
-
-endif34: ; preds = %if33, %case31
- %tmp3.i718 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp3.i718, i32* %tmp.i
- %.len.i720 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp8.i721 = icmp ult i32 %tmp3.i718, %.len.i720 ; <i1> [#uses=1]
- br i1 %tmp8.i721, label %if.i724, label %else
-
-if.i724: ; preds = %endif34
- %tmp10.i722 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i723 = load %"Act[]"* %tmp10.i722 ; <%"Act[]"> [#uses=1]
- %tmp12.i = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i723, i32* %tmp.i) ; <i32> [#uses=1]
- %phitmp = icmp eq i32 %tmp12.i, 63 ; <i1> [#uses=1]
- br i1 %phitmp, label %if40, label %else
-
-if40: ; preds = %if.i724
- %tmp4.i732 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i732, i32* %tmp1.i697
- %.len.i734 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i735 = icmp ult i32 %tmp4.i732, %.len.i734 ; <i1> [#uses=1]
- br i1 %tmp11.i735, label %if.i739, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741
-
-if.i739: ; preds = %if40
- %tmp13.i736 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i737 = load %"Act[]"* %tmp13.i736 ; <%"Act[]"> [#uses=1]
- %tmp17.i738 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i737, i32* %tmp1.i692) ; <i32> [#uses=0]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit741: ; preds = %if.i739, %if40
- %tmp44 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp46 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 5 ; <i1*> [#uses=1]
- %tmp47 = load i1* %tmp46 ; <i1> [#uses=1]
- %condtmp.0 = select i1 %tmp47, i32 3, i32 14 ; <i32> [#uses=1]
- %tmp49 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp44, i32 %condtmp.0, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-else: ; preds = %if.i724, %endif34
- %tmp50 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp56 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 5 ; <i1*> [#uses=1]
- %tmp57 = load i1* %tmp56 ; <i1> [#uses=1]
- %condtmp51.0 = select i1 %tmp57, i32 14, i32 3 ; <i32> [#uses=1]
- %tmp59 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp50, i32 %condtmp51.0, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-case61: ; preds = %whilebody
- %tmp62 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp63 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp62, i32 4, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-case65: ; preds = %whilebody
- %tmp3.i775 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp3.i775, i32* %tmp.i773
- %.len.i777 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp8.i778 = icmp ult i32 %tmp3.i775, %.len.i777 ; <i1> [#uses=1]
- br i1 %tmp8.i778, label %if.i782, label %else71
-
-if.i782: ; preds = %case65
- %tmp10.i779 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i780 = load %"Act[]"* %tmp10.i779 ; <%"Act[]"> [#uses=1]
- %tmp12.i781 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i780, i32* %tmp.i773) ; <i32> [#uses=1]
- %phitmp1066 = icmp eq i32 %tmp12.i781, 63 ; <i1> [#uses=1]
- br i1 %phitmp1066, label %if69, label %else71
-
-if69: ; preds = %if.i782
- %tmp4.i788 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i788, i32* %tmp1.i697
- %.len.i790 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i791 = icmp ult i32 %tmp4.i788, %.len.i790 ; <i1> [#uses=1]
- br i1 %tmp11.i791, label %if.i795, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797
-
-if.i795: ; preds = %if69
- %tmp13.i792 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i793 = load %"Act[]"* %tmp13.i792 ; <%"Act[]"> [#uses=1]
- %tmp17.i794 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i793, i32* %tmp1.i692) ; <i32> [#uses=0]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit797: ; preds = %if.i795, %if69
- %tmp74 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp75 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp74, i32 8, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-else71: ; preds = %if.i782, %case65
- %tmp76 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp77 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp76, i32 5, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-case79: ; preds = %whilebody
- %tmp3.i800 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp3.i800, i32* %tmp.i798
- %.len.i802 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp8.i803 = icmp ult i32 %tmp3.i800, %.len.i802 ; <i1> [#uses=1]
- br i1 %tmp8.i803, label %if.i807, label %else85
-
-if.i807: ; preds = %case79
- %tmp10.i804 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i805 = load %"Act[]"* %tmp10.i804 ; <%"Act[]"> [#uses=1]
- %tmp12.i806 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i805, i32* %tmp.i798) ; <i32> [#uses=1]
- %phitmp1067 = icmp eq i32 %tmp12.i806, 63 ; <i1> [#uses=1]
- br i1 %phitmp1067, label %if83, label %else85
-
-if83: ; preds = %if.i807
- %tmp4.i813 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i813, i32* %tmp1.i697
- %.len.i815 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i816 = icmp ult i32 %tmp4.i813, %.len.i815 ; <i1> [#uses=1]
- br i1 %tmp11.i816, label %if.i820, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822
-
-if.i820: ; preds = %if83
- %tmp13.i817 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i818 = load %"Act[]"* %tmp13.i817 ; <%"Act[]"> [#uses=1]
- %tmp17.i819 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i818, i32* %tmp1.i692) ; <i32> [#uses=0]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit822: ; preds = %if.i820, %if83
- %tmp88 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp89 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp88, i32 9, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-else85: ; preds = %if.i807, %case79
- %tmp90 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp91 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp90, i32 6, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-case93: ; preds = %whilebody
- %tmp3.i825 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp3.i825, i32* %tmp.i823
- %.len.i827 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp8.i828 = icmp ult i32 %tmp3.i825, %.len.i827 ; <i1> [#uses=1]
- br i1 %tmp8.i828, label %if.i832, label %else99
-
-if.i832: ; preds = %case93
- %tmp10.i829 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i830 = load %"Act[]"* %tmp10.i829 ; <%"Act[]"> [#uses=1]
- %tmp12.i831 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i830, i32* %tmp.i823) ; <i32> [#uses=1]
- %phitmp1068 = icmp eq i32 %tmp12.i831, 63 ; <i1> [#uses=1]
- br i1 %phitmp1068, label %if97, label %else99
-
-if97: ; preds = %if.i832
- %tmp4.i838 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i838, i32* %tmp1.i697
- %.len.i840 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i841 = icmp ult i32 %tmp4.i838, %.len.i840 ; <i1> [#uses=1]
- br i1 %tmp11.i841, label %if.i845, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847
-
-if.i845: ; preds = %if97
- %tmp13.i842 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i843 = load %"Act[]"* %tmp13.i842 ; <%"Act[]"> [#uses=1]
- %tmp17.i844 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i843, i32* %tmp1.i692) ; <i32> [#uses=0]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit847: ; preds = %if.i845, %if97
- %tmp102 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp103 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp102, i32 10, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-else99: ; preds = %if.i832, %case93
- %tmp104 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp105 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp104, i32 7, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-case107: ; preds = %whilebody
- %occur672 = bitcast %tango.net.Socket.timeval* %occur to i64* ; <i64*> [#uses=1]
- store i64 0, i64* %occur672, align 8
- %tmp110 = getelementptr %tango.net.Socket.timeval* %occur, i32 0, i32 0 ; <i32*> [#uses=3]
- %tmp113 = getelementptr i32* %tmp110, i32 1 ; <i32*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA15parseOccurCountMFJkJkZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32* %tmp110, i32* %tmp113)
- %tmp1025 = load i32* %tmp110, align 8 ; <i32> [#uses=1]
- %occur.1 = getelementptr %tango.net.Socket.timeval* %occur, i32 0, i32 1 ; <i32*> [#uses=1]
- %tmp1026 = load i32* %occur.1, align 4 ; <i32> [#uses=1]
- %tmp1.i850 = getelementptr %nest.parse* %.frame, i32 0, i32 4, i32 0 ; <i32*> [#uses=4]
- %tmp4.i851 = getelementptr %nest.parse* %.frame, i32 0, i32 4, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len.i852 = load i32* %tmp4.i851 ; <i32> [#uses=3]
- %tmp5.i853 = load i32* %tmp1.i850, align 8 ; <i32> [#uses=2]
- %tmp6.i854 = icmp ult i32 %tmp5.i853, %.len.i852 ; <i1> [#uses=1]
- br i1 %tmp6.i854, label %entry.endif_crit_edge.i856, label %if.i864
-
-entry.endif_crit_edge.i856: ; preds = %case107
- %tmp26.pre.i855 = getelementptr %nest.parse* %.frame, i32 0, i32 4, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr27.i867.pre = load %tango.net.Socket.timeval** %tmp26.pre.i855 ; <%tango.net.Socket.timeval*> [#uses=1]
- br label %_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack4pushMFS5tango4text5Regex11__T4PairTkZ4PairZv.exit
-
-if.i864: ; preds = %case107
- %tmp13.i857 = shl i32 %.len.i852, 1 ; <i32> [#uses=1]
- %tmp1438.i = or i32 %tmp13.i857, 1 ; <i32> [#uses=2]
- %tmp17.i858 = getelementptr %nest.parse* %.frame, i32 0, i32 4, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i859 = load %tango.net.Socket.timeval** %tmp17.i858 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp18.i860 = bitcast %tango.net.Socket.timeval* %.ptr.i859 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i861 = call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D46TypeInfo_AS5tango4text5Regex11__T4PairTkZ4Pair6__initZ to %object.TypeInfo*), i32 %tmp1438.i, i32 %.len.i852, i8* %tmp18.i860) ; <i8*> [#uses=1]
- %.gc_mem19.i862 = bitcast i8* %.gc_mem.i861 to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- store i32 %tmp1438.i, i32* %tmp4.i851
- store %tango.net.Socket.timeval* %.gc_mem19.i862, %tango.net.Socket.timeval** %tmp17.i858
- %tmp28.pre.i863 = load i32* %tmp1.i850, align 8 ; <i32> [#uses=1]
- br label %_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack4pushMFS5tango4text5Regex11__T4PairTkZ4PairZv.exit
-
-_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack4pushMFS5tango4text5Regex11__T4PairTkZ4PairZv.exit: ; preds = %if.i864, %entry.endif_crit_edge.i856
- %.ptr27.i867 = phi %tango.net.Socket.timeval* [ %.ptr27.i867.pre, %entry.endif_crit_edge.i856 ], [ %.gc_mem19.i862, %if.i864 ] ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp28.i866 = phi i32 [ %tmp5.i853, %entry.endif_crit_edge.i856 ], [ %tmp28.pre.i863, %if.i864 ] ; <i32> [#uses=1]
- %tmp29.i868 = getelementptr %tango.net.Socket.timeval* %.ptr27.i867, i32 %tmp28.i866 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp3040.i = bitcast %tango.net.Socket.timeval* %tmp29.i868 to i64* ; <i64*> [#uses=1]
- %1 = zext i32 %tmp1025 to i64 ; <i64> [#uses=1]
- %2 = shl i64 %1, 32 ; <i64> [#uses=1]
- %3 = zext i32 %tmp1026 to i64 ; <i64> [#uses=1]
- %4 = or i64 %3, %2 ; <i64> [#uses=1]
- store i64 %4, i64* %tmp3040.i, align 1
- %tmp36.i870 = load i32* %tmp1.i850, align 8 ; <i32> [#uses=1]
- %tmp37.i = add i32 %tmp36.i870, 1 ; <i32> [#uses=1]
- store i32 %tmp37.i, i32* %tmp1.i850, align 8
- %tmp3.i874 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp3.i874, i32* %tmp.i872
- %.len.i876 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp8.i877 = icmp ult i32 %tmp3.i874, %.len.i876 ; <i1> [#uses=1]
- br i1 %tmp8.i877, label %if.i881, label %else120
-
-if.i881: ; preds = %_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack4pushMFS5tango4text5Regex11__T4PairTkZ4PairZv.exit
- %tmp10.i878 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i879 = load %"Act[]"* %tmp10.i878 ; <%"Act[]"> [#uses=1]
- %tmp12.i880 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i879, i32* %tmp.i872) ; <i32> [#uses=1]
- %phitmp1069 = icmp eq i32 %tmp12.i880, 63 ; <i1> [#uses=1]
- br i1 %phitmp1069, label %if118, label %else120
-
-if118: ; preds = %if.i881
- %tmp4.i887 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i887, i32* %tmp1.i697
- %.len.i889 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i890 = icmp ult i32 %tmp4.i887, %.len.i889 ; <i1> [#uses=1]
- br i1 %tmp11.i890, label %if.i894, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896
-
-if.i894: ; preds = %if118
- %tmp13.i891 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i892 = load %"Act[]"* %tmp13.i891 ; <%"Act[]"> [#uses=1]
- %tmp17.i893 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i892, i32* %tmp1.i692) ; <i32> [#uses=0]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit896: ; preds = %if.i894, %if118
- %tmp123 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp124 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp123, i32 16, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-else120: ; preds = %if.i881, %_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack4pushMFS5tango4text5Regex11__T4PairTkZ4PairZv.exit
- %tmp125 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp126 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp125, i32 15, i1 true) ; <i1> [#uses=0]
- br label %whilecond
-
-case128: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908, %whilebody
- %pred_type.0 = phi i32 [ 3, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921 ], [ 2, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908 ], [ 0, %whilebody ] ; <i32> [#uses=1]
- br i1 %implicit_concat.0, label %if130, label %endif131
-
-if130: ; preds = %case128
- %tmp132 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp133 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp132, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif131
-
-endif131: ; preds = %if130, %case128
- %tmp134 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp135 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp134, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp136 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp135 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl137" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp136, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign139 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl137", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp142 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA18constructCharClassMFE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 %pred_type.0) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp143 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign139(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp134, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp142) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case145: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908, %whilebody
- %pred_type.1 = phi i32 [ 0, %whilebody ], [ 2, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908 ], [ 3, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921 ] ; <i32> [#uses=1]
- br i1 %implicit_concat.0, label %if147, label %endif148
-
-if147: ; preds = %case145
- %tmp149 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp150 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp149, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif148
-
-endif148: ; preds = %if147, %case145
- %tmp151 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp152 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp151, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp153 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp152 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl154" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp153, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign156 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl154", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp159 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass8dot_operS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 %pred_type.1) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp160 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign156(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp151, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp159) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case162: ; preds = %whilebody
- br i1 %implicit_concat.0, label %if164, label %endif165
-
-if164: ; preds = %case162
- %tmp166 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp167 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp166, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif165
-
-endif165: ; preds = %if164, %case162
- %tmp168 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp169 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp168, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp170 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp169 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl171" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp170, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign173 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl171", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp175 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass13line_startendS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp176 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign173(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp168, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp175) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case178: ; preds = %whilebody
- br i1 %implicit_concat.0, label %if180, label %endif181
-
-if180: ; preds = %case178
- %tmp182 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp183 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp182, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif181
-
-endif181: ; preds = %if180, %case178
- %tmp184 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp185 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp184, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp186 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp185 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl187" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp186, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign189 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl187", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp191 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass13line_startendS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 3) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp192 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign189(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp184, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp191) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case194: ; preds = %whilebody
- %tmp4.i899 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i899, i32* %tmp1.i697
- %.len.i901 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i902 = icmp ult i32 %tmp4.i899, %.len.i901 ; <i1> [#uses=1]
- br i1 %tmp11.i902, label %if.i906, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908
-
-if.i906: ; preds = %case194
- %tmp13.i903 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i904 = load %"Act[]"* %tmp13.i903 ; <%"Act[]"> [#uses=1]
- %tmp17.i905 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i904, i32* %tmp1.i692) ; <i32> [#uses=1]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908: ; preds = %if.i906, %case194
- %tmp196909 = phi i32 [ %tmp17.i905, %if.i906 ], [ 0, %case194 ] ; <i32> [#uses=2]
- switch i32 %tmp196909, label %default529 [
- i32 91, label %case128
- i32 92, label %case236
- i32 46, label %case145
- ]
-
-case214: ; preds = %whilebody
- %tmp4.i912 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i912, i32* %tmp1.i697
- %.len.i914 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i915 = icmp ult i32 %tmp4.i912, %.len.i914 ; <i1> [#uses=1]
- br i1 %tmp11.i915, label %if.i919, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921
-
-if.i919: ; preds = %case214
- %tmp13.i916 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i917 = load %"Act[]"* %tmp13.i916 ; <%"Act[]"> [#uses=1]
- %tmp17.i918 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i917, i32* %tmp1.i692) ; <i32> [#uses=1]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921: ; preds = %if.i919, %case214
- %tmp216922 = phi i32 [ %tmp17.i918, %if.i919 ], [ 0, %case214 ] ; <i32> [#uses=2]
- switch i32 %tmp216922, label %default529 [
- i32 91, label %case128
- i32 92, label %case236
- i32 46, label %case145
- ]
-
-case236: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908, %whilebody
- %pred_type.2 = phi i32 [ 0, %whilebody ], [ 2, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908 ], [ 3, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921 ] ; <i32> [#uses=12]
- %tmp4.i925 = load i32* %tmp1.i692 ; <i32> [#uses=2]
- store i32 %tmp4.i925, i32* %tmp1.i697
- %.len.i927 = load i32* %tmp4.i693 ; <i32> [#uses=1]
- %tmp11.i928 = icmp ult i32 %tmp4.i925, %.len.i927 ; <i1> [#uses=1]
- br i1 %tmp11.i928, label %if.i932, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit934
-
-if.i932: ; preds = %case236
- %tmp13.i929 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i930 = load %"Act[]"* %tmp13.i929 ; <%"Act[]"> [#uses=1]
- %tmp17.i931 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i930, i32* %tmp1.i692) ; <i32> [#uses=1]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit934
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit934: ; preds = %if.i932, %case236
- %tmp238935 = phi i32 [ %tmp17.i931, %if.i932 ], [ 0, %case236 ] ; <i32> [#uses=2]
- br i1 %implicit_concat.0, label %if240, label %endif241
-
-if240: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit934
- %tmp242 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp243 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp242, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif241
-
-endif241: ; preds = %if240, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit934
- switch i32 %tmp238935, label %default515 [
- i32 116, label %case248
- i32 110, label %case260
- i32 114, label %case272
- i32 119, label %case284
- i32 87, label %case296
- i32 115, label %case310
- i32 83, label %case322
- i32 100, label %case338
- i32 68, label %case350
- i32 98, label %case366
- i32 66, label %case432
- ]
-
-case248: ; preds = %endif241
- %tmp249 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp250 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp249, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp251 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp250 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl252" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp251, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign254 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl252", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp257 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA19constructSingleCharMFwE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 9, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp258 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign254(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp249, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp257) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case260: ; preds = %endif241
- %tmp261 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp262 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp261, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp263 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp262 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl264" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp263, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign266 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl264", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp269 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA19constructSingleCharMFwE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 10, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp270 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign266(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp261, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp269) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case272: ; preds = %endif241
- %tmp273 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp274 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp273, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp275 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp274 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl276" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp275, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign278 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl276", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp281 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA19constructSingleCharMFwE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 13, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp282 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign278(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp273, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp281) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case284: ; preds = %endif241
- %tmp285 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp286 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp285, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp287 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp286 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl288" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp287, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign290 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl288", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp293 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass9alphanum_S5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp294 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign290(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp285, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp293) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case296: ; preds = %endif241
- %srcval = load i64* bitcast (%"tango.text.Regex.CharClass!(dchar).CharClass"* @_D5tango4text5Regex16__T9CharClassTwZ9CharClass9alphanum_S5tango4text5Regex16__T9CharClassTwZ9CharClass to i64*), align 4 ; <i64> [#uses=2]
- %tmp1028 = lshr i64 %srcval, 32 ; <i64> [#uses=1]
- %tmp1029 = trunc i64 %tmp1028 to i32 ; <i32> [#uses=1]
- %tmp1030 = insertvalue %"byte[]" undef, i32 %tmp1029, 0 ; <%"byte[]"> [#uses=1]
- %tmp1031 = trunc i64 %srcval to i32 ; <i32> [#uses=1]
- %tmp1032 = inttoptr i32 %tmp1031 to i8* ; <i8*> [#uses=1]
- %tmp1033 = insertvalue %"byte[]" %tmp1030, i8* %tmp1032, 1 ; <%"byte[]"> [#uses=1]
- %tmp5.i940 = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), %"byte[]" %tmp1033) ; <%"byte[]"> [#uses=2]
- %tmp6.i941 = extractvalue %"byte[]" %tmp5.i940, 0 ; <i32> [#uses=1]
- %tmp8.i942 = extractvalue %"byte[]" %tmp5.i940, 1 ; <i8*> [#uses=1]
- %tmp = ptrtoint i8* %tmp8.i942 to i32 ; <i32> [#uses=2]
- %tmp297674 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc to i64* ; <i64*> [#uses=1]
- %5 = zext i32 %tmp6.i941 to i64 ; <i64> [#uses=1]
- %6 = shl i64 %5, 32 ; <i64> [#uses=1]
- %7 = zext i32 %tmp to i64 ; <i64> [#uses=1]
- %8 = or i64 %7, %6 ; <i64> [#uses=1]
- store i64 %8, i64* %tmp297674, align 8
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %cc)
- %tmp299 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp300 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp299, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp301 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp300 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl302" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp301, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign304 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl302", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp307 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp308 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign304(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp299, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp307) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case310: ; preds = %endif241
- %tmp311 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp312 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp311, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp313 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp312 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl314" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp313, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign316 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl314", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp319 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp320 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign316(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp311, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp319) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case322: ; preds = %endif241
- %srcval1041 = load i64* bitcast (%"tango.text.Regex.CharClass!(dchar).CharClass"* @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass to i64*), align 4 ; <i64> [#uses=2]
- %tmp1035 = lshr i64 %srcval1041, 32 ; <i64> [#uses=1]
- %tmp1036 = trunc i64 %tmp1035 to i32 ; <i32> [#uses=1]
- %tmp1037 = insertvalue %"byte[]" undef, i32 %tmp1036, 0 ; <%"byte[]"> [#uses=1]
- %tmp1038 = trunc i64 %srcval1041 to i32 ; <i32> [#uses=1]
- %tmp1039 = inttoptr i32 %tmp1038 to i8* ; <i8*> [#uses=1]
- %tmp1040 = insertvalue %"byte[]" %tmp1037, i8* %tmp1039, 1 ; <%"byte[]"> [#uses=1]
- %tmp5.i949 = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), %"byte[]" %tmp1040) ; <%"byte[]"> [#uses=2]
- %tmp6.i950 = extractvalue %"byte[]" %tmp5.i949, 0 ; <i32> [#uses=1]
- %tmp8.i951 = extractvalue %"byte[]" %tmp5.i949, 1 ; <i8*> [#uses=1]
- %tmp1018 = ptrtoint i8* %tmp8.i951 to i32 ; <i32> [#uses=2]
- %tmp325676 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc323 to i64* ; <i64*> [#uses=1]
- %9 = zext i32 %tmp6.i950 to i64 ; <i64> [#uses=1]
- %10 = shl i64 %9, 32 ; <i64> [#uses=1]
- %11 = zext i32 %tmp1018 to i64 ; <i64> [#uses=1]
- %12 = or i64 %11, %10 ; <i64> [#uses=1]
- store i64 %12, i64* %tmp325676, align 8
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %cc323)
- %tmp327 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp328 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp327, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp329 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp328 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl330" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp329, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign332 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl330", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp335 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc323, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp336 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign332(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp327, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp335) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case338: ; preds = %endif241
- %tmp339 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp340 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp339, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp341 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp340 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl342" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp341, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign344 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl342", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp347 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass5digitS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp348 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign344(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp339, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp347) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case350: ; preds = %endif241
- %srcval1049 = load i64* bitcast (%"tango.text.Regex.CharClass!(dchar).CharClass"* @_D5tango4text5Regex16__T9CharClassTwZ9CharClass5digitS5tango4text5Regex16__T9CharClassTwZ9CharClass to i64*), align 4 ; <i64> [#uses=2]
- %tmp1043 = lshr i64 %srcval1049, 32 ; <i64> [#uses=1]
- %tmp1044 = trunc i64 %tmp1043 to i32 ; <i32> [#uses=1]
- %tmp1045 = insertvalue %"byte[]" undef, i32 %tmp1044, 0 ; <%"byte[]"> [#uses=1]
- %tmp1046 = trunc i64 %srcval1049 to i32 ; <i32> [#uses=1]
- %tmp1047 = inttoptr i32 %tmp1046 to i8* ; <i8*> [#uses=1]
- %tmp1048 = insertvalue %"byte[]" %tmp1045, i8* %tmp1047, 1 ; <%"byte[]"> [#uses=1]
- %tmp5.i959 = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), %"byte[]" %tmp1048) ; <%"byte[]"> [#uses=2]
- %tmp6.i960 = extractvalue %"byte[]" %tmp5.i959, 0 ; <i32> [#uses=1]
- %tmp8.i961 = extractvalue %"byte[]" %tmp5.i959, 1 ; <i8*> [#uses=1]
- %tmp1013 = ptrtoint i8* %tmp8.i961 to i32 ; <i32> [#uses=2]
- %tmp353679 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc351 to i64* ; <i64*> [#uses=1]
- %13 = zext i32 %tmp6.i960 to i64 ; <i64> [#uses=1]
- %14 = shl i64 %13, 32 ; <i64> [#uses=1]
- %15 = zext i32 %tmp1013 to i64 ; <i64> [#uses=1]
- %16 = or i64 %15, %14 ; <i64> [#uses=1]
- store i64 %16, i64* %tmp353679, align 8
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %cc351)
- %tmp355 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp356 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp355, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp357 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp356 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl358" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp357, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign360 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl358", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp363 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc351, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp364 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign360(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp355, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp363) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-case366: ; preds = %endif241
- %tmp368 = icmp eq i32 %pred_type.2, 0 ; <i1> [#uses=1]
- br i1 %tmp368, label %endif370, label %if369
-
-if369: ; preds = %case366
- %.newclass_gc_alloc371 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc372 = bitcast i8* %.newclass_gc_alloc371 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl373 = bitcast i8* %.newclass_gc_alloc371 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl373
- %monitor374 = getelementptr i8* %.newclass_gc_alloc371, i32 4 ; <i8*> [#uses=1]
- %17 = bitcast i8* %monitor374 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %17
- %tmp375 = getelementptr i8* %.newclass_gc_alloc371, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp375, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %.gc_mem.i965 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 63) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i965 to i64* ; <i64*> [#uses=1]
- %tmp.i966 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i966, i64* %.gc_mem12.i, align 1
- %tmp4.i967 = getelementptr i8* %.gc_mem.i965, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i967, i8* getelementptr ([56 x i8]* @.str217, i32 0, i32 0), i32 55, i32 1)
- %tmp6.i968 = insertvalue %"byte[]" undef, i32 63, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i969 = insertvalue %"byte[]" %tmp6.i968, i8* %.gc_mem.i965, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i970 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc372, %"byte[]" %tmp7.i969, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp380 = bitcast i8* %.newclass_gc_alloc371 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp380)
- unreachable
-
-endif370: ; preds = %case366
- %srcval1057 = load i64* bitcast (%"tango.text.Regex.CharClass!(dchar).CharClass"* @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass to i64*), align 4 ; <i64> [#uses=2]
- %tmp1051 = lshr i64 %srcval1057, 32 ; <i64> [#uses=1]
- %tmp1052 = trunc i64 %tmp1051 to i32 ; <i32> [#uses=1]
- %tmp1053 = insertvalue %"byte[]" undef, i32 %tmp1052, 0 ; <%"byte[]"> [#uses=1]
- %tmp1054 = trunc i64 %srcval1057 to i32 ; <i32> [#uses=1]
- %tmp1055 = inttoptr i32 %tmp1054 to i8* ; <i8*> [#uses=1]
- %tmp1056 = insertvalue %"byte[]" %tmp1053, i8* %tmp1055, 1 ; <%"byte[]"> [#uses=1]
- %tmp5.i976 = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), %"byte[]" %tmp1056) ; <%"byte[]"> [#uses=2]
- %tmp6.i977 = extractvalue %"byte[]" %tmp5.i976, 0 ; <i32> [#uses=1]
- %tmp8.i978 = extractvalue %"byte[]" %tmp5.i976, 1 ; <i8*> [#uses=1]
- %tmp1008 = ptrtoint i8* %tmp8.i978 to i32 ; <i32> [#uses=2]
- %tmp383682 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc381 to i64* ; <i64*> [#uses=1]
- %18 = zext i32 %tmp6.i977 to i64 ; <i64> [#uses=1]
- %19 = shl i64 %18, 32 ; <i64> [#uses=1]
- %20 = zext i32 %tmp1008 to i64 ; <i64> [#uses=1]
- %21 = or i64 %20, %19 ; <i64> [#uses=1]
- store i64 %21, i64* %tmp383682, align 8
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %cc381)
- %tmp385 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=5]
- %tmp386 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp385, i32 14, i1 true) ; <i1> [#uses=0]
- %tmp387 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp388 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp387, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp389 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp388 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl390" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp389, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign392 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl390", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp394 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc381, i32 3) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp395 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign392(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp387, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp394) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp397 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp385, i32 1, i1 false) ; <i1> [#uses=0]
- %tmp398 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp399 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp398, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp400 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp399 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl401" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp400, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign403 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl401", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp405 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp406 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign403(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp398, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp405) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp408 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp385, i32 2, i1 false) ; <i1> [#uses=0]
- %tmp409 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp410 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp409, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp411 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp410 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl412" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp411, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign414 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl412", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp416 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 3) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp417 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign414(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp409, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp416) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp419 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp385, i32 1, i1 false) ; <i1> [#uses=0]
- %tmp420 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp421 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp420, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp422 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp421 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl423" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp422, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign425 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl423", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp427 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc381, i32 2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp428 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign425(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp420, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp427) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp430 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp385, i32 4, i1 false) ; <i1> [#uses=0]
- br label %whilecond
-
-case432: ; preds = %endif241
- %tmp434 = icmp eq i32 %pred_type.2, 0 ; <i1> [#uses=1]
- br i1 %tmp434, label %endif436, label %if435
-
-if435: ; preds = %case432
- %.newclass_gc_alloc437 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc438 = bitcast i8* %.newclass_gc_alloc437 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl439 = bitcast i8* %.newclass_gc_alloc437 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl439
- %monitor440 = getelementptr i8* %.newclass_gc_alloc437, i32 4 ; <i8*> [#uses=1]
- %22 = bitcast i8* %monitor440 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %22
- %tmp441 = getelementptr i8* %.newclass_gc_alloc437, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp441, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %.gc_mem.i984 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 63) ; <i8*> [#uses=3]
- %.gc_mem12.i985 = bitcast i8* %.gc_mem.i984 to i64* ; <i64*> [#uses=1]
- %tmp.i986 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i986, i64* %.gc_mem12.i985, align 1
- %tmp4.i987 = getelementptr i8* %.gc_mem.i984, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i987, i8* getelementptr ([56 x i8]* @.str218, i32 0, i32 0), i32 55, i32 1)
- %tmp6.i988 = insertvalue %"byte[]" undef, i32 63, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i989 = insertvalue %"byte[]" %tmp6.i988, i8* %.gc_mem.i984, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i990 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc438, %"byte[]" %tmp7.i989, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp446 = bitcast i8* %.newclass_gc_alloc437 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp446)
- unreachable
-
-endif436: ; preds = %case432
- %srcval1065 = load i64* bitcast (%"tango.text.Regex.CharClass!(dchar).CharClass"* @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass to i64*), align 4 ; <i64> [#uses=2]
- %tmp1059 = lshr i64 %srcval1065, 32 ; <i64> [#uses=1]
- %tmp1060 = trunc i64 %tmp1059 to i32 ; <i32> [#uses=1]
- %tmp1061 = insertvalue %"byte[]" undef, i32 %tmp1060, 0 ; <%"byte[]"> [#uses=1]
- %tmp1062 = trunc i64 %srcval1065 to i32 ; <i32> [#uses=1]
- %tmp1063 = inttoptr i32 %tmp1062 to i8* ; <i8*> [#uses=1]
- %tmp1064 = insertvalue %"byte[]" %tmp1061, i8* %tmp1063, 1 ; <%"byte[]"> [#uses=1]
- %tmp5.i996 = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), %"byte[]" %tmp1064) ; <%"byte[]"> [#uses=2]
- %tmp6.i997 = extractvalue %"byte[]" %tmp5.i996, 0 ; <i32> [#uses=1]
- %tmp8.i998 = extractvalue %"byte[]" %tmp5.i996, 1 ; <i8*> [#uses=1]
- %tmp1003 = ptrtoint i8* %tmp8.i998 to i32 ; <i32> [#uses=2]
- %tmp450685 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc448 to i64* ; <i64*> [#uses=1]
- %23 = zext i32 %tmp6.i997 to i64 ; <i64> [#uses=1]
- %24 = shl i64 %23, 32 ; <i64> [#uses=1]
- %25 = zext i32 %tmp1003 to i64 ; <i64> [#uses=1]
- %26 = or i64 %25, %24 ; <i64> [#uses=1]
- store i64 %26, i64* %tmp450685, align 8
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %cc448)
- %tmp452 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=5]
- %tmp453 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp452, i32 14, i1 true) ; <i1> [#uses=0]
- %tmp454 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp455 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp454, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp456 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp455 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl457" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp456, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign459 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl457", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp461 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc448, i32 3) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp462 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign459(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp454, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp461) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp464 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp452, i32 1, i1 false) ; <i1> [#uses=0]
- %tmp465 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp466 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp465, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp467 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp466 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl468" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp467, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign470 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl468", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp472 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc448, i32 2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp473 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign470(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp465, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp472) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp475 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp452, i32 2, i1 false) ; <i1> [#uses=0]
- %tmp476 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp477 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp476, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp478 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp477 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl479" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp478, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign481 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl479", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp483 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 3) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp484 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign481(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp476, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp483) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp486 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp452, i32 1, i1 false) ; <i1> [#uses=0]
- %tmp487 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp488 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp487, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp489 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp488 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl490" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp489, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign492 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl490", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp494 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass10whitespaceS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp495 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign492(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp487, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp494) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp497 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp452, i32 4, i1 false) ; <i1> [#uses=0]
- br label %whilecond
-
-default515: ; preds = %endif241
- %tmp516 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp517 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp516, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp518 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp517 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl519" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp518, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign521 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl519", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp525 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA19constructSingleCharMFwE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 %tmp238935, i32 %pred_type.2) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp526 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign521(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp516, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp525) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-default529: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908, %whilebody
- %c.0 = phi i32 [ %tmp17.i701, %whilebody ], [ %tmp196909, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908 ], [ %tmp216922, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921 ] ; <i32> [#uses=1]
- %pred_type.3 = phi i32 [ 0, %whilebody ], [ 2, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit908 ], [ 3, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit921 ] ; <i32> [#uses=1]
- br i1 %implicit_concat.0, label %if531, label %endif532
-
-if531: ; preds = %default529
- %tmp533 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=1]
- %tmp534 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp533, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif532
-
-endif532: ; preds = %if531, %default529
- %tmp535 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp536 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp535, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp537 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp536 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl538" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp537, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign540 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl538", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp544 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA19constructSingleCharMFwE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 %c.0, i32 %pred_type.3) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp545 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign540(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp535, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp544) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- br label %whilecond
-
-endwhile: ; preds = %whilecond
- br i1 %unanchored_arg, label %if547, label %whilecond567
-
-if547: ; preds = %endwhile
- %tmp549 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=3]
- %tmp550 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp549, i32 4, i1 false) ; <i1> [#uses=0]
- br i1 %implicit_concat.0, label %if552, label %endif553
-
-if552: ; preds = %if547
- %tmp555 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp549, i32 1, i1 false) ; <i1> [#uses=0]
- br label %endif553
-
-endif553: ; preds = %if552, %if547
- %tmp556 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp557 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp556, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp558 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp557 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl559" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp558, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign561 = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl559", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp563 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval @_D5tango4text5Regex16__T9CharClassTwZ9CharClass8any_charS5tango4text5Regex16__T9CharClassTwZ9CharClass, i32 0) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp564 = call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign561(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp556, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp563) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- %tmp566 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp549, i32 9, i1 false) ; <i1> [#uses=0]
- br label %whilecond567
-
-whilecond567: ; preds = %whilecond567, %endif553, %endwhile
- %tmp570 = bitcast %nest.parse* %.frame to i8* ; <i8*> [#uses=4]
- %tmp571 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %tmp570, i32 0, i1 true) ; <i1> [#uses=1]
- br i1 %tmp571, label %endwhile569, label %whilecond567
-
-endwhile569: ; preds = %whilecond567
- %tmp573 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %.newclass_gc_alloc.i752 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i753 = bitcast i8* %.newclass_gc_alloc.i752 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
- %vtbl.i754 = bitcast i8* %.newclass_gc_alloc.i752 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i754
- %monitor.i755 = getelementptr i8* %.newclass_gc_alloc.i752, i32 4 ; <i8*> [#uses=1]
- %27 = bitcast i8* %monitor.i755 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %27
- %tmp.i756 = getelementptr i8* %.newclass_gc_alloc.i752, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp.i756, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i757 = getelementptr i8* %.newclass_gc_alloc.i752, i32 16 ; <i8*> [#uses=1]
- %28 = bitcast i8* %tmp1.i.i757 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i758 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i759 = bitcast i8* %.newclass_gc_alloc.i.i758 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i760 = bitcast i8* %.newclass_gc_alloc.i.i758 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i760
- %monitor.i.i761 = getelementptr i8* %.newclass_gc_alloc.i.i758, i32 4 ; <i8*> [#uses=1]
- %29 = bitcast i8* %monitor.i.i761 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %29
- %tmp2.i.i762 = getelementptr i8* %.newclass_gc_alloc.i.i758, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i.i762, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i759, %"tango.text.Regex.List!(TNFATransition).List"** %28
- %tmp6.i763 = getelementptr i8* %.newclass_gc_alloc.i752, i32 12 ; <i8*> [#uses=1]
- %30 = bitcast i8* %tmp6.i763 to i32* ; <i32*> [#uses=1]
- %tmp9.i764 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=4]
- %.len.i765 = load i32* %tmp9.i764 ; <i32> [#uses=4]
- store i32 %.len.i765, i32* %30
- %tmp14.i766 = add i32 %.len.i765, 1 ; <i32> [#uses=2]
- %tmp17.i767 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=4]
- %.ptr.i768 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i767 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i769 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i768 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i770 = call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i766, i32 %.len.i765, i8* %tmp18.i769) ; <i8*> [#uses=1]
- %.gc_mem19.i771 = bitcast i8* %.gc_mem.i770 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i772 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i771, i32 %.len.i765 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i753, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i772
- store i32 %tmp14.i766, i32* %tmp9.i764
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i771, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i767
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i753, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp573
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %31 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %31
- %tmp.i742 = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp.i742, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %32 = bitcast i8* %tmp1.i.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i
- %monitor.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 4 ; <i8*> [#uses=1]
- %33 = bitcast i8* %monitor.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %33
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i, %"tango.text.Regex.List!(TNFATransition).List"** %32
- %tmp6.i743 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %34 = bitcast i8* %tmp6.i743 to i32* ; <i32*> [#uses=1]
- %.len.i745 = load i32* %tmp9.i764 ; <i32> [#uses=4]
- store i32 %.len.i745, i32* %34
- %tmp14.i746 = add i32 %.len.i745, 1 ; <i32> [#uses=2]
- %.ptr.i748 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i767 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i749 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i748 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i750 = call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i746, i32 %.len.i745, i8* %tmp18.i749) ; <i8*> [#uses=1]
- %.gc_mem19.i751 = bitcast i8* %.gc_mem.i750 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i751, i32 %.len.i745 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i
- store i32 %tmp14.i746, i32* %tmp9.i764
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i751, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i767
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %finish
- %35 = bitcast i8* %tmp.i742 to i1* ; <i1*> [#uses=1]
- store i1 true, i1* %35
- %tmp580 = load %"tango.text.Regex.List!(TNFAFragment).List"** %frags ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp581 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp580, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp582 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp581 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp582, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %"int delegate(ref TNFAFragment)")**> [#uses=1]
- %frags.opApply = load i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %"int delegate(ref TNFAFragment)")** %"frags.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %"int delegate(ref TNFAFragment)")*> [#uses=1]
- %tmp585 = insertvalue %"int delegate(ref TNFAFragment)" undef, i8* %tmp570, 0 ; <%"int delegate(ref TNFAFragment)"> [#uses=1]
- %.func = insertvalue %"int delegate(ref TNFAFragment)" %tmp585, i32 (i8*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv15__foreachbody44MFKC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZi, 1 ; <%"int delegate(ref TNFAFragment)"> [#uses=1]
- %tmp586 = call fastcc i32 %frags.opApply(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp580, %"int delegate(ref TNFAFragment)" %.func) ; <i32> [#uses=0]
- %tmp588 = bitcast [4 x %"tango.text.Regex.List!(TNFATransition).List"*]* %trans to i8* ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp588, i8 0, i32 16, i32 4)
- br label %foreachcond
-
-foreachcond: ; preds = %foreachbody, %endwhile569
- %foreachkey.0 = phi i32 [ 0, %endwhile569 ], [ %tmp603, %foreachbody ] ; <i32> [#uses=3]
- %tmp591 = icmp ult i32 %foreachkey.0, 4 ; <i1> [#uses=1]
- br i1 %tmp591, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp593 = getelementptr [4 x %"tango.text.Regex.List!(TNFATransition).List"*]* %trans, i32 0, i32 %foreachkey.0 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc594 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc595 = bitcast i8* %.newclass_gc_alloc594 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl596 = bitcast i8* %.newclass_gc_alloc594 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl596
- %monitor597 = getelementptr i8* %.newclass_gc_alloc594, i32 4 ; <i8*> [#uses=1]
- %36 = bitcast i8* %monitor597 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %36
- %tmp598 = getelementptr i8* %.newclass_gc_alloc594, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp598, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc595, %"tango.text.Regex.List!(TNFATransition).List"** %tmp593
- %tmp603 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- %tmp604 = bitcast %"tango.text.Regex.Stack!(TNFATransition).Stack"* %todo to i8* ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp604, i8 0, i32 12, i32 8)
- br label %whilecond608
-
-whilecond608: ; preds = %endif634, %foreachend
- %state.0.in = phi %"tango.text.Regex.TNFAState!(dchar).TNFAState"** [ %tmp573, %foreachend ], [ %tmp649, %endif634 ] ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %state.0 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %state.0.in ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
- %tmp1.i727 = getelementptr %nest.parse* %.frame, i32 0, i32 6, i32 0 ; <i32*> [#uses=3]
- %tmp2.i728 = load i32* %tmp1.i727, align 8 ; <i32> [#uses=2]
- %tmp3.i729 = icmp eq i32 %tmp2.i728, 0 ; <i1> [#uses=1]
- %tmp613 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state.0, i32 0, i32 3 ; <i1*> [#uses=3]
- br i1 %tmp3.i729, label %oror, label %whilebody609
-
-whilebody609: ; preds = %oror, %whilecond608
- %tmp617 = load i1* %tmp613 ; <i1> [#uses=1]
- br i1 %tmp617, label %endif619, label %if618
-
-oror: ; preds = %whilecond608
- %tmp614 = load i1* %tmp613 ; <i1> [#uses=1]
- br i1 %tmp614, label %endwhile610, label %whilebody609
-
-if618: ; preds = %whilebody609
- store i1 true, i1* %tmp613
- %tmp623 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state.0, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp624 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp623 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp625 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp624, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp626 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp625 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"state.transitions.opApplyReverse@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp626, i32 0, i32 21 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %state.transitions.opApplyReverse = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"state.transitions.opApplyReverse@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp629 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp570, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func630 = insertvalue %"int delegate(ref TNFATransition)" %tmp629, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv15__foreachbody45MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp631 = call fastcc i32 %state.transitions.opApplyReverse(%"tango.text.Regex.List!(TNFATransition).List"* %tmp624, %"int delegate(ref TNFATransition)" %.func630) ; <i32> [#uses=0]
- %tmp2.i.pre = load i32* %tmp1.i727, align 8 ; <i32> [#uses=1]
- br label %endif619
-
-endif619: ; preds = %if618, %whilebody609
- %tmp6.i705 = phi i32 [ %tmp2.i728, %whilebody609 ], [ %tmp2.i.pre, %if618 ] ; <i32> [#uses=2]
- %tmp3.i716 = icmp eq i32 %tmp6.i705, 0 ; <i1> [#uses=1]
- br i1 %tmp3.i716, label %endwhile610, label %endif634
-
-endif634: ; preds = %endif619
- %tmp5.i710 = add i32 %tmp6.i705, -1 ; <i32> [#uses=2]
- %tmp6.i711 = getelementptr %nest.parse* %.frame, i32 0, i32 6, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %.ptr.i712 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp6.i711 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp7.i713 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr.i712, i32 %tmp5.i710 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp8.i714 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp7.i713 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- store i32 %tmp5.i710, i32* %tmp1.i727, align 8
- %tmp639 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp8.i714, i32 0, i32 6 ; <i32*> [#uses=1]
- %tmp640 = load i32* %tmp639 ; <i32> [#uses=1]
- %tmp641 = getelementptr [4 x %"tango.text.Regex.List!(TNFATransition).List"*]* %trans, i32 0, i32 %tmp640 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp642 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp641 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp643 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp642, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp644 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp643 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"(trans[cast(uint)t.priorityClass]).opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp644, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %"(trans[cast(uint)t.priorityClass]).opCatAssign" = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"(trans[cast(uint)t.priorityClass]).opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp647 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %"(trans[cast(uint)t.priorityClass]).opCatAssign"(%"tango.text.Regex.List!(TNFATransition).List"* %tmp642, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp8.i714) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp649 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp8.i714, i32 0, i32 2 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- br label %whilecond608
-
-endwhile610: ; preds = %endif619, %oror
- store i32 0, i32* %nextPrio
- br label %foreachcond653
-
-foreachcond653: ; preds = %foreachbody654, %endwhile610
- %foreachkey651.0 = phi i32 [ 0, %endwhile610 ], [ %tmp671, %foreachbody654 ] ; <i32> [#uses=3]
- %tmp658 = icmp ult i32 %foreachkey651.0, 4 ; <i1> [#uses=1]
- br i1 %tmp658, label %foreachbody654, label %foreachend656
-
-foreachbody654: ; preds = %foreachcond653
- %tmp660 = getelementptr [4 x %"tango.text.Regex.List!(TNFATransition).List"*]* %trans, i32 0, i32 %foreachkey651.0 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp661 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp660 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp663 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp661, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp664 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp663 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"ts.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp664, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %ts.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"ts.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp667 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp570, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func668 = insertvalue %"int delegate(ref TNFATransition)" %tmp667, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv15__foreachbody46MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp669 = call fastcc i32 %ts.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp661, %"int delegate(ref TNFATransition)" %.func668) ; <i32> [#uses=0]
- %tmp671 = add i32 %foreachkey651.0, 1 ; <i32> [#uses=1]
- br label %foreachcond653
-
-foreachend656: ; preds = %foreachcond653
- ret void
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFA!(dchar).TNFA"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5_ctorMFAwZC5tango4text5Regex11__T4TNFATwZ4TNFA(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"Act[]" %regex_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 6 ; <i32*> [#uses=1]
- store i32 1, i32* %tmp1
- %tmp3 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp4 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List"** %tmp3
- %tmp9 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- store %"Act[]" %regex_arg, %"Act[]"* %tmp9
- ret %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA11peekPatternMFZw(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg) {
-entry:
- %tmp = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp2 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 8 ; <i32*> [#uses=1]
- %tmp3 = load i32* %tmp2 ; <i32> [#uses=2]
- store i32 %tmp3, i32* %tmp
- %tmp6 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp6 ; <i32> [#uses=1]
- %tmp8 = icmp ult i32 %tmp3, %.len ; <i1> [#uses=1]
- br i1 %tmp8, label %if, label %endif
-
-if: ; preds = %entry
- %tmp10 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11 = load %"Act[]"* %tmp10 ; <%"Act[]"> [#uses=1]
- %tmp12 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11, i32* %tmp) ; <i32> [#uses=1]
- ret i32 %tmp12
-
-endif: ; preds = %entry
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp3 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 8 ; <i32*> [#uses=2]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=2]
- store i32 %tmp4, i32* %tmp1
- %tmp9 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp9 ; <i32> [#uses=1]
- %tmp11 = icmp ult i32 %tmp4, %.len ; <i1> [#uses=1]
- br i1 %tmp11, label %if, label %endif
-
-if: ; preds = %entry
- %tmp13 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14 = load %"Act[]"* %tmp13 ; <%"Act[]"> [#uses=1]
- %tmp17 = tail call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14, i32* %tmp3) ; <i32> [#uses=1]
- ret i32 %tmp17
-
-endif: ; preds = %entry
- ret i32 0
-}
-
-define weak_odr fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA12endOfPatternMFZb(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 8 ; <i32*> [#uses=1]
- %tmp4 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp4 ; <i32> [#uses=1]
- %tmp5 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp6 = icmp uge i32 %tmp5, %.len ; <i1> [#uses=1]
- ret i1 %tmp6
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA8addStateMFZC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg) {
-entry:
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i, %"tango.text.Regex.List!(TNFATransition).List"** %1
- %tmp6 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp6 to i32* ; <i32*> [#uses=1]
- %tmp9 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=2]
- %.len = load i32* %tmp9 ; <i32> [#uses=4]
- store i32 %.len, i32* %3
- %tmp14 = add i32 %.len, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14, i32 %.len, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19, i32 %.len ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20
- store i32 %tmp14, i32* %tmp9
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17
- ret %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA13addTransitionMFE5tango4text5Regex13PriorityClassZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, i32 %pc_arg) {
-entry:
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=2]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i = getelementptr i8* %.newclass_gc_alloc, i32 48 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i to i32* ; <i32*> [#uses=1]
- store i32 %pc_arg, i32* %1
- %tmp7 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp8 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg) {
-entry:
- %tmp.i = alloca i32, align 4 ; <i32*> [#uses=2]
- br label %whilecond
-
-whilecond: ; preds = %if.i, %endif, %entry
- %res.0 = phi i32 [ 0, %entry ], [ %tmp12, %endif ], [ %tmp12, %if.i ] ; <i32> [#uses=2]
- %tmp1.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 8 ; <i32*> [#uses=3]
- %tmp4.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=2]
- %.len.i = load i32* %tmp4.i ; <i32> [#uses=1]
- %tmp5.i = load i32* %tmp1.i ; <i32> [#uses=2]
- %tmp6.i = icmp ult i32 %tmp5.i, %.len.i ; <i1> [#uses=1]
- br i1 %tmp6.i, label %whilebody, label %endwhile
-
-whilebody: ; preds = %whilecond
- store i32 %tmp5.i, i32* %tmp.i
- %tmp10.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i22 = load %"Act[]"* %tmp10.i ; <%"Act[]"> [#uses=1]
- %tmp12.i = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i22, i32* %tmp.i) ; <i32> [#uses=1]
- %phitmp = add i32 %tmp12.i, -48 ; <i32> [#uses=2]
- %or.cond = icmp ugt i32 %phitmp, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %endwhile, label %endif
-
-endif: ; preds = %whilebody
- %tmp9 = mul i32 %res.0, 10 ; <i32> [#uses=1]
- %tmp12 = add i32 %tmp9, %phitmp ; <i32> [#uses=2]
- %tmp1.i16 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp4.i17 = load i32* %tmp1.i ; <i32> [#uses=2]
- store i32 %tmp4.i17, i32* %tmp1.i16
- %.len.i18 = load i32* %tmp4.i ; <i32> [#uses=1]
- %tmp11.i = icmp ult i32 %tmp4.i17, %.len.i18 ; <i1> [#uses=1]
- br i1 %tmp11.i, label %if.i, label %whilecond
-
-if.i: ; preds = %endif
- %tmp13.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i = load %"Act[]"* %tmp13.i ; <%"Act[]"> [#uses=1]
- %tmp17.i = tail call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i, i32* %tmp1.i) ; <i32> [#uses=0]
- br label %whilecond
-
-endwhile: ; preds = %whilebody, %whilecond
- ret i32 %res.0
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA15parseOccurCountMFJkJkZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32* nocapture %minOccur_arg, i32* nocapture %maxOccur_arg) {
-entry:
- %tmp.i235 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i210 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i.i158 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i147 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i.i = alloca i32, align 4 ; <i32*> [#uses=2]
- store i32 0, i32* %minOccur_arg
- store i32 0, i32* %maxOccur_arg
- br label %whilecond.i
-
-whilecond.i: ; preds = %if.i.i, %endif.i, %entry
- %res.0.i = phi i32 [ 0, %entry ], [ %tmp12.i, %endif.i ], [ %tmp12.i, %if.i.i ] ; <i32> [#uses=2]
- %tmp1.i.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 8 ; <i32*> [#uses=15]
- %tmp4.i.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=13]
- %.len.i.i = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp5.i.i = load i32* %tmp1.i.i ; <i32> [#uses=2]
- %tmp6.i.i = icmp ult i32 %tmp5.i.i, %.len.i.i ; <i1> [#uses=1]
- br i1 %tmp6.i.i, label %whilebody.i, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit
-
-whilebody.i: ; preds = %whilecond.i
- store i32 %tmp5.i.i, i32* %tmp.i.i
- %tmp10.i.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=2]
- %tmp11.i22.i = load %"Act[]"* %tmp10.i.i ; <%"Act[]"> [#uses=1]
- %tmp12.i.i = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i22.i, i32* %tmp.i.i) ; <i32> [#uses=1]
- %phitmp = add i32 %tmp12.i.i, -48 ; <i32> [#uses=2]
- %or.cond.i = icmp ugt i32 %phitmp, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit, label %endif.i
-
-endif.i: ; preds = %whilebody.i
- %tmp9.i = mul i32 %res.0.i, 10 ; <i32> [#uses=1]
- %tmp12.i = add i32 %tmp9.i, %phitmp ; <i32> [#uses=2]
- %tmp1.i16.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp4.i17.i = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp4.i17.i, i32* %tmp1.i16.i
- %.len.i18.i = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp11.i.i = icmp ult i32 %tmp4.i17.i, %.len.i18.i ; <i1> [#uses=1]
- br i1 %tmp11.i.i, label %if.i.i, label %whilecond.i
-
-if.i.i: ; preds = %endif.i
- %tmp14.i.i = load %"Act[]"* %tmp10.i.i ; <%"Act[]"> [#uses=1]
- %tmp17.i.i = tail call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i.i, i32* %tmp1.i.i) ; <i32> [#uses=0]
- br label %whilecond.i
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit: ; preds = %whilebody.i, %whilecond.i
- store i32 %res.0.i, i32* %minOccur_arg
- %tmp3.i237 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp3.i237, i32* %tmp.i235
- %.len.i239 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp8.i240 = icmp ult i32 %tmp3.i237, %.len.i239 ; <i1> [#uses=1]
- br i1 %tmp8.i240, label %if.i244, label %endif
-
-if.i244: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit
- %tmp10.i241 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i242 = load %"Act[]"* %tmp10.i241 ; <%"Act[]"> [#uses=1]
- %tmp12.i243 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i242, i32* %tmp.i235) ; <i32> [#uses=1]
- %phitmp251 = icmp eq i32 %tmp12.i243, 125 ; <i1> [#uses=1]
- br i1 %phitmp251, label %if, label %endif
-
-if: ; preds = %if.i244
- %tmp1.i223 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp4.i225 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp4.i225, i32* %tmp1.i223
- %.len.i227 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp11.i228 = icmp ult i32 %tmp4.i225, %.len.i227 ; <i1> [#uses=1]
- br i1 %tmp11.i228, label %if.i232, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit234
-
-if.i232: ; preds = %if
- %tmp13.i229 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i230 = load %"Act[]"* %tmp13.i229 ; <%"Act[]"> [#uses=1]
- %tmp17.i231 = tail call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i230, i32* %tmp1.i.i) ; <i32> [#uses=0]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit234
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit234: ; preds = %if.i232, %if
- %tmp7 = load i32* %minOccur_arg ; <i32> [#uses=1]
- store i32 %tmp7, i32* %maxOccur_arg
- ret void
-
-endif: ; preds = %if.i244, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit
- %tmp3.i212 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp3.i212, i32* %tmp.i210
- %.len.i214 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp8.i215 = icmp ult i32 %tmp3.i212, %.len.i214 ; <i1> [#uses=1]
- br i1 %tmp8.i215, label %if.i219, label %if11
-
-if.i219: ; preds = %endif
- %tmp10.i216 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i217 = load %"Act[]"* %tmp10.i216 ; <%"Act[]"> [#uses=1]
- %tmp12.i218 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i217, i32* %tmp.i210) ; <i32> [#uses=1]
- %phitmp250 = icmp eq i32 %tmp12.i218, 44 ; <i1> [#uses=1]
- br i1 %phitmp250, label %endif12, label %if11
-
-if11: ; preds = %if.i219, %endif
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp13 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp13, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp19 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp19 ; <i32*> [#uses=1]
- %tmp21 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %.len = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp23 = load i32* %tmp21 ; <i32> [#uses=2]
- %tmp24 = getelementptr i32* %.ptr, i32 %tmp23 ; <i32*> [#uses=1]
- %tmp25 = sub i32 %.len, %tmp23 ; <i32> [#uses=1]
- %tmp26 = insertvalue %"Act[]" undef, i32 %tmp25, 0 ; <%"Act[]"> [#uses=1]
- %tmp27 = insertvalue %"Act[]" %tmp26, i32* %tmp24, 1 ; <%"Act[]"> [#uses=1]
- %tmp28 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp27, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len29 = extractvalue %"byte[]" %tmp28, 0 ; <i32> [#uses=4]
- %tmp30 = add i32 %.len29, 28 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp30, align 1 ; <i8*> [#uses=3]
- %.ptr31 = extractvalue %"byte[]" %tmp28, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([29 x i8]* @.str219, i32 0, i32 0), i32 28, i32 1)
- %tmp32 = getelementptr i8* %.nongc_mem, i32 28 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32, i8* %.ptr31, i32 %.len29, i32 1)
- %tmp34 = add i32 %.len29, 29 ; <i32> [#uses=2]
- %.nongc_mem252 = alloca i8, i32 %tmp34, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem252, i8* %.nongc_mem, i32 %tmp30, i32 1)
- %tmp37 = getelementptr i8* %.nongc_mem252, i32 %tmp30 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp37, align 1
- %tmp2.i202 = add i32 %.len29, 37 ; <i32> [#uses=2]
- %.gc_mem.i203 = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i202) ; <i8*> [#uses=3]
- %.gc_mem12.i204 = bitcast i8* %.gc_mem.i203 to i64* ; <i64*> [#uses=1]
- %tmp.i205 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i205, i64* %.gc_mem12.i204, align 1
- %tmp4.i206 = getelementptr i8* %.gc_mem.i203, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i206, i8* %.nongc_mem252, i32 %tmp34, i32 1)
- %tmp6.i207 = insertvalue %"byte[]" undef, i32 %tmp2.i202, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i208 = insertvalue %"byte[]" %tmp6.i207, i8* %.gc_mem.i203, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i209 = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i208, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp41 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp41)
- unreachable
-
-endif12: ; preds = %if.i219
- %tmp1.i188 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=5]
- %tmp4.i190 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp4.i190, i32* %tmp1.i188
- %.len.i192 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp11.i193 = icmp ult i32 %tmp4.i190, %.len.i192 ; <i1> [#uses=1]
- br i1 %tmp11.i193, label %if.i197, label %whilecond.i165
-
-if.i197: ; preds = %endif12
- %tmp13.i194 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i195 = load %"Act[]"* %tmp13.i194 ; <%"Act[]"> [#uses=1]
- %tmp17.i196 = tail call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i195, i32* %tmp1.i.i) ; <i32> [#uses=0]
- br label %whilecond.i165
-
-whilecond.i165: ; preds = %if.i.i184, %endif.i180, %if.i197, %endif12
- %res.0.i159 = phi i32 [ 0, %endif12 ], [ 0, %if.i197 ], [ %tmp12.i175, %endif.i180 ], [ %tmp12.i175, %if.i.i184 ] ; <i32> [#uses=2]
- %.len.i.i162 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp5.i.i163 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- %tmp6.i.i164 = icmp ult i32 %tmp5.i.i163, %.len.i.i162 ; <i1> [#uses=1]
- br i1 %tmp6.i.i164, label %whilebody.i166, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit187
-
-whilebody.i166: ; preds = %whilecond.i165
- store i32 %tmp5.i.i163, i32* %tmp.i.i158
- %tmp10.i.i167 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=2]
- %tmp11.i22.i168 = load %"Act[]"* %tmp10.i.i167 ; <%"Act[]"> [#uses=1]
- %tmp12.i.i169 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i22.i168, i32* %tmp.i.i158) ; <i32> [#uses=1]
- %phitmp248 = add i32 %tmp12.i.i169, -48 ; <i32> [#uses=2]
- %or.cond.i172 = icmp ugt i32 %phitmp248, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i172, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit187, label %endif.i180
-
-endif.i180: ; preds = %whilebody.i166
- %tmp9.i174 = mul i32 %res.0.i159, 10 ; <i32> [#uses=1]
- %tmp12.i175 = add i32 %tmp9.i174, %phitmp248 ; <i32> [#uses=2]
- %tmp4.i17.i177 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp4.i17.i177, i32* %tmp1.i188
- %.len.i18.i178 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp11.i.i179 = icmp ult i32 %tmp4.i17.i177, %.len.i18.i178 ; <i1> [#uses=1]
- br i1 %tmp11.i.i179, label %if.i.i184, label %whilecond.i165
-
-if.i.i184: ; preds = %endif.i180
- %tmp14.i.i182 = load %"Act[]"* %tmp10.i.i167 ; <%"Act[]"> [#uses=1]
- %tmp17.i.i183 = tail call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i.i182, i32* %tmp1.i.i) ; <i32> [#uses=0]
- br label %whilecond.i165
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit187: ; preds = %whilebody.i166, %whilecond.i165
- store i32 %res.0.i159, i32* %maxOccur_arg
- %tmp3.i149 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp3.i149, i32* %tmp.i147
- %.len.i151 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp8.i152 = icmp ult i32 %tmp3.i149, %.len.i151 ; <i1> [#uses=1]
- br i1 %tmp8.i152, label %if.i155, label %if49
-
-if.i155: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit187
- %tmp10.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i153 = load %"Act[]"* %tmp10.i ; <%"Act[]"> [#uses=1]
- %tmp12.i154 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i153, i32* %tmp.i147) ; <i32> [#uses=1]
- %phitmp249 = icmp eq i32 %tmp12.i154, 125 ; <i1> [#uses=1]
- br i1 %phitmp249, label %endif50, label %if49
-
-if49: ; preds = %if.i155, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11parseNumberMFZk.exit187
- %.newclass_gc_alloc51 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc52 = bitcast i8* %.newclass_gc_alloc51 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl53 = bitcast i8* %.newclass_gc_alloc51 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl53
- %monitor54 = getelementptr i8* %.newclass_gc_alloc51, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor54 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp55 = getelementptr i8* %.newclass_gc_alloc51, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp55, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp61 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr62 = load i32** %tmp61 ; <i32*> [#uses=1]
- %.len66 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp67 = load i32* %tmp1.i188 ; <i32> [#uses=2]
- %tmp68 = getelementptr i32* %.ptr62, i32 %tmp67 ; <i32*> [#uses=1]
- %tmp69 = sub i32 %.len66, %tmp67 ; <i32> [#uses=1]
- %tmp70 = insertvalue %"Act[]" undef, i32 %tmp69, 0 ; <%"Act[]"> [#uses=1]
- %tmp71 = insertvalue %"Act[]" %tmp70, i32* %tmp68, 1 ; <%"Act[]"> [#uses=1]
- %tmp72 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp71, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len73 = extractvalue %"byte[]" %tmp72, 0 ; <i32> [#uses=4]
- %tmp74 = add i32 %.len73, 28 ; <i32> [#uses=3]
- %.nongc_mem253 = alloca i8, i32 %tmp74, align 1 ; <i8*> [#uses=3]
- %.ptr76 = extractvalue %"byte[]" %tmp72, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem253, i8* getelementptr ([29 x i8]* @.str221, i32 0, i32 0), i32 28, i32 1)
- %tmp77 = getelementptr i8* %.nongc_mem253, i32 28 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp77, i8* %.ptr76, i32 %.len73, i32 1)
- %tmp79 = add i32 %.len73, 29 ; <i32> [#uses=2]
- %.nongc_mem254 = alloca i8, i32 %tmp79, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem254, i8* %.nongc_mem253, i32 %tmp74, i32 1)
- %tmp82 = getelementptr i8* %.nongc_mem254, i32 %tmp74 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp82, align 1
- %tmp2.i139 = add i32 %.len73, 37 ; <i32> [#uses=2]
- %.gc_mem.i140 = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i139) ; <i8*> [#uses=3]
- %.gc_mem12.i141 = bitcast i8* %.gc_mem.i140 to i64* ; <i64*> [#uses=1]
- %tmp.i142 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i142, i64* %.gc_mem12.i141, align 1
- %tmp4.i143 = getelementptr i8* %.gc_mem.i140, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i143, i8* %.nongc_mem254, i32 %tmp79, i32 1)
- %tmp6.i144 = insertvalue %"byte[]" undef, i32 %tmp2.i139, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i145 = insertvalue %"byte[]" %tmp6.i144, i8* %.gc_mem.i140, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i146 = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc52, %"byte[]" %tmp7.i145, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp86 = bitcast i8* %.newclass_gc_alloc51 to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp86)
- unreachable
-
-endif50: ; preds = %if.i155
- %tmp4.i134 = load i32* %tmp1.i.i ; <i32> [#uses=2]
- store i32 %tmp4.i134, i32* %tmp1.i188
- %.len.i = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp11.i = icmp ult i32 %tmp4.i134, %.len.i ; <i1> [#uses=1]
- br i1 %tmp11.i, label %if.i, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit
-
-if.i: ; preds = %endif50
- %tmp13.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i = load %"Act[]"* %tmp13.i ; <%"Act[]"> [#uses=1]
- %tmp17.i = tail call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i, i32* %tmp1.i.i) ; <i32> [#uses=0]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit: ; preds = %if.i, %endif50
- %tmp90 = load i32* %maxOccur_arg ; <i32> [#uses=2]
- %tmp91 = icmp eq i32 %tmp90, 0 ; <i1> [#uses=1]
- br i1 %tmp91, label %endif96, label %andand
-
-andand: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit
- %tmp93 = load i32* %minOccur_arg ; <i32> [#uses=1]
- %tmp94 = icmp ult i32 %tmp90, %tmp93 ; <i1> [#uses=1]
- br i1 %tmp94, label %if95, label %endif96
-
-if95: ; preds = %andand
- %.newclass_gc_alloc97 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc98 = bitcast i8* %.newclass_gc_alloc97 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl99 = bitcast i8* %.newclass_gc_alloc97 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl99
- %monitor100 = getelementptr i8* %.newclass_gc_alloc97, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor100 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp101 = getelementptr i8* %.newclass_gc_alloc97, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp101, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp107 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr108 = load i32** %tmp107 ; <i32*> [#uses=1]
- %.len112 = load i32* %tmp4.i.i ; <i32> [#uses=1]
- %tmp113 = load i32* %tmp1.i188 ; <i32> [#uses=2]
- %tmp114 = getelementptr i32* %.ptr108, i32 %tmp113 ; <i32*> [#uses=1]
- %tmp115 = sub i32 %.len112, %tmp113 ; <i32> [#uses=1]
- %tmp116 = insertvalue %"Act[]" undef, i32 %tmp115, 0 ; <%"Act[]"> [#uses=1]
- %tmp117 = insertvalue %"Act[]" %tmp116, i32* %tmp114, 1 ; <%"Act[]"> [#uses=1]
- %tmp118 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp117, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len119 = extractvalue %"byte[]" %tmp118, 0 ; <i32> [#uses=4]
- %tmp120 = add i32 %.len119, 40 ; <i32> [#uses=3]
- %.nongc_mem255 = alloca i8, i32 %tmp120, align 1 ; <i8*> [#uses=3]
- %.ptr122 = extractvalue %"byte[]" %tmp118, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem255, i8* getelementptr ([41 x i8]* @.str223, i32 0, i32 0), i32 40, i32 1)
- %tmp123 = getelementptr i8* %.nongc_mem255, i32 40 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp123, i8* %.ptr122, i32 %.len119, i32 1)
- %tmp125 = add i32 %.len119, 41 ; <i32> [#uses=2]
- %.nongc_mem256 = alloca i8, i32 %tmp125, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem256, i8* %.nongc_mem255, i32 %tmp120, i32 1)
- %tmp128 = getelementptr i8* %.nongc_mem256, i32 %tmp120 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp128, align 1
- %tmp2.i = add i32 %.len119, 49 ; <i32> [#uses=2]
- %.gc_mem.i = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i, i64* %.gc_mem12.i, align 1
- %tmp4.i = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i, i8* %.nongc_mem256, i32 %tmp125, i32 1)
- %tmp6.i = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i = insertvalue %"byte[]" %tmp6.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc98, %"byte[]" %tmp7.i, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp132 = bitcast i8* %.newclass_gc_alloc97 to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp132)
- unreachable
-
-endif96: ; preds = %andand, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit
- ret void
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %t_arg) {
-entry:
- %t = alloca %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*, align 4 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=4]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %t_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %t
- %tmp1 = icmp eq %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %t_arg, null ; <i1> [#uses=1]
- br i1 %tmp1, label %if, label %endif
-
-if: ; preds = %entry
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* null
-
-endif: ; preds = %entry
- %tmp4 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 11 ; <i8**> [#uses=2]
- %tmp5 = load i8** %tmp4 ; <i8*> [#uses=1]
- %tmp6 = bitcast i8* %tmp5 to %32* ; <%32*> [#uses=1]
- %tmp7 = bitcast %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %t to i8* ; <i8*> [#uses=2]
- %aa.in = call i8* @_aaIn(%32* nocapture %tmp6, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D67TypeInfo_C5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*), i8* nocapture %tmp7) readonly ; <i8*> [#uses=2]
- %tmp10 = icmp eq i8* %aa.in, null ; <i1> [#uses=1]
- br i1 %tmp10, label %endif12, label %if11
-
-if11: ; preds = %endif
- %tmp8 = bitcast i8* %aa.in to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp8 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp14
-
-endif12: ; preds = %endif
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=8]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp16 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp16, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp21 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %t_arg, i32 0, i32 6 ; <i32*> [#uses=1]
- %tmp22 = load i32* %tmp21 ; <i32> [#uses=1]
- %tmp1.i = getelementptr i8* %.newclass_gc_alloc, i32 48 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i to i32* ; <i32*> [#uses=1]
- store i32 %tmp22, i32* %1
- %tmp26 = bitcast i8** %tmp4 to %32* ; <%32*> [#uses=1]
- %aa.index = call i8* @_aaGet(%32* nocapture %tmp26, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D67TypeInfo_C5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*), i32 4, i8* nocapture %tmp7) ; <i8*> [#uses=1]
- %tmp28 = bitcast i8* %aa.index to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp28
- %tmp31 = getelementptr i8* %.newclass_gc_alloc, i32 44 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp31 to i32* ; <i32*> [#uses=1]
- %tmp32 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %t ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %tmp33 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp32, i32 0, i32 5 ; <i32*> [#uses=1]
- %tmp34 = load i32* %tmp33 ; <i32> [#uses=1]
- store i32 %tmp34, i32* %2
- %tmp36 = getelementptr i8* %.newclass_gc_alloc, i32 40 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp36 to i32* ; <i32*> [#uses=1]
- %tmp38 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp32, i32 0, i32 4 ; <i32*> [#uses=1]
- %tmp39 = load i32* %tmp38 ; <i32> [#uses=1]
- store i32 %tmp39, i32* %3
- %tmp43 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp32, i32 0, i32 3 ; <%"tango.text.Regex.Predicate!(dchar).Predicate"*> [#uses=1]
- %tmp41 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %tmp45 = bitcast %"tango.text.Regex.Predicate!(dchar).Predicate"* %tmp43 to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp41, i8* %tmp45, i32 28, i32 1)
- %4 = bitcast i8* %tmp16 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp49 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %t ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp50 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp49, i32 0, i32 2 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp51 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp50 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp52 = call fastcc %"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp51) ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp52, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %4
- %tmp54 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp55 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp54 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp56 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp55, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp57 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp56 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp57, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp60 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp55, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %s_arg) {
-entry:
- %s = alloca %"tango.text.Regex.TNFAState!(dchar).TNFAState"*, align 4 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=5]
- %.frame = alloca %nest.clone, align 8 ; <%nest.clone*> [#uses=3]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %s_arg, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s
- %s2 = getelementptr %nest.clone* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=7]
- %this = getelementptr %nest.clone* %.frame, i32 0, i32 1 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- store %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFA!(dchar).TNFA"** %this
- %tmp3 = icmp eq %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %s_arg, null ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %endif
-
-if: ; preds = %entry
- ret %"tango.text.Regex.TNFAState!(dchar).TNFAState"* null
-
-endif: ; preds = %entry
- %tmp6 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 10 ; <i8**> [#uses=2]
- %tmp7 = load i8** %tmp6 ; <i8*> [#uses=1]
- %tmp8 = bitcast i8* %tmp7 to %32* ; <%32*> [#uses=1]
- %tmp9 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s to i8* ; <i8*> [#uses=2]
- %aa.in = call i8* @_aaIn(%32* nocapture %tmp8, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D55TypeInfo_C5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i8* nocapture %tmp9) readonly ; <i8*> [#uses=2]
- %tmp12 = icmp eq i8* %aa.in, null ; <i1> [#uses=1]
- br i1 %tmp12, label %endif14, label %if13
-
-if13: ; preds = %endif
- %tmp10 = bitcast i8* %aa.in to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp16 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp10 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- ret %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp16
-
-endif14: ; preds = %endif
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp18 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp18, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i, %"tango.text.Regex.List!(TNFATransition).List"** %1
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2, align 8
- %tmp25 = bitcast i8** %tmp6 to %32* ; <%32*> [#uses=1]
- %aa.index = call i8* @_aaGet(%32* nocapture %tmp25, %object.TypeInfo* bitcast (%object.TypeInfo_Class* @_D55TypeInfo_C5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 4, i8* nocapture %tmp9) ; <i8*> [#uses=1]
- %tmp27 = bitcast i8* %aa.index to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp28 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2, align 8 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp28, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp27
- %tmp29 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2, align 8 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp30 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp29, i32 0, i32 2 ; <i1*> [#uses=1]
- %tmp31 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp32 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp31, i32 0, i32 2 ; <i1*> [#uses=1]
- %tmp33 = load i1* %tmp32 ; <i1> [#uses=1]
- store i1 %tmp33, i1* %tmp30
- %tmp34 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2, align 8 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp35 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp34, i32 0, i32 3 ; <i1*> [#uses=1]
- %tmp36 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp37 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp36, i32 0, i32 3 ; <i1*> [#uses=1]
- %tmp38 = load i1* %tmp37 ; <i1> [#uses=1]
- store i1 %tmp38, i1* %tmp35
- %tmp39 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp40 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp39, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp41 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp40 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp42 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp41, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp43 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp42 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"s.transitions.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp43, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %s.transitions.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"s.transitions.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp45 = bitcast %nest.clone* %.frame to i8* ; <i8*> [#uses=1]
- %tmp46 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp45, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func = insertvalue %"int delegate(ref TNFATransition)" %tmp46, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState15__foreachbody47MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp47 = call fastcc i32 %s.transitions.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp41, %"int delegate(ref TNFATransition)" %.func) ; <i32> [#uses=0]
- %tmp48 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2, align 8 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp49 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp48, i32 0, i32 4 ; <i32*> [#uses=1]
- %tmp52 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=3]
- %.len = load i32* %tmp52 ; <i32> [#uses=1]
- store i32 %.len, i32* %tmp49
- %.len56 = load i32* %tmp52 ; <i32> [#uses=3]
- %tmp57 = add i32 %.len56, 1 ; <i32> [#uses=2]
- %tmp60 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp60 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp61 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp57, i32 %.len56, i8* %tmp61) ; <i8*> [#uses=1]
- %.gc_mem62 = bitcast i8* %.gc_mem to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp63 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem62, i32 %.len56 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp64 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2, align 8 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp64, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp63
- store i32 %tmp57, i32* %tmp52
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem62, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp60
- %tmp67 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2, align 8 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- ret %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp67
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f_arg) {
-entry:
- %.frame = alloca %33, align 8 ; <%33*> [#uses=3]
- %f2 = getelementptr %33* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=2]
- %this = getelementptr %33* %.frame, i32 0, i32 1 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- store %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFA!(dchar).TNFA"** %this
- %tmp3 = icmp eq %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f_arg, null ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %endif
-
-if: ; preds = %entry
- ret %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* null
-
-endif: ; preds = %entry
- %tmp5 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 10 ; <i8**> [#uses=1]
- store i8* null, i8** %tmp5
- %tmp7 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 11 ; <i8**> [#uses=1]
- store i8* null, i8** %tmp7
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp8 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp8, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %1 = bitcast i8* %tmp8 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i, %"tango.text.Regex.List!(TNFATransition).List"** %1
- %tmp7.i = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp7.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %4 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %4
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %3
- %tmp17.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %5 = bitcast i8* %tmp17.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc18.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %6 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %6
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %5
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %7 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc28.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %8 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %8
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %7
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %f2, align 8
- %tmp14 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f_arg, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp15 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp14 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp16 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp15, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp17 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp16 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.entries.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp17, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %f.entries.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"f.entries.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp19 = bitcast %33* %.frame to i8* ; <i8*> [#uses=4]
- %tmp20 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp19, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func = insertvalue %"int delegate(ref TNFATransition)" %tmp20, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody48MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp21 = call fastcc i32 %f.entries.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp15, %"int delegate(ref TNFATransition)" %.func) ; <i32> [#uses=0]
- %tmp23 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp24 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp23 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp25 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp24, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp26 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp25 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.exits.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp26, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %f.exits.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"f.exits.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp29 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp19, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func30 = insertvalue %"int delegate(ref TNFATransition)" %tmp29, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody49MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp31 = call fastcc i32 %f.exits.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp24, %"int delegate(ref TNFATransition)" %.func30) ; <i32> [#uses=0]
- %tmp33 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp34 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp33 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp35 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp34, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp36 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp35 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.entry_state.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp36, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %f.entry_state.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"f.entry_state.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp39 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp19, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func40 = insertvalue %"int delegate(ref TNFATransition)" %tmp39, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody50MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp41 = call fastcc i32 %f.entry_state.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp34, %"int delegate(ref TNFATransition)" %.func40) ; <i32> [#uses=0]
- %tmp43 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f_arg, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp44 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp43 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp45 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp44, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp46 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp45 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.exit_state.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp46, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %f.exit_state.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"f.exit_state.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp49 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp19, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func50 = insertvalue %"int delegate(ref TNFATransition)" %tmp49, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody51MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp51 = call fastcc i32 %f.exit_state.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp44, %"int delegate(ref TNFATransition)" %.func50) ; <i32> [#uses=0]
- %tmp52 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %f2, align 8 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- ret %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA19constructSingleCharMFwE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, i32 %c_arg, i32 %type_arg) {
-entry:
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=8]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp.i, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 48 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i.i to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %1
- %tmp7.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp8.i = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp2.i.i to i32* ; <i32*> [#uses=2]
- %.len.i.i = load i32* %2 ; <i32> [#uses=3]
- %tmp3.i.i = add i32 %.len.i.i, 1 ; <i32> [#uses=2]
- %tmp6.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp6.i.i to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i.i = load %tango.net.Socket.timeval** %3 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7.i.i = bitcast %tango.net.Socket.timeval* %.ptr.i.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i.i = call i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), i32 %tmp3.i.i, i32 %.len.i.i, i8* %tmp7.i.i) ; <i8*> [#uses=1]
- %.gc_mem8.i.i = bitcast i8* %.gc_mem.i.i to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- %tmp9.i.i = getelementptr %tango.net.Socket.timeval* %.gc_mem8.i.i, i32 %.len.i.i ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1015.i.i = bitcast %tango.net.Socket.timeval* %tmp9.i.i to i64* ; <i64*> [#uses=1]
- %4 = zext i32 %c_arg to i64 ; <i64> [#uses=2]
- %5 = shl i64 %4, 32 ; <i64> [#uses=1]
- %6 = or i64 %4, %5 ; <i64> [#uses=1]
- store i64 %6, i64* %tmp1015.i.i, align 1
- store i32 %tmp3.i.i, i32* %2
- store %tango.net.Socket.timeval* %.gc_mem8.i.i, %tango.net.Socket.timeval** %3
- %tmp7 = getelementptr i8* %.newclass_gc_alloc.i, i32 20 ; <i8*> [#uses=1]
- %7 = bitcast i8* %tmp7 to i32* ; <i32*> [#uses=1]
- store i32 %type_arg, i32* %7
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %8 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %8
- %tmp9 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp9, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %9 = bitcast i8* %tmp9 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i32 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc.i33 = bitcast i8* %.newclass_gc_alloc.i32 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %vtbl.i34 = bitcast i8* %.newclass_gc_alloc.i32 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i34
- %monitor.i35 = getelementptr i8* %.newclass_gc_alloc.i32, i32 4 ; <i8*> [#uses=1]
- %10 = bitcast i8* %monitor.i35 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %10
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc.i32, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i33, %"tango.text.Regex.List!(TNFATransition).List"** %9
- %tmp7.i36 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %11 = bitcast i8* %tmp7.i36 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %12 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %12
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %11
- %tmp17.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %13 = bitcast i8* %tmp17.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc18.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %14 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %14
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %13
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %15 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc28.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %16 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %16
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %15
- %tmp17 = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp18 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp17 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp18, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp21 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp25 = bitcast i8* %.newclass_gc_alloc.i32 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp26 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp25 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp26, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp29 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i33, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFAwE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"Act[]" %chars_arg, i32 %type_arg) {
-entry:
- %cc = alloca %"tango.text.Regex.CharClass!(dchar).CharClass", align 8 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=4]
- %chars_arg13 = extractvalue %"Act[]" %chars_arg, 0 ; <i32> [#uses=1]
- %chars_arg14 = extractvalue %"Act[]" %chars_arg, 1 ; <i32*> [#uses=1]
- %cc15 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc to i64* ; <i64*> [#uses=1]
- store i64 0, i64* %cc15, align 8
- br label %forcond
-
-forcond: ; preds = %forbody, %entry
- %i.0 = phi i32 [ 0, %entry ], [ %tmp9, %forbody ] ; <i32> [#uses=3]
- %tmp3 = icmp ult i32 %i.0, %chars_arg13 ; <i1> [#uses=1]
- br i1 %tmp3, label %forbody, label %endfor
-
-forbody: ; preds = %forcond
- %tmp6 = getelementptr i32* %chars_arg14, i32 %i.0 ; <i32*> [#uses=1]
- %tmp7 = load i32* %tmp6 ; <i32> [#uses=1]
- %tmp2.i = getelementptr %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc, i32 0, i32 0, i32 0 ; <i32*> [#uses=2]
- %.len.i = load i32* %tmp2.i, align 8 ; <i32> [#uses=3]
- %tmp3.i = add i32 %.len.i, 1 ; <i32> [#uses=2]
- %tmp6.i = getelementptr %"tango.text.Regex.CharClass!(dchar).CharClass"* %cc, i32 0, i32 0, i32 1 ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i = load %tango.net.Socket.timeval** %tmp6.i ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7.i = bitcast %tango.net.Socket.timeval* %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i = call i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), i32 %tmp3.i, i32 %.len.i, i8* %tmp7.i) ; <i8*> [#uses=1]
- %.gc_mem8.i = bitcast i8* %.gc_mem.i to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- %tmp9.i = getelementptr %tango.net.Socket.timeval* %.gc_mem8.i, i32 %.len.i ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1116.i = bitcast %tango.net.Socket.timeval* %tmp9.i to i64* ; <i64*> [#uses=1]
- %0 = zext i32 %tmp7 to i64 ; <i64> [#uses=2]
- %1 = shl i64 %0, 32 ; <i64> [#uses=1]
- %2 = or i64 %0, %1 ; <i64> [#uses=1]
- store i64 %2, i64* %tmp1116.i, align 1
- store i32 %tmp3.i, i32* %tmp2.i, align 8
- store %tango.net.Socket.timeval* %.gc_mem8.i, %tango.net.Socket.timeval** %tmp6.i
- %tmp9 = add i32 %i.0, 1 ; <i32> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- %tmp12 = call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* byval %cc, i32 %type_arg) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- ret %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp12
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructCharsMFS5tango4text5Regex16__T9CharClassTwZ9CharClassE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"tango.text.Regex.CharClass!(dchar).CharClass"* nocapture byval %charclass_arg, i32 %type_arg) {
-entry:
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp.i, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 48 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i.i to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %1
- %tmp7.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp8.i = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp4 = getelementptr i8* %.newclass_gc_alloc.i, i32 20 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp4 to i32* ; <i32*> [#uses=1]
- store i32 %type_arg, i32* %2
- %3 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %charclass_arg to i64* ; <i64*> [#uses=1]
- %srcval = load i64* %3, align 1 ; <i64> [#uses=2]
- %tmp51 = lshr i64 %srcval, 32 ; <i64> [#uses=1]
- %tmp52 = trunc i64 %tmp51 to i32 ; <i32> [#uses=1]
- %tmp53 = insertvalue %"byte[]" undef, i32 %tmp52, 0 ; <%"byte[]"> [#uses=1]
- %tmp54 = trunc i64 %srcval to i32 ; <i32> [#uses=1]
- %tmp55 = inttoptr i32 %tmp54 to i8* ; <i8*> [#uses=1]
- %tmp56 = insertvalue %"byte[]" %tmp53, i8* %tmp55, 1 ; <%"byte[]"> [#uses=1]
- %tmp5.i = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), %"byte[]" %tmp56) ; <%"byte[]"> [#uses=2]
- %tmp6.i = extractvalue %"byte[]" %tmp5.i, 0 ; <i32> [#uses=1]
- %tmp8.i33 = extractvalue %"byte[]" %tmp5.i, 1 ; <i8*> [#uses=1]
- %tmp59 = zext i32 %tmp6.i to i64 ; <i64> [#uses=1]
- %tmp60 = shl i64 %tmp59, 32 ; <i64> [#uses=1]
- %tmp = ptrtoint i8* %tmp8.i33 to i32 ; <i32> [#uses=1]
- %tmp57 = zext i32 %tmp to i64 ; <i64> [#uses=1]
- %ins = or i64 %tmp60, %tmp57 ; <i64> [#uses=1]
- %tmp7 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=2]
- %tmp25.i = bitcast i8* %tmp7 to i64* ; <i64*> [#uses=1]
- store i64 %ins, i64* %tmp25.i, align 1
- %4 = bitcast i8* %tmp7 to %"tango.text.Regex.CharClass!(dchar).CharClass"* ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass8optimizeMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %4)
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %5 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %5
- %tmp10 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp10, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %6 = bitcast i8* %tmp10 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i39 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc.i40 = bitcast i8* %.newclass_gc_alloc.i39 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %vtbl.i41 = bitcast i8* %.newclass_gc_alloc.i39 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i41
- %monitor.i42 = getelementptr i8* %.newclass_gc_alloc.i39, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor.i42 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc.i39, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i40, %"tango.text.Regex.List!(TNFATransition).List"** %6
- %tmp7.i43 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp7.i43 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %9
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %8
- %tmp17.i = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %10 = bitcast i8* %tmp17.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc18.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %11 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %11
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %10
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %12 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc28.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %13 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %13
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %12
- %tmp18 = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp19 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp18 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp19, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp22 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp26 = bitcast i8* %.newclass_gc_alloc.i39 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp27 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp26 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp27, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp30 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i40, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA18constructCharClassMFE5tango4text5Regex16__T9PredicateTwZ9Predicate4TypeZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 %type_arg) {
-entry:
- %tmp.i419 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i359 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp.i213 = alloca i32, align 4 ; <i32*> [#uses=2]
- %tmp162 = alloca %"tango.text.Regex.CharClass!(dchar).CharClass", align 8 ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=5]
- %.newclass_gc_alloc.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=17]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp.i, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 48 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i.i to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %1
- %tmp7.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp8.i = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp2.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 8 ; <i32*> [#uses=13]
- %tmp3.i = load i32* %tmp2.i ; <i32> [#uses=2]
- store i32 %tmp3.i, i32* %tmp.i213
- %tmp6.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=8]
- %.len.i = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp8.i214 = icmp ult i32 %tmp3.i, %.len.i ; <i1> [#uses=1]
- br i1 %tmp8.i214, label %if.i, label %forcond
-
-if.i: ; preds = %entry
- %tmp10.i215 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i = load %"Act[]"* %tmp10.i215 ; <%"Act[]"> [#uses=1]
- %tmp12.i = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i, i32* %tmp.i213) ; <i32> [#uses=1]
- %phitmp470 = icmp eq i32 %tmp12.i, 94 ; <i1> [#uses=1]
- br i1 %phitmp470, label %if, label %forcond
-
-if: ; preds = %if.i
- %tmp1.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp4.i = load i32* %tmp2.i ; <i32> [#uses=2]
- store i32 %tmp4.i, i32* %tmp1.i
- %.len.i219 = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp11.i220 = icmp ult i32 %tmp4.i, %.len.i219 ; <i1> [#uses=1]
- br i1 %tmp11.i220, label %if.i222, label %forcond
-
-if.i222: ; preds = %if
- %tmp13.i221 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i = load %"Act[]"* %tmp13.i221 ; <%"Act[]"> [#uses=1]
- %tmp17.i = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i, i32* %tmp2.i) ; <i32> [#uses=0]
- br label %forcond
-
-forcond: ; preds = %if137, %default135, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347, %if19, %if.i222, %if, %if.i, %entry
- %negated.0 = phi i1 [ false, %if.i ], [ %negated.0, %default135 ], [ %negated.0, %if137 ], [ %negated.0, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347 ], [ %negated.0, %if19 ], [ true, %if ], [ true, %if.i222 ], [ false, %entry ] ; <i1> [#uses=5]
- %last.1 = phi i32 [ 65535, %if.i ], [ %last.1, %if19 ], [ %last.1, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347 ], [ %c.0, %if137 ], [ %c.0, %default135 ], [ 65535, %if ], [ 65535, %if.i222 ], [ 65535, %entry ] ; <i32> [#uses=9]
- %have_range_start.1 = phi i1 [ false, %if.i ], [ %have_range_start.1, %if19 ], [ false, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347 ], [ true, %if137 ], [ true, %default135 ], [ false, %if ], [ false, %if.i222 ], [ false, %entry ] ; <i1> [#uses=3]
- %first_char.0 = phi i1 [ true, %if.i ], [ false, %default135 ], [ false, %if137 ], [ false, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347 ], [ false, %if19 ], [ true, %if ], [ true, %if.i222 ], [ true, %entry ] ; <i1> [#uses=1]
- %.len.i434 = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp5.i435 = load i32* %tmp2.i ; <i32> [#uses=2]
- %tmp6.i436 = icmp ult i32 %tmp5.i435, %.len.i434 ; <i1> [#uses=1]
- br i1 %tmp6.i436, label %andand, label %endfor
-
-andand: ; preds = %forcond
- store i32 %tmp5.i435, i32* %tmp.i419
- %tmp10.i425 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i426 = load %"Act[]"* %tmp10.i425 ; <%"Act[]"> [#uses=1]
- %tmp12.i427 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i426, i32* %tmp.i419) ; <i32> [#uses=1]
- %phitmp469 = icmp eq i32 %tmp12.i427, 93 ; <i1> [#uses=1]
- br i1 %phitmp469, label %endfor, label %forbody
-
-forbody: ; preds = %andand
- %tmp1.i406 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=3]
- %tmp4.i408 = load i32* %tmp2.i ; <i32> [#uses=2]
- store i32 %tmp4.i408, i32* %tmp1.i406
- %.len.i410 = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp11.i411 = icmp ult i32 %tmp4.i408, %.len.i410 ; <i1> [#uses=1]
- br i1 %tmp11.i411, label %if.i415, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit417
-
-if.i415: ; preds = %forbody
- %tmp13.i412 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i413 = load %"Act[]"* %tmp13.i412 ; <%"Act[]"> [#uses=1]
- %tmp17.i414 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i413, i32* %tmp2.i) ; <i32> [#uses=1]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit417
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit417: ; preds = %if.i415, %forbody
- %tmp16418 = phi i32 [ %tmp17.i414, %if.i415 ], [ 0, %forbody ] ; <i32> [#uses=3]
- switch i32 %tmp16418, label %default135 [
- i32 45, label %case
- i32 92, label %case89
- ]
-
-case: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit417
- br i1 %first_char.0, label %if19, label %endif20
-
-if19: ; preds = %case
- %tmp2.i.i394 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp2.i.i394 to i32* ; <i32*> [#uses=2]
- %.len.i.i395 = load i32* %2 ; <i32> [#uses=3]
- %tmp3.i.i396 = add i32 %.len.i.i395, 1 ; <i32> [#uses=2]
- %tmp6.i.i397 = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp6.i.i397 to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i.i398 = load %tango.net.Socket.timeval** %3 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7.i.i399 = bitcast %tango.net.Socket.timeval* %.ptr.i.i398 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i.i400 = call i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), i32 %tmp3.i.i396, i32 %.len.i.i395, i8* %tmp7.i.i399) ; <i8*> [#uses=1]
- %.gc_mem8.i.i401 = bitcast i8* %.gc_mem.i.i400 to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- %tmp9.i.i402 = getelementptr %tango.net.Socket.timeval* %.gc_mem8.i.i401, i32 %.len.i.i395 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1015.i.i403 = bitcast %tango.net.Socket.timeval* %tmp9.i.i402 to i64* ; <i64*> [#uses=1]
- %4 = zext i32 %tmp16418 to i64 ; <i64> [#uses=2]
- %5 = shl i64 %4, 32 ; <i64> [#uses=1]
- %6 = or i64 %4, %5 ; <i64> [#uses=1]
- store i64 %6, i64* %tmp1015.i.i403, align 1
- store i32 %tmp3.i.i396, i32* %2
- store %tango.net.Socket.timeval* %.gc_mem8.i.i401, %tango.net.Socket.timeval** %3
- br label %forcond
-
-endif20: ; preds = %case
- br i1 %have_range_start.1, label %else, label %if25
-
-if25: ; preds = %endif20
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp27 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp27, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp32 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp33 = load %"Act[]"* %tmp32 ; <%"Act[]"> [#uses=1]
- %tmp34 = call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp33, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len = extractvalue %"byte[]" %tmp34, 0 ; <i32> [#uses=4]
- %tmp35 = add i32 %.len, 44 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp35, align 1 ; <i8*> [#uses=3]
- %.ptr = extractvalue %"byte[]" %tmp34, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([45 x i8]* @.str225, i32 0, i32 0), i32 44, i32 1)
- %tmp36 = getelementptr i8* %.nongc_mem, i32 44 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp36, i8* %.ptr, i32 %.len, i32 1)
- %tmp38 = add i32 %.len, 45 ; <i32> [#uses=2]
- %.nongc_mem471 = alloca i8, i32 %tmp38, align 1 ; <i8*> [#uses=3]
- call void @llvm.memcpy.i32(i8* %.nongc_mem471, i8* %.nongc_mem, i32 %tmp35, i32 1)
- %tmp41 = getelementptr i8* %.nongc_mem471, i32 %tmp35 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp41, align 1
- %tmp2.i379 = add i32 %.len, 53 ; <i32> [#uses=2]
- %.gc_mem.i380 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i379) ; <i8*> [#uses=3]
- %.gc_mem12.i381 = bitcast i8* %.gc_mem.i380 to i64* ; <i64*> [#uses=1]
- %tmp.i382 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i382, i64* %.gc_mem12.i381, align 1
- %tmp4.i383 = getelementptr i8* %.gc_mem.i380, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i383, i8* %.nongc_mem471, i32 %tmp38, i32 1)
- %tmp6.i384 = insertvalue %"byte[]" undef, i32 %tmp2.i379, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i385 = insertvalue %"byte[]" %tmp6.i384, i8* %.gc_mem.i380, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i386 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i385, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp45 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp45)
- unreachable
-
-else: ; preds = %endif20
- %.len.i374 = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp5.i375 = load i32* %tmp2.i ; <i32> [#uses=2]
- %tmp6.i376 = icmp ult i32 %tmp5.i375, %.len.i374 ; <i1> [#uses=1]
- br i1 %tmp6.i376, label %oror, label %if51
-
-oror: ; preds = %else
- store i32 %tmp5.i375, i32* %tmp.i359
- %tmp10.i365 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp11.i366 = load %"Act[]"* %tmp10.i365 ; <%"Act[]"> [#uses=1]
- %tmp12.i367 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp11.i366, i32* %tmp.i359) ; <i32> [#uses=1]
- %phitmp = icmp eq i32 %tmp12.i367, 93 ; <i1> [#uses=1]
- br i1 %phitmp, label %if51, label %else53
-
-if51: ; preds = %oror, %else
- %.newclass_gc_alloc54 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc55 = bitcast i8* %.newclass_gc_alloc54 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl56 = bitcast i8* %.newclass_gc_alloc54 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl56
- %monitor57 = getelementptr i8* %.newclass_gc_alloc54, i32 4 ; <i8*> [#uses=1]
- %8 = bitcast i8* %monitor57 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %8
- %tmp58 = getelementptr i8* %.newclass_gc_alloc54, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp58, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp63 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp64 = load %"Act[]"* %tmp63 ; <%"Act[]"> [#uses=1]
- %tmp65 = call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp64, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len66 = extractvalue %"byte[]" %tmp65, 0 ; <i32> [#uses=4]
- %tmp67 = add i32 %.len66, 42 ; <i32> [#uses=3]
- %.nongc_mem472 = alloca i8, i32 %tmp67, align 1 ; <i8*> [#uses=3]
- %.ptr69 = extractvalue %"byte[]" %tmp65, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.nongc_mem472, i8* getelementptr ([43 x i8]* @.str227, i32 0, i32 0), i32 42, i32 1)
- %tmp70 = getelementptr i8* %.nongc_mem472, i32 42 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp70, i8* %.ptr69, i32 %.len66, i32 1)
- %tmp72 = add i32 %.len66, 43 ; <i32> [#uses=2]
- %.nongc_mem473 = alloca i8, i32 %tmp72, align 1 ; <i8*> [#uses=3]
- call void @llvm.memcpy.i32(i8* %.nongc_mem473, i8* %.nongc_mem472, i32 %tmp67, i32 1)
- %tmp75 = getelementptr i8* %.nongc_mem473, i32 %tmp67 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp75, align 1
- %tmp2.i351 = add i32 %.len66, 51 ; <i32> [#uses=2]
- %.gc_mem.i352 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i351) ; <i8*> [#uses=3]
- %.gc_mem12.i353 = bitcast i8* %.gc_mem.i352 to i64* ; <i64*> [#uses=1]
- %tmp.i354 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i354, i64* %.gc_mem12.i353, align 1
- %tmp4.i355 = getelementptr i8* %.gc_mem.i352, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i355, i8* %.nongc_mem473, i32 %tmp72, i32 1)
- %tmp6.i356 = insertvalue %"byte[]" undef, i32 %tmp2.i351, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i357 = insertvalue %"byte[]" %tmp6.i356, i8* %.gc_mem.i352, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i358 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc55, %"byte[]" %tmp7.i357, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp79 = bitcast i8* %.newclass_gc_alloc54 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp79)
- unreachable
-
-else53: ; preds = %oror
- %tmp4.i338 = load i32* %tmp2.i ; <i32> [#uses=2]
- store i32 %tmp4.i338, i32* %tmp1.i406
- %.len.i340 = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp11.i341 = icmp ult i32 %tmp4.i338, %.len.i340 ; <i1> [#uses=1]
- br i1 %tmp11.i341, label %if.i345, label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347
-
-if.i345: ; preds = %else53
- %tmp13.i342 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i343 = load %"Act[]"* %tmp13.i342 ; <%"Act[]"> [#uses=1]
- %tmp17.i344 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i343, i32* %tmp2.i) ; <i32> [#uses=1]
- br label %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347
-
-_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit347: ; preds = %if.i345, %else53
- %tmp82348 = phi i32 [ %tmp17.i344, %if.i345 ], [ 0, %else53 ] ; <i32> [#uses=4]
- %tmp2.i.i333 = icmp ult i32 %tmp82348, %last.1 ; <i1> [#uses=1]
- %condtmp.0.i.i = select i1 %tmp2.i.i333, i32 %tmp82348, i32 %last.1 ; <i32> [#uses=1]
- %tmp2.i15.i = icmp ugt i32 %tmp82348, %last.1 ; <i1> [#uses=1]
- %condtmp.0.i16.i = select i1 %tmp2.i15.i, i32 %tmp82348, i32 %last.1 ; <i32> [#uses=1]
- %tmp2.i.i323 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %9 = bitcast i8* %tmp2.i.i323 to i32* ; <i32*> [#uses=2]
- %.len.i.i324 = load i32* %9 ; <i32> [#uses=3]
- %tmp3.i.i325 = add i32 %.len.i.i324, 1 ; <i32> [#uses=2]
- %tmp6.i.i326 = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %10 = bitcast i8* %tmp6.i.i326 to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i.i327 = load %tango.net.Socket.timeval** %10 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7.i.i328 = bitcast %tango.net.Socket.timeval* %.ptr.i.i327 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i.i329 = call i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), i32 %tmp3.i.i325, i32 %.len.i.i324, i8* %tmp7.i.i328) ; <i8*> [#uses=1]
- %.gc_mem8.i.i330 = bitcast i8* %.gc_mem.i.i329 to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- %tmp9.i.i331 = getelementptr %tango.net.Socket.timeval* %.gc_mem8.i.i330, i32 %.len.i.i324 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1015.i.i332 = bitcast %tango.net.Socket.timeval* %tmp9.i.i331 to i64* ; <i64*> [#uses=1]
- %11 = zext i32 %condtmp.0.i.i to i64 ; <i64> [#uses=1]
- %12 = shl i64 %11, 32 ; <i64> [#uses=1]
- %13 = zext i32 %condtmp.0.i16.i to i64 ; <i64> [#uses=1]
- %14 = or i64 %13, %12 ; <i64> [#uses=1]
- store i64 %14, i64* %tmp1015.i.i332, align 1
- store i32 %tmp3.i.i325, i32* %9
- store %tango.net.Socket.timeval* %.gc_mem8.i.i330, %tango.net.Socket.timeval** %10
- br label %forcond
-
-case89: ; preds = %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit417
- %.len.i313 = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp5.i314 = load i32* %tmp2.i ; <i32> [#uses=2]
- %tmp6.i315 = icmp ult i32 %tmp5.i314, %.len.i313 ; <i1> [#uses=1]
- br i1 %tmp6.i315, label %endif93, label %if92
-
-if92: ; preds = %case89
- %.newclass_gc_alloc94 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc95 = bitcast i8* %.newclass_gc_alloc94 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl96 = bitcast i8* %.newclass_gc_alloc94 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl96
- %monitor97 = getelementptr i8* %.newclass_gc_alloc94, i32 4 ; <i8*> [#uses=1]
- %15 = bitcast i8* %monitor97 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %15
- %tmp98 = getelementptr i8* %.newclass_gc_alloc94, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp98, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp103 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp104 = load %"Act[]"* %tmp103 ; <%"Act[]"> [#uses=1]
- %tmp105 = call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp104, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len106 = extractvalue %"byte[]" %tmp105, 0 ; <i32> [#uses=4]
- %tmp107 = add i32 %.len106, 32 ; <i32> [#uses=3]
- %.nongc_mem474 = alloca i8, i32 %tmp107, align 1 ; <i8*> [#uses=3]
- %.ptr109 = extractvalue %"byte[]" %tmp105, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.nongc_mem474, i8* getelementptr ([33 x i8]* @.str229, i32 0, i32 0), i32 32, i32 1)
- %tmp110 = getelementptr i8* %.nongc_mem474, i32 32 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp110, i8* %.ptr109, i32 %.len106, i32 1)
- %tmp112 = add i32 %.len106, 33 ; <i32> [#uses=2]
- %.nongc_mem475 = alloca i8, i32 %tmp112, align 1 ; <i8*> [#uses=3]
- call void @llvm.memcpy.i32(i8* %.nongc_mem475, i8* %.nongc_mem474, i32 %tmp107, i32 1)
- %tmp115 = getelementptr i8* %.nongc_mem475, i32 %tmp107 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp115, align 1
- %tmp2.i305 = add i32 %.len106, 41 ; <i32> [#uses=2]
- %.gc_mem.i = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i305) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i306 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i306, i64* %.gc_mem12.i, align 1
- %tmp4.i307 = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i307, i8* %.nongc_mem475, i32 %tmp112, i32 1)
- %tmp6.i308 = insertvalue %"byte[]" undef, i32 %tmp2.i305, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i309 = insertvalue %"byte[]" %tmp6.i308, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i310 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc95, %"byte[]" %tmp7.i309, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp119 = bitcast i8* %.newclass_gc_alloc94 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp119)
- unreachable
-
-endif93: ; preds = %case89
- store i32 %tmp5.i314, i32* %tmp1.i406
- %tmp13.i298 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i299 = load %"Act[]"* %tmp13.i298 ; <%"Act[]"> [#uses=1]
- %tmp17.i300 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i299, i32* %tmp2.i) ; <i32> [#uses=2]
- switch i32 %tmp17.i300, label %default135 [
- i32 116, label %case127
- i32 110, label %case129
- i32 114, label %case131
- ]
-
-case127: ; preds = %endif93
- br label %default135
-
-case129: ; preds = %endif93
- br label %default135
-
-case131: ; preds = %endif93
- br label %default135
-
-default135: ; preds = %case131, %case129, %case127, %endif93, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit417
- %c.0 = phi i32 [ %tmp16418, %_D5tango4text5Regex11__T4TNFATwZ4TNFA11readPatternMFZw.exit417 ], [ %tmp17.i300, %endif93 ], [ 13, %case131 ], [ 10, %case129 ], [ 9, %case127 ] ; <i32> [#uses=2]
- br i1 %have_range_start.1, label %if137, label %forcond
-
-if137: ; preds = %default135
- %tmp2.i.i280 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %16 = bitcast i8* %tmp2.i.i280 to i32* ; <i32*> [#uses=2]
- %.len.i.i281 = load i32* %16 ; <i32> [#uses=3]
- %tmp3.i.i282 = add i32 %.len.i.i281, 1 ; <i32> [#uses=2]
- %tmp6.i.i283 = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %17 = bitcast i8* %tmp6.i.i283 to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i.i284 = load %tango.net.Socket.timeval** %17 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7.i.i285 = bitcast %tango.net.Socket.timeval* %.ptr.i.i284 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i.i286 = call i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), i32 %tmp3.i.i282, i32 %.len.i.i281, i8* %tmp7.i.i285) ; <i8*> [#uses=1]
- %.gc_mem8.i.i287 = bitcast i8* %.gc_mem.i.i286 to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- %tmp9.i.i288 = getelementptr %tango.net.Socket.timeval* %.gc_mem8.i.i287, i32 %.len.i.i281 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1015.i.i289 = bitcast %tango.net.Socket.timeval* %tmp9.i.i288 to i64* ; <i64*> [#uses=1]
- %18 = zext i32 %last.1 to i64 ; <i64> [#uses=2]
- %19 = shl i64 %18, 32 ; <i64> [#uses=1]
- %20 = or i64 %18, %19 ; <i64> [#uses=1]
- store i64 %20, i64* %tmp1015.i.i289, align 1
- store i32 %tmp3.i.i282, i32* %16
- store %tango.net.Socket.timeval* %.gc_mem8.i.i287, %tango.net.Socket.timeval** %17
- br label %forcond
-
-endfor: ; preds = %andand, %forcond
- %.len.i270 = load i32* %tmp6.i ; <i32> [#uses=1]
- %tmp5.i271 = load i32* %tmp2.i ; <i32> [#uses=2]
- %tmp6.i272 = icmp ult i32 %tmp5.i271, %.len.i270 ; <i1> [#uses=1]
- br i1 %tmp6.i272, label %if146, label %endif147
-
-if146: ; preds = %endfor
- %tmp1.i256 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- store i32 %tmp5.i271, i32* %tmp1.i256
- %tmp13.i262 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp14.i263 = load %"Act[]"* %tmp13.i262 ; <%"Act[]"> [#uses=1]
- %tmp17.i264 = call fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]" %tmp14.i263, i32* %tmp2.i) ; <i32> [#uses=0]
- br label %endif147
-
-endif147: ; preds = %if146, %endfor
- %tmp151 = icmp eq i32 %last.1, 65535 ; <i1> [#uses=1]
- br i1 %tmp151, label %endif153, label %if152
-
-if152: ; preds = %endif147
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %21 = bitcast i8* %tmp2.i.i to i32* ; <i32*> [#uses=2]
- %.len.i.i250 = load i32* %21 ; <i32> [#uses=3]
- %tmp3.i.i251 = add i32 %.len.i.i250, 1 ; <i32> [#uses=2]
- %tmp6.i.i252 = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %22 = bitcast i8* %tmp6.i.i252 to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i.i253 = load %tango.net.Socket.timeval** %22 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7.i.i = bitcast %tango.net.Socket.timeval* %.ptr.i.i253 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i.i254 = call i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), i32 %tmp3.i.i251, i32 %.len.i.i250, i8* %tmp7.i.i) ; <i8*> [#uses=1]
- %.gc_mem8.i.i = bitcast i8* %.gc_mem.i.i254 to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- %tmp9.i.i255 = getelementptr %tango.net.Socket.timeval* %.gc_mem8.i.i, i32 %.len.i.i250 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1015.i.i = bitcast %tango.net.Socket.timeval* %tmp9.i.i255 to i64* ; <i64*> [#uses=1]
- %23 = zext i32 %last.1 to i64 ; <i64> [#uses=2]
- %24 = shl i64 %23, 32 ; <i64> [#uses=1]
- %25 = or i64 %23, %24 ; <i64> [#uses=1]
- store i64 %25, i64* %tmp1015.i.i, align 1
- store i32 %tmp3.i.i251, i32* %21
- store %tango.net.Socket.timeval* %.gc_mem8.i.i, %tango.net.Socket.timeval** %22
- br label %endif153
-
-endif153: ; preds = %if152, %endif147
- br i1 %negated.0, label %if159, label %else161
-
-if159: ; preds = %endif153
- %srcval = load i64* bitcast (%"tango.text.Regex.CharClass!(dchar).CharClass"* @_D5tango4text5Regex16__T9CharClassTwZ9CharClass8any_charS5tango4text5Regex16__T9CharClassTwZ9CharClass to i64*), align 4 ; <i64> [#uses=2]
- %tmp455 = lshr i64 %srcval, 32 ; <i64> [#uses=1]
- %tmp456 = trunc i64 %tmp455 to i32 ; <i32> [#uses=1]
- %tmp457 = insertvalue %"byte[]" undef, i32 %tmp456, 0 ; <%"byte[]"> [#uses=1]
- %tmp458 = trunc i64 %srcval to i32 ; <i32> [#uses=1]
- %tmp459 = inttoptr i32 %tmp458 to i8* ; <i8*> [#uses=1]
- %tmp460 = insertvalue %"byte[]" %tmp457, i8* %tmp459, 1 ; <%"byte[]"> [#uses=1]
- %tmp5.i = call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), %"byte[]" %tmp460) ; <%"byte[]"> [#uses=2]
- %tmp6.i243 = extractvalue %"byte[]" %tmp5.i, 0 ; <i32> [#uses=1]
- %tmp8.i244 = extractvalue %"byte[]" %tmp5.i, 1 ; <i8*> [#uses=1]
- %tmp439 = ptrtoint i8* %tmp8.i244 to i32 ; <i32> [#uses=1]
- %tmp164209 = bitcast %"tango.text.Regex.CharClass!(dchar).CharClass"* %tmp162 to i64* ; <i64*> [#uses=2]
- %26 = zext i32 %tmp6.i243 to i64 ; <i64> [#uses=1]
- %27 = shl i64 %26, 32 ; <i64> [#uses=1]
- %28 = zext i32 %tmp439 to i64 ; <i64> [#uses=1]
- %29 = or i64 %28, %27 ; <i64> [#uses=1]
- store i64 %29, i64* %tmp164209, align 8
- %tmp168451.0 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=2]
- %30 = bitcast i8* %tmp168451.0 to i32* ; <i32*> [#uses=1]
- %tmp452 = load i32* %30, align 1 ; <i32> [#uses=2]
- %tmp168451.1 = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %31 = bitcast i8* %tmp168451.1 to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=1]
- %tmp453 = load %tango.net.Socket.timeval** %31, align 1 ; <%tango.net.Socket.timeval*> [#uses=1]
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %tmp162)
- %tmp3.i.i = getelementptr %"tango.text.Regex.CharClass!(dchar).CharClass"* %tmp162, i32 0, i32 0, i32 0 ; <i32*> [#uses=2]
- %.len.i.i = load i32* %tmp3.i.i, align 8 ; <i32> [#uses=3]
- %tmp6.i.i = add i32 %.len.i.i, %tmp452 ; <i32> [#uses=2]
- %tmp9.i.i = getelementptr %"tango.text.Regex.CharClass!(dchar).CharClass"* %tmp162, i32 0, i32 0, i32 1 ; <%tango.net.Socket.timeval**> [#uses=2]
- %.ptr.i.i = load %tango.net.Socket.timeval** %tmp9.i.i ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp10.i.i = bitcast %tango.net.Socket.timeval* %.ptr.i.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i.i = call i8* @_d_arraysetlengthiT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AS5tango4text5Regex16__T9CharRangeTwZ9CharRange6__initZ to %object.TypeInfo*), i32 %tmp6.i.i, i32 %.len.i.i, i8* %tmp10.i.i) ; <i8*> [#uses=1]
- %.gc_mem11.i.i = bitcast i8* %.gc_mem.i.i to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=2]
- %tmp14.i.i = getelementptr %tango.net.Socket.timeval* %.gc_mem11.i.i, i32 %.len.i.i ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp15.i.i = shl i32 %tmp452, 3 ; <i32> [#uses=1]
- %tmp16.i.i = bitcast %tango.net.Socket.timeval* %tmp14.i.i to i8* ; <i8*> [#uses=1]
- %tmp17.i.i = bitcast %tango.net.Socket.timeval* %tmp453 to i8* ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp16.i.i, i8* %tmp17.i.i, i32 %tmp15.i.i, i32 1)
- store i32 %tmp6.i.i, i32* %tmp3.i.i, align 8
- store %tango.net.Socket.timeval* %.gc_mem11.i.i, %tango.net.Socket.timeval** %tmp9.i.i
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %tmp162)
- %tmp172207 = bitcast i8* %tmp168451.0 to i64* ; <i64*> [#uses=1]
- %tmp = load i64* %tmp164209, align 8 ; <i64> [#uses=1]
- store i64 %tmp, i64* %tmp172207, align 1
- br label %endif160
-
-else161: ; preds = %endif153
- %tmp1.i233 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %32 = bitcast i8* %tmp1.i233 to %"tango.text.Regex.CharClass!(dchar).CharClass"* ; <%"tango.text.Regex.CharClass!(dchar).CharClass"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass8optimizeMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"* %32)
- br label %endif160
-
-endif160: ; preds = %else161, %if159
- %tmp178 = getelementptr i8* %.newclass_gc_alloc.i, i32 20 ; <i8*> [#uses=1]
- %33 = bitcast i8* %tmp178 to i32* ; <i32*> [#uses=1]
- store i32 %type_arg, i32* %33
- %.newclass_gc_alloc180 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc181 = bitcast i8* %.newclass_gc_alloc180 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl182 = bitcast i8* %.newclass_gc_alloc180 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl182
- %monitor183 = getelementptr i8* %.newclass_gc_alloc180, i32 4 ; <i8*> [#uses=1]
- %34 = bitcast i8* %monitor183 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %34
- %tmp184 = getelementptr i8* %.newclass_gc_alloc180, i32 8 ; <i8*> [#uses=2]
- call void @llvm.memcpy.i32(i8* %tmp184, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %35 = bitcast i8* %tmp184 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i225 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc.i226 = bitcast i8* %.newclass_gc_alloc.i225 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %vtbl.i227 = bitcast i8* %.newclass_gc_alloc.i225 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i227
- %monitor.i228 = getelementptr i8* %.newclass_gc_alloc.i225, i32 4 ; <i8*> [#uses=1]
- %36 = bitcast i8* %monitor.i228 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %36
- %tmp2.i229 = getelementptr i8* %.newclass_gc_alloc.i225, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp2.i229, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i226, %"tango.text.Regex.List!(TNFATransition).List"** %35
- %tmp7.i230 = getelementptr i8* %.newclass_gc_alloc180, i32 12 ; <i8*> [#uses=1]
- %37 = bitcast i8* %tmp7.i230 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %38 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %38
- %tmp12.i231 = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp12.i231, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %37
- %tmp17.i232 = getelementptr i8* %.newclass_gc_alloc180, i32 16 ; <i8*> [#uses=1]
- %39 = bitcast i8* %tmp17.i232 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc18.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %40 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %40
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %39
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc180, i32 20 ; <i8*> [#uses=1]
- %41 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc28.i = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %42 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %42
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %41
- %tmp192 = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp193 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp192 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp193, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp196 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp200 = bitcast i8* %.newclass_gc_alloc.i225 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp201 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp200 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp201, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp204 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i226, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc181
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructBracketMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListkZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 %tag_arg) {
-entry:
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=3]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp.i = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp1.i.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i
- %monitor.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i, %"tango.text.Regex.List!(TNFATransition).List"** %1
- %tmp6.i = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp6.i to i32* ; <i32*> [#uses=1]
- %tmp9.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=4]
- %.len.i = load i32* %tmp9.i ; <i32> [#uses=4]
- store i32 %.len.i, i32* %3
- %tmp14.i = add i32 %.len.i, 1 ; <i32> [#uses=2]
- %tmp17.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=4]
- %.ptr.i = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, i32 %.len.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i
- store i32 %tmp14.i, i32* %tmp9.i
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i
- %.newclass_gc_alloc.i84 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i85 = bitcast i8* %.newclass_gc_alloc.i84 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
- %vtbl.i86 = bitcast i8* %.newclass_gc_alloc.i84 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i86
- %monitor.i87 = getelementptr i8* %.newclass_gc_alloc.i84, i32 4 ; <i8*> [#uses=1]
- %4 = bitcast i8* %monitor.i87 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %4
- %tmp.i88 = getelementptr i8* %.newclass_gc_alloc.i84, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i88, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i89 = getelementptr i8* %.newclass_gc_alloc.i84, i32 16 ; <i8*> [#uses=1]
- %5 = bitcast i8* %tmp1.i.i89 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc.i.i90 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i91 = bitcast i8* %.newclass_gc_alloc.i.i90 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i92 = bitcast i8* %.newclass_gc_alloc.i.i90 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i92
- %monitor.i.i93 = getelementptr i8* %.newclass_gc_alloc.i.i90, i32 4 ; <i8*> [#uses=1]
- %6 = bitcast i8* %monitor.i.i93 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %6
- %tmp2.i.i94 = getelementptr i8* %.newclass_gc_alloc.i.i90, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i94, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i91, %"tango.text.Regex.List!(TNFATransition).List"** %5
- %tmp6.i95 = getelementptr i8* %.newclass_gc_alloc.i84, i32 12 ; <i8*> [#uses=1]
- %7 = bitcast i8* %tmp6.i95 to i32* ; <i32*> [#uses=1]
- %.len.i97 = load i32* %tmp9.i ; <i32> [#uses=4]
- store i32 %.len.i97, i32* %7
- %tmp14.i98 = add i32 %.len.i97, 1 ; <i32> [#uses=2]
- %.ptr.i100 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i101 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i100 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i102 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i98, i32 %.len.i97, i8* %tmp18.i101) ; <i8*> [#uses=1]
- %.gc_mem19.i103 = bitcast i8* %.gc_mem.i102 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i104 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i103, i32 %.len.i97 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i85, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i104
- store i32 %tmp14.i98, i32* %tmp9.i
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i103, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i
- %tmp6 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=2]
- %tmp7 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp6 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp8 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp7, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp8 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
- %tmp10 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp9, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp11 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp10 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"frags.tail.value.setEntry@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp11, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %frags.tail.value.setEntry = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"frags.tail.value.setEntry@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %frags.tail.value.setEntry(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp9, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i)
- %tmp16 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp6 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp17 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp16, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp18 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp17 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
- %tmp19 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp18, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp20 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp19 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"frags.tail.value.setExit@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp20, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %frags.tail.value.setExit = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"frags.tail.value.setExit@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %frags.tail.value.setExit(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp18, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i85)
- %.newclass_gc_alloc.i105 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc.i106 = bitcast i8* %.newclass_gc_alloc.i105 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=2]
- %vtbl.i107 = bitcast i8* %.newclass_gc_alloc.i105 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i107
- %monitor.i108 = getelementptr i8* %.newclass_gc_alloc.i105, i32 4 ; <i8*> [#uses=1]
- %8 = bitcast i8* %monitor.i108 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %8
- %tmp.i109 = getelementptr i8* %.newclass_gc_alloc.i105, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp.i109, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i110 = getelementptr i8* %.newclass_gc_alloc.i105, i32 48 ; <i8*> [#uses=1]
- %9 = bitcast i8* %tmp1.i.i110 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %9
- %tmp7.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %tmp8.i = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i111 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i111 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i106) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc.i112 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc.i113 = bitcast i8* %.newclass_gc_alloc.i112 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i114 = bitcast i8* %.newclass_gc_alloc.i112 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i114
- %monitor.i115 = getelementptr i8* %.newclass_gc_alloc.i112, i32 4 ; <i8*> [#uses=1]
- %10 = bitcast i8* %monitor.i115 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %10
- %tmp.i116 = getelementptr i8* %.newclass_gc_alloc.i112, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i116, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i117 = getelementptr i8* %.newclass_gc_alloc.i112, i32 48 ; <i8*> [#uses=1]
- %11 = bitcast i8* %tmp1.i.i117 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %11
- %tmp8.i119 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i120 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i119, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i121 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i120 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i122" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i121, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i123 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i122", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i124 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i123(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i119, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i113) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp29 = getelementptr i8* %.newclass_gc_alloc.i105, i32 20 ; <i8*> [#uses=1]
- %12 = bitcast i8* %tmp29 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %12
- %tmp32 = getelementptr i8* %.newclass_gc_alloc.i112, i32 20 ; <i8*> [#uses=1]
- %13 = bitcast i8* %tmp32 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %13
- %tmp34 = icmp eq i32 %tag_arg, 0 ; <i1> [#uses=1]
- br i1 %tmp34, label %endif, label %if
-
-if: ; preds = %entry
- %tmp36 = getelementptr i8* %.newclass_gc_alloc.i105, i32 44 ; <i8*> [#uses=1]
- %14 = bitcast i8* %tmp36 to i32* ; <i32*> [#uses=1]
- %tmp38 = add i32 %tag_arg, 1 ; <i32> [#uses=1]
- store i32 %tag_arg, i32* %14
- %tmp40 = getelementptr i8* %.newclass_gc_alloc.i112, i32 44 ; <i8*> [#uses=1]
- %15 = bitcast i8* %tmp40 to i32* ; <i32*> [#uses=1]
- store i32 %tmp38, i32* %15
- br label %endif
-
-endif: ; preds = %if, %entry
- %16 = bitcast i8* %tmp.i109 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %16
- %tmp47 = load %"tango.text.Regex.List!(TNFATransition).List"** %5 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp47, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp49 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp48 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"exit.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp49, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %exit.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"exit.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp52 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %exit.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp47, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i113) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %17 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %17
- %tmp53 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp53, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %18 = bitcast i8* %tmp53 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc.i125 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i126 = bitcast i8* %.newclass_gc_alloc.i125 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i127 = bitcast i8* %.newclass_gc_alloc.i125 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i127
- %monitor.i128 = getelementptr i8* %.newclass_gc_alloc.i125, i32 4 ; <i8*> [#uses=1]
- %19 = bitcast i8* %monitor.i128 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %19
- %tmp2.i = getelementptr i8* %.newclass_gc_alloc.i125, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i126, %"tango.text.Regex.List!(TNFATransition).List"** %18
- %tmp7.i129 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %20 = bitcast i8* %tmp7.i129 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %21 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %21
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %20
- %tmp17.i130 = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %22 = bitcast i8* %tmp17.i130 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc18.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %23 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %23
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %22
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %24 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc28.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %25 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %25
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %24
- %tmp60 = load %"tango.text.Regex.List!(TNFATransition).List"** %18 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp61 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp60, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp62 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp61 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp62, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp65 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp60, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i106) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp68 = load %"tango.text.Regex.List!(TNFATransition).List"** %24 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp69 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp68, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp70 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp69 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp70, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp73 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp68, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i113) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp75 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=2]
- %tmp76 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp75 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp76, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp80 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp75 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp80, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp83 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructOneMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 %prioClass_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=3]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %frags.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp5 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp5, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp11 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp11 ; <i32*> [#uses=1]
- %tmp13 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp14 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp14 ; <i32> [#uses=1]
- %tmp15 = load i32* %tmp13 ; <i32> [#uses=2]
- %tmp16 = getelementptr i32* %.ptr, i32 %tmp15 ; <i32*> [#uses=1]
- %tmp17 = sub i32 %.len, %tmp15 ; <i32> [#uses=1]
- %tmp18 = insertvalue %"Act[]" undef, i32 %tmp17, 0 ; <%"Act[]"> [#uses=1]
- %tmp19 = insertvalue %"Act[]" %tmp18, i32* %tmp16, 1 ; <%"Act[]"> [#uses=1]
- %tmp20 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp19, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len21 = extractvalue %"byte[]" %tmp20, 0 ; <i32> [#uses=4]
- %tmp22 = add i32 %.len21, 28 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp22, align 1 ; <i8*> [#uses=3]
- %.ptr23 = extractvalue %"byte[]" %tmp20, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([29 x i8]* @.str231, i32 0, i32 0), i32 28, i32 1)
- %tmp24 = getelementptr i8* %.nongc_mem, i32 28 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* %.ptr23, i32 %.len21, i32 1)
- %tmp26 = add i32 %.len21, 29 ; <i32> [#uses=2]
- %.nongc_mem171 = alloca i8, i32 %tmp26, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem171, i8* %.nongc_mem, i32 %tmp22, i32 1)
- %tmp29 = getelementptr i8* %.nongc_mem171, i32 %tmp22 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp29, align 1
- %tmp2.i = add i32 %.len21, 37 ; <i32> [#uses=2]
- %.gc_mem.i = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i, i64* %.gc_mem12.i, align 1
- %tmp4.i = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i, i8* %.nongc_mem171, i32 %tmp26, i32 1)
- %tmp6.i = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i = insertvalue %"byte[]" %tmp6.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp33 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp33)
- unreachable
-
-endif: ; preds = %entry
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp.i139 = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i139, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 48 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp1.i.i to i32* ; <i32*> [#uses=1]
- store i32 %prioClass_arg, i32* %2
- %tmp7.i140 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %tmp8.i141 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i140 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i141, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i141, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc.i142 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i143 = bitcast i8* %.newclass_gc_alloc.i142 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i144 = bitcast i8* %.newclass_gc_alloc.i142 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i144
- %monitor.i145 = getelementptr i8* %.newclass_gc_alloc.i142, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor.i145 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp.i146 = getelementptr i8* %.newclass_gc_alloc.i142, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i146, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i147 = getelementptr i8* %.newclass_gc_alloc.i142, i32 48 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp1.i.i147 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %4
- %tmp8.i149 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i140 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i150 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i149, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i151 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i150 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i152" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i151, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i153 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i152", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i154 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i153(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i149, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i143) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp41 = getelementptr i8* %.newclass_gc_alloc.i, i32 20 ; <i8*> [#uses=1]
- %5 = bitcast i8* %tmp41 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %5
- %tmp44 = getelementptr i8* %.newclass_gc_alloc.i142, i32 20 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp44 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %6
- %.newclass_gc_alloc.i155 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i156 = bitcast i8* %.newclass_gc_alloc.i155 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
- %vtbl.i157 = bitcast i8* %.newclass_gc_alloc.i155 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i157
- %monitor.i158 = getelementptr i8* %.newclass_gc_alloc.i155, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor.i158 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp.i159 = getelementptr i8* %.newclass_gc_alloc.i155, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i159, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i160 = getelementptr i8* %.newclass_gc_alloc.i155, i32 16 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp1.i.i160 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc.i.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i
- %monitor.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %monitor.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %9
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i, %"tango.text.Regex.List!(TNFATransition).List"** %8
- %tmp6.i161 = getelementptr i8* %.newclass_gc_alloc.i155, i32 12 ; <i8*> [#uses=1]
- %10 = bitcast i8* %tmp6.i161 to i32* ; <i32*> [#uses=1]
- %tmp9.i162 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=2]
- %.len.i = load i32* %tmp9.i162 ; <i32> [#uses=4]
- store i32 %.len.i, i32* %10
- %tmp14.i = add i32 %.len.i, 1 ; <i32> [#uses=2]
- %tmp17.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr.i = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i163 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i163 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, i32 %.len.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i156, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i
- store i32 %tmp14.i, i32* %tmp9.i162
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=3]
- %tmp49 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp48 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp50 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp49, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp51 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp50 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
- %tmp52 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp51, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp53 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp52 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"frags.tail.value.setExit@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp53, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %frags.tail.value.setExit = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"frags.tail.value.setExit@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %frags.tail.value.setExit(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp51, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i156)
- %tmp58 = load %"tango.text.Regex.List!(TNFATransition).List"** %8 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp59 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp58, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp60 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp59 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"s.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp60, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %s.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"s.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp63 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %s.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp58, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp66 = load %"tango.text.Regex.List!(TNFATransition).List"** %8 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp67 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp66, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp68 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp67 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"s.transitions.opCatAssign@vtbl69" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp68, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %s.transitions.opCatAssign71 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"s.transitions.opCatAssign@vtbl69", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp73 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %s.transitions.opCatAssign71(%"tango.text.Regex.List!(TNFATransition).List"* %tmp66, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i143) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc74 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc75 = bitcast i8* %.newclass_gc_alloc74 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl76 = bitcast i8* %.newclass_gc_alloc74 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl76
- %monitor77 = getelementptr i8* %.newclass_gc_alloc74, i32 4 ; <i8*> [#uses=1]
- %11 = bitcast i8* %monitor77 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %11
- %tmp78 = getelementptr i8* %.newclass_gc_alloc74, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp78, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %12 = bitcast i8* %tmp78 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc.i164 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i165 = bitcast i8* %.newclass_gc_alloc.i164 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i166 = bitcast i8* %.newclass_gc_alloc.i164 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i166
- %monitor.i167 = getelementptr i8* %.newclass_gc_alloc.i164, i32 4 ; <i8*> [#uses=1]
- %13 = bitcast i8* %monitor.i167 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %13
- %tmp2.i168 = getelementptr i8* %.newclass_gc_alloc.i164, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i168, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i165, %"tango.text.Regex.List!(TNFATransition).List"** %12
- %tmp7.i169 = getelementptr i8* %.newclass_gc_alloc74, i32 12 ; <i8*> [#uses=1]
- %14 = bitcast i8* %tmp7.i169 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %15 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %15
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %14
- %tmp17.i170 = getelementptr i8* %.newclass_gc_alloc74, i32 16 ; <i8*> [#uses=1]
- %16 = bitcast i8* %tmp17.i170 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc18.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %17 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %17
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %16
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc74, i32 20 ; <i8*> [#uses=1]
- %18 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc28.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %19 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %19
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %18
- %tmp85 = load %"tango.text.Regex.List!(TNFATransition).List"** %12 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp86 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp85, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp87 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp86 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp87, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp91 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp48 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp92 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp91, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp93 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp92 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp94 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp93, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp95 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp94 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp96 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp85, %"tango.text.Regex.List!(TNFATransition).List"* %tmp95) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp99 = load %"tango.text.Regex.List!(TNFATransition).List"** %16 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp100 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp99, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp101 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp100 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entry_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp101, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entry_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entry_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp105 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp48 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp106 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp105, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp107 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp106 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp108 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp107, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp109 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp108 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp110 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entry_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp99, %"tango.text.Regex.List!(TNFATransition).List"* %tmp109) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp113 = load %"tango.text.Regex.List!(TNFATransition).List"** %16 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp114 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp113, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp115 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp114 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entry_state.opCatAssign@vtbl116" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp115, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entry_state.opCatAssign118 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entry_state.opCatAssign@vtbl116", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp120 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entry_state.opCatAssign118(%"tango.text.Regex.List!(TNFATransition).List"* %tmp113, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp123 = load %"tango.text.Regex.List!(TNFATransition).List"** %18 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp124 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp123, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp125 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp124 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp125, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp128 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp123, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i143) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp131 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp131, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp135 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp135, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp138 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc75) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA17constructZeroMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 %prioClass_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=3]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %frags.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp5 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp5, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp11 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp11 ; <i32*> [#uses=1]
- %tmp13 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp14 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp14 ; <i32> [#uses=1]
- %tmp15 = load i32* %tmp13 ; <i32> [#uses=2]
- %tmp16 = getelementptr i32* %.ptr, i32 %tmp15 ; <i32*> [#uses=1]
- %tmp17 = sub i32 %.len, %tmp15 ; <i32> [#uses=1]
- %tmp18 = insertvalue %"Act[]" undef, i32 %tmp17, 0 ; <%"Act[]"> [#uses=1]
- %tmp19 = insertvalue %"Act[]" %tmp18, i32* %tmp16, 1 ; <%"Act[]"> [#uses=1]
- %tmp20 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp19, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len21 = extractvalue %"byte[]" %tmp20, 0 ; <i32> [#uses=4]
- %tmp22 = add i32 %.len21, 28 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp22, align 1 ; <i8*> [#uses=3]
- %.ptr23 = extractvalue %"byte[]" %tmp20, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([29 x i8]* @.str233, i32 0, i32 0), i32 28, i32 1)
- %tmp24 = getelementptr i8* %.nongc_mem, i32 28 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* %.ptr23, i32 %.len21, i32 1)
- %tmp26 = add i32 %.len21, 29 ; <i32> [#uses=2]
- %.nongc_mem204 = alloca i8, i32 %tmp26, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem204, i8* %.nongc_mem, i32 %tmp22, i32 1)
- %tmp29 = getelementptr i8* %.nongc_mem204, i32 %tmp22 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp29, align 1
- %tmp2.i = add i32 %.len21, 37 ; <i32> [#uses=2]
- %.gc_mem.i = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i, i64* %.gc_mem12.i, align 1
- %tmp4.i = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i, i8* %.nongc_mem204, i32 %tmp26, i32 1)
- %tmp6.i = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i = insertvalue %"byte[]" %tmp6.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp33 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp33)
- unreachable
-
-endif: ; preds = %entry
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=2]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp.i138 = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp.i138, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 48 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp1.i.i to i32* ; <i32*> [#uses=1]
- store i32 %prioClass_arg, i32* %2
- %tmp7.i139 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %tmp8.i140 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i139 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i140, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i140, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc.i141 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i142 = bitcast i8* %.newclass_gc_alloc.i141 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i143 = bitcast i8* %.newclass_gc_alloc.i141 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i143
- %monitor.i144 = getelementptr i8* %.newclass_gc_alloc.i141, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor.i144 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp.i145 = getelementptr i8* %.newclass_gc_alloc.i141, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i145, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i146 = getelementptr i8* %.newclass_gc_alloc.i141, i32 48 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp1.i.i146 to i32* ; <i32*> [#uses=1]
- store i32 %prioClass_arg, i32* %4
- %tmp8.i148 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i139 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i149 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i148, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i150 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i149 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i151" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i150, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i152 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i151", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i153 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i152(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i148, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i142) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc.i154 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i155 = bitcast i8* %.newclass_gc_alloc.i154 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i156 = bitcast i8* %.newclass_gc_alloc.i154 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i156
- %monitor.i157 = getelementptr i8* %.newclass_gc_alloc.i154, i32 4 ; <i8*> [#uses=1]
- %5 = bitcast i8* %monitor.i157 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %5
- %tmp.i158 = getelementptr i8* %.newclass_gc_alloc.i154, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i158, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i159 = getelementptr i8* %.newclass_gc_alloc.i154, i32 48 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp1.i.i159 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %6
- %tmp8.i161 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i139 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i162 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i161, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i163 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i162 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i164" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i163, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i165 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i164", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i166 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i165(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i161, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i155) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp44 = getelementptr i8* %.newclass_gc_alloc.i154, i32 20 ; <i8*> [#uses=1]
- %7 = bitcast i8* %tmp44 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %7
- %tmp47 = getelementptr i8* %.newclass_gc_alloc.i141, i32 20 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp47 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %8
- %tmp50 = getelementptr i8* %.newclass_gc_alloc.i, i32 20 ; <i8*> [#uses=1]
- %9 = bitcast i8* %tmp50 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %9
- %.newclass_gc_alloc.i167 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i168 = bitcast i8* %.newclass_gc_alloc.i167 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=3]
- %vtbl.i169 = bitcast i8* %.newclass_gc_alloc.i167 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i169
- %monitor.i170 = getelementptr i8* %.newclass_gc_alloc.i167, i32 4 ; <i8*> [#uses=1]
- %10 = bitcast i8* %monitor.i170 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %10
- %tmp.i171 = getelementptr i8* %.newclass_gc_alloc.i167, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i171, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i172 = getelementptr i8* %.newclass_gc_alloc.i167, i32 16 ; <i8*> [#uses=1]
- %11 = bitcast i8* %tmp1.i.i172 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i
- %monitor.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 4 ; <i8*> [#uses=1]
- %12 = bitcast i8* %monitor.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %12
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i, %"tango.text.Regex.List!(TNFATransition).List"** %11
- %tmp6.i173 = getelementptr i8* %.newclass_gc_alloc.i167, i32 12 ; <i8*> [#uses=1]
- %13 = bitcast i8* %tmp6.i173 to i32* ; <i32*> [#uses=1]
- %tmp9.i174 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=4]
- %.len.i = load i32* %tmp9.i174 ; <i32> [#uses=4]
- store i32 %.len.i, i32* %13
- %tmp14.i = add i32 %.len.i, 1 ; <i32> [#uses=2]
- %tmp17.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=4]
- %.ptr.i = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i175 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i175 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, i32 %.len.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i168, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i
- store i32 %tmp14.i, i32* %tmp9.i174
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i
- %.newclass_gc_alloc.i176 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i177 = bitcast i8* %.newclass_gc_alloc.i176 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=2]
- %vtbl.i178 = bitcast i8* %.newclass_gc_alloc.i176 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i178
- %monitor.i179 = getelementptr i8* %.newclass_gc_alloc.i176, i32 4 ; <i8*> [#uses=1]
- %14 = bitcast i8* %monitor.i179 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %14
- %tmp.i180 = getelementptr i8* %.newclass_gc_alloc.i176, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i180, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i181 = getelementptr i8* %.newclass_gc_alloc.i176, i32 16 ; <i8*> [#uses=1]
- %15 = bitcast i8* %tmp1.i.i181 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc.i.i182 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i183 = bitcast i8* %.newclass_gc_alloc.i.i182 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i184 = bitcast i8* %.newclass_gc_alloc.i.i182 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i184
- %monitor.i.i185 = getelementptr i8* %.newclass_gc_alloc.i.i182, i32 4 ; <i8*> [#uses=1]
- %16 = bitcast i8* %monitor.i.i185 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %16
- %tmp2.i.i186 = getelementptr i8* %.newclass_gc_alloc.i.i182, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i186, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i183, %"tango.text.Regex.List!(TNFATransition).List"** %15
- %tmp6.i187 = getelementptr i8* %.newclass_gc_alloc.i176, i32 12 ; <i8*> [#uses=1]
- %17 = bitcast i8* %tmp6.i187 to i32* ; <i32*> [#uses=1]
- %.len.i189 = load i32* %tmp9.i174 ; <i32> [#uses=4]
- store i32 %.len.i189, i32* %17
- %tmp14.i190 = add i32 %.len.i189, 1 ; <i32> [#uses=2]
- %.ptr.i192 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i193 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i192 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i194 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i190, i32 %.len.i189, i8* %tmp18.i193) ; <i8*> [#uses=1]
- %.gc_mem19.i195 = bitcast i8* %.gc_mem.i194 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i196 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i195, i32 %.len.i189 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i177, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i196
- store i32 %tmp14.i190, i32* %tmp9.i174
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i195, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i
- %tmp57 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=2]
- %tmp58 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp57 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp59 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp58, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp60 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp59 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
- %tmp61 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp60, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp62 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp61 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"frags.tail.value.setEntry@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp62, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %frags.tail.value.setEntry = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"frags.tail.value.setEntry@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %frags.tail.value.setEntry(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp60, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i168)
- %tmp67 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp57 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp68 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp67, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp69 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp68 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
- %tmp70 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp69, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp71 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp70 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"frags.tail.value.setExit@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp71, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %frags.tail.value.setExit = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"frags.tail.value.setExit@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %frags.tail.value.setExit(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp69, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i177)
- %tmp76 = load %"tango.text.Regex.List!(TNFATransition).List"** %15 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp77 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp76, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp78 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp77 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"exit.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp78, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %exit.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"exit.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp81 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %exit.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp76, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i142) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %18 = bitcast i8* %tmp.i138 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i168, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %18
- %.newclass_gc_alloc85 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc86 = bitcast i8* %.newclass_gc_alloc85 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl87 = bitcast i8* %.newclass_gc_alloc85 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl87
- %monitor88 = getelementptr i8* %.newclass_gc_alloc85, i32 4 ; <i8*> [#uses=1]
- %19 = bitcast i8* %monitor88 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %19
- %tmp89 = getelementptr i8* %.newclass_gc_alloc85, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp89, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %20 = bitcast i8* %tmp89 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc.i197 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i198 = bitcast i8* %.newclass_gc_alloc.i197 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i199 = bitcast i8* %.newclass_gc_alloc.i197 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i199
- %monitor.i200 = getelementptr i8* %.newclass_gc_alloc.i197, i32 4 ; <i8*> [#uses=1]
- %21 = bitcast i8* %monitor.i200 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %21
- %tmp2.i201 = getelementptr i8* %.newclass_gc_alloc.i197, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i201, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i198, %"tango.text.Regex.List!(TNFATransition).List"** %20
- %tmp7.i202 = getelementptr i8* %.newclass_gc_alloc85, i32 12 ; <i8*> [#uses=1]
- %22 = bitcast i8* %tmp7.i202 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %23 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %23
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %22
- %tmp17.i203 = getelementptr i8* %.newclass_gc_alloc85, i32 16 ; <i8*> [#uses=1]
- %24 = bitcast i8* %tmp17.i203 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc18.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %25 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %25
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %24
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc85, i32 20 ; <i8*> [#uses=1]
- %26 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc28.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %27 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %27
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %26
- %tmp96 = load %"tango.text.Regex.List!(TNFATransition).List"** %20 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp97 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp96, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp98 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp97 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp98, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp101 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp96, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i155) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp104 = load %"tango.text.Regex.List!(TNFATransition).List"** %20 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp105 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp104, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp106 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp105 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl107" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp106, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign109 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl107", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp111 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign109(%"tango.text.Regex.List!(TNFATransition).List"* %tmp104, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp114 = load %"tango.text.Regex.List!(TNFATransition).List"** %26 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp115 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp114, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp116 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp115 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp116, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp119 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp114, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i155) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp122 = load %"tango.text.Regex.List!(TNFATransition).List"** %24 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp123 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp122, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp124 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp123 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entry_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp124, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entry_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entry_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp127 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entry_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp122, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i142) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp130 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp130, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp134 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp134, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp137 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc86) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructZeroOneMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 %prioClass_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=3]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %frags.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp5 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp5, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp11 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp11 ; <i32*> [#uses=1]
- %tmp13 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp14 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp14 ; <i32> [#uses=1]
- %tmp15 = load i32* %tmp13 ; <i32> [#uses=2]
- %tmp16 = getelementptr i32* %.ptr, i32 %tmp15 ; <i32*> [#uses=1]
- %tmp17 = sub i32 %.len, %tmp15 ; <i32> [#uses=1]
- %tmp18 = insertvalue %"Act[]" undef, i32 %tmp17, 0 ; <%"Act[]"> [#uses=1]
- %tmp19 = insertvalue %"Act[]" %tmp18, i32* %tmp16, 1 ; <%"Act[]"> [#uses=1]
- %tmp20 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp19, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len21 = extractvalue %"byte[]" %tmp20, 0 ; <i32> [#uses=4]
- %tmp22 = add i32 %.len21, 28 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp22, align 1 ; <i8*> [#uses=3]
- %.ptr23 = extractvalue %"byte[]" %tmp20, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([29 x i8]* @.str235, i32 0, i32 0), i32 28, i32 1)
- %tmp24 = getelementptr i8* %.nongc_mem, i32 28 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* %.ptr23, i32 %.len21, i32 1)
- %tmp26 = add i32 %.len21, 29 ; <i32> [#uses=2]
- %.nongc_mem166 = alloca i8, i32 %tmp26, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem166, i8* %.nongc_mem, i32 %tmp22, i32 1)
- %tmp29 = getelementptr i8* %.nongc_mem166, i32 %tmp22 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp29, align 1
- %tmp2.i = add i32 %.len21, 37 ; <i32> [#uses=2]
- %.gc_mem.i = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i, i64* %.gc_mem12.i, align 1
- %tmp4.i = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i, i8* %.nongc_mem166, i32 %tmp26, i32 1)
- %tmp6.i = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i = insertvalue %"byte[]" %tmp6.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp33 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp33)
- unreachable
-
-endif: ; preds = %entry
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=2]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp.i134 = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp.i134, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 48 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp1.i.i to i32* ; <i32*> [#uses=1]
- store i32 %prioClass_arg, i32* %2
- %tmp7.i135 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %tmp8.i136 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i135 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i136, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i136, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc.i137 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i138 = bitcast i8* %.newclass_gc_alloc.i137 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i139 = bitcast i8* %.newclass_gc_alloc.i137 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i139
- %monitor.i140 = getelementptr i8* %.newclass_gc_alloc.i137, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor.i140 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp.i141 = getelementptr i8* %.newclass_gc_alloc.i137, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i141, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i142 = getelementptr i8* %.newclass_gc_alloc.i137, i32 48 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp1.i.i142 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %4
- %tmp8.i144 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i135 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i145 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i144, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i146 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i145 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i147" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i146, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i148 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i147", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i149 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i148(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i144, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i138) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp41 = getelementptr i8* %.newclass_gc_alloc.i, i32 20 ; <i8*> [#uses=1]
- %5 = bitcast i8* %tmp41 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %5
- %tmp44 = getelementptr i8* %.newclass_gc_alloc.i137, i32 20 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp44 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %6
- %.newclass_gc_alloc.i150 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i151 = bitcast i8* %.newclass_gc_alloc.i150 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=3]
- %vtbl.i152 = bitcast i8* %.newclass_gc_alloc.i150 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i152
- %monitor.i153 = getelementptr i8* %.newclass_gc_alloc.i150, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor.i153 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp.i154 = getelementptr i8* %.newclass_gc_alloc.i150, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i154, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i155 = getelementptr i8* %.newclass_gc_alloc.i150, i32 16 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp1.i.i155 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i
- %monitor.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %monitor.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %9
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i, %"tango.text.Regex.List!(TNFATransition).List"** %8
- %tmp6.i156 = getelementptr i8* %.newclass_gc_alloc.i150, i32 12 ; <i8*> [#uses=1]
- %10 = bitcast i8* %tmp6.i156 to i32* ; <i32*> [#uses=1]
- %tmp9.i157 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=2]
- %.len.i = load i32* %tmp9.i157 ; <i32> [#uses=4]
- store i32 %.len.i, i32* %10
- %tmp14.i = add i32 %.len.i, 1 ; <i32> [#uses=2]
- %tmp17.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr.i = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i158 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i158 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, i32 %.len.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i151, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i
- store i32 %tmp14.i, i32* %tmp9.i157
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=3]
- %tmp49 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp48 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp50 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp49, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp51 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp50 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
- %tmp52 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp51, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp53 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp52 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"frags.tail.value.setEntry@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp53, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %frags.tail.value.setEntry = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"frags.tail.value.setEntry@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %frags.tail.value.setEntry(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp51, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i151)
- %11 = bitcast i8* %tmp.i134 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i151, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %11
- %.newclass_gc_alloc59 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc60 = bitcast i8* %.newclass_gc_alloc59 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl61 = bitcast i8* %.newclass_gc_alloc59 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl61
- %monitor62 = getelementptr i8* %.newclass_gc_alloc59, i32 4 ; <i8*> [#uses=1]
- %12 = bitcast i8* %monitor62 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %12
- %tmp63 = getelementptr i8* %.newclass_gc_alloc59, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp63, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %13 = bitcast i8* %tmp63 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc.i159 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i160 = bitcast i8* %.newclass_gc_alloc.i159 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i161 = bitcast i8* %.newclass_gc_alloc.i159 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i161
- %monitor.i162 = getelementptr i8* %.newclass_gc_alloc.i159, i32 4 ; <i8*> [#uses=1]
- %14 = bitcast i8* %monitor.i162 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %14
- %tmp2.i163 = getelementptr i8* %.newclass_gc_alloc.i159, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i163, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i160, %"tango.text.Regex.List!(TNFATransition).List"** %13
- %tmp7.i164 = getelementptr i8* %.newclass_gc_alloc59, i32 12 ; <i8*> [#uses=1]
- %15 = bitcast i8* %tmp7.i164 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc8.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %16 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %16
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %15
- %tmp17.i165 = getelementptr i8* %.newclass_gc_alloc59, i32 16 ; <i8*> [#uses=1]
- %17 = bitcast i8* %tmp17.i165 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc18.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %18 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %18
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %17
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc59, i32 20 ; <i8*> [#uses=1]
- %19 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc28.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %20 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %20
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %19
- %tmp70 = load %"tango.text.Regex.List!(TNFATransition).List"** %13 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp71 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp70, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp72 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp71 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp72, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp75 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp70, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp78 = load %"tango.text.Regex.List!(TNFATransition).List"** %13 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp79 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp78, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp80 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp79 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl81" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp80, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.entries.opCatAssign83 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.entries.opCatAssign@vtbl81", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp85 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign83(%"tango.text.Regex.List!(TNFATransition).List"* %tmp78, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i138) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp88 = load %"tango.text.Regex.List!(TNFATransition).List"** %15 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp89 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp88, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp90 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp89 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exits.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp90, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exits.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exits.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp94 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp48 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp95 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp94, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp96 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp95 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp97 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp96, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp98 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp97 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp99 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exits.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp88, %"tango.text.Regex.List!(TNFATransition).List"* %tmp98) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp102 = load %"tango.text.Regex.List!(TNFATransition).List"** %19 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp103 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp102, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp104 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp103 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp104, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp108 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp48 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp109 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp108, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp110 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp109 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp111 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp110, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp112 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp111 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp113 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp102, %"tango.text.Regex.List!(TNFATransition).List"* %tmp112) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp116 = load %"tango.text.Regex.List!(TNFATransition).List"** %19 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp117 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp116, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp118 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp117 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl119" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp118, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %frag.exit_state.opCatAssign121 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"frag.exit_state.opCatAssign@vtbl119", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp123 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign121(%"tango.text.Regex.List!(TNFATransition).List"* %tmp116, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i138) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp126 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp126, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp130 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp130, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp133 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc60) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructOccurMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListkkE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 %minOccur_arg, i32 %maxOccur_arg, i32 %prioClass_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=3]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %frags.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp5 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp5, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp11 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp11 ; <i32*> [#uses=1]
- %tmp13 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp14 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp14 ; <i32> [#uses=1]
- %tmp15 = load i32* %tmp13 ; <i32> [#uses=2]
- %tmp16 = getelementptr i32* %.ptr, i32 %tmp15 ; <i32*> [#uses=1]
- %tmp17 = sub i32 %.len, %tmp15 ; <i32> [#uses=1]
- %tmp18 = insertvalue %"Act[]" undef, i32 %tmp17, 0 ; <%"Act[]"> [#uses=1]
- %tmp19 = insertvalue %"Act[]" %tmp18, i32* %tmp16, 1 ; <%"Act[]"> [#uses=1]
- %tmp20 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp19, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len21 = extractvalue %"byte[]" %tmp20, 0 ; <i32> [#uses=4]
- %tmp22 = add i32 %.len21, 32 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp22, align 1 ; <i8*> [#uses=3]
- %.ptr23 = extractvalue %"byte[]" %tmp20, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([33 x i8]* @.str237, i32 0, i32 0), i32 32, i32 1)
- %tmp24 = getelementptr i8* %.nongc_mem, i32 32 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* %.ptr23, i32 %.len21, i32 1)
- %tmp26 = add i32 %.len21, 33 ; <i32> [#uses=2]
- %.nongc_mem362 = alloca i8, i32 %tmp26, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem362, i8* %.nongc_mem, i32 %tmp22, i32 1)
- %tmp29 = getelementptr i8* %.nongc_mem362, i32 %tmp22 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp29, align 1
- %tmp2.i = add i32 %.len21, 41 ; <i32> [#uses=2]
- %.gc_mem.i = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i, i64* %.gc_mem12.i, align 1
- %tmp4.i = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i, i8* %.nongc_mem362, i32 %tmp26, i32 1)
- %tmp6.i = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i = insertvalue %"byte[]" %tmp6.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp33 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp33)
- unreachable
-
-endif: ; preds = %entry
- %.newclass_gc_alloc34 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc35 = bitcast i8* %.newclass_gc_alloc34 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl36 = bitcast i8* %.newclass_gc_alloc34 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl36
- %monitor37 = getelementptr i8* %.newclass_gc_alloc34, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor37 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp38 = getelementptr i8* %.newclass_gc_alloc34, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp38, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %2 = bitcast i8* %tmp38 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=4]
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp2.i275 = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i275, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i, %"tango.text.Regex.List!(TNFATransition).List"** %2
- %tmp7.i276 = getelementptr i8* %.newclass_gc_alloc34, i32 12 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp7.i276 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc8.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %5 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %5
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %4
- %tmp17.i = getelementptr i8* %.newclass_gc_alloc34, i32 16 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp17.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=4]
- %.newclass_gc_alloc18.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %6
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc34, i32 20 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc28.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %9
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %8
- br label %forcond
-
-forcond: ; preds = %endif56, %endif
- %prev.0 = phi %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* [ null, %endif ], [ %tmp52, %endif56 ] ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=7]
- %i.0 = phi i32 [ 0, %endif ], [ %tmp81, %endif56 ] ; <i32> [#uses=2]
- %tmp45 = icmp ult i32 %i.0, %minOccur_arg ; <i1> [#uses=1]
- br i1 %tmp45, label %forbody, label %endfor
-
-forbody: ; preds = %forcond
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp49 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp48 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp50 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp49, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp51 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp50 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp52 = tail call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp51) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=5]
- %tmp54 = icmp eq %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.0, null ; <i1> [#uses=1]
- br i1 %tmp54, label %else, label %if55
-
-if55: ; preds = %forbody
- %.newclass_gc_alloc.i277 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i278 = bitcast i8* %.newclass_gc_alloc.i277 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=3]
- %vtbl.i279 = bitcast i8* %.newclass_gc_alloc.i277 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i279
- %monitor.i280 = getelementptr i8* %.newclass_gc_alloc.i277, i32 4 ; <i8*> [#uses=1]
- %10 = bitcast i8* %monitor.i280 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %10
- %tmp.i281 = getelementptr i8* %.newclass_gc_alloc.i277, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i281, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i277, i32 16 ; <i8*> [#uses=1]
- %11 = bitcast i8* %tmp1.i.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i
- %monitor.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 4 ; <i8*> [#uses=1]
- %12 = bitcast i8* %monitor.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %12
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i, %"tango.text.Regex.List!(TNFATransition).List"** %11
- %tmp6.i282 = getelementptr i8* %.newclass_gc_alloc.i277, i32 12 ; <i8*> [#uses=1]
- %13 = bitcast i8* %tmp6.i282 to i32* ; <i32*> [#uses=1]
- %tmp9.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=2]
- %.len.i = load i32* %tmp9.i ; <i32> [#uses=4]
- store i32 %.len.i, i32* %13
- %tmp14.i = add i32 %.len.i, 1 ; <i32> [#uses=2]
- %tmp17.i283 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr.i = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i283 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i284 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i284 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, i32 %.len.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i278, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i
- store i32 %tmp14.i, i32* %tmp9.i
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i283
- %tmp60 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.0, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp61 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp60 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"prev.setExit@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp61, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %prev.setExit = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"prev.setExit@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %prev.setExit(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.0, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i278)
- %tmp65 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp66 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp65 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"f.setEntry@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp66, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %f.setEntry = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"f.setEntry@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %f.setEntry(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i278)
- br label %endif56
-
-else: ; preds = %forbody
- %tmp72 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp73 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp72 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp73, %"tango.text.Regex.List!(TNFATransition).List"** %2
- %tmp77 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp78 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp77 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp78, %"tango.text.Regex.List!(TNFATransition).List"** %6
- br label %endif56
-
-endif56: ; preds = %else, %if55
- %tmp81 = add i32 %i.0, 1 ; <i32> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- %tmp83 = icmp eq i32 %maxOccur_arg, 0 ; <i1> [#uses=1]
- br i1 %tmp83, label %if84, label %forcond166
-
-if84: ; preds = %endfor
- %tmp88 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp89 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp88 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp90 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp89, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp91 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp90 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=8]
- %.newclass_gc_alloc.i285 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i286 = bitcast i8* %.newclass_gc_alloc.i285 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i287 = bitcast i8* %.newclass_gc_alloc.i285 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i287
- %monitor.i288 = getelementptr i8* %.newclass_gc_alloc.i285, i32 4 ; <i8*> [#uses=1]
- %14 = bitcast i8* %monitor.i288 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %14
- %tmp.i289 = getelementptr i8* %.newclass_gc_alloc.i285, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i289, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i290 = getelementptr i8* %.newclass_gc_alloc.i285, i32 48 ; <i8*> [#uses=1]
- %15 = bitcast i8* %tmp1.i.i290 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %15
- %tmp7.i291 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %tmp8.i292 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i291 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i293 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i292, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i293 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i292, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i286) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp96 = getelementptr i8* %.newclass_gc_alloc.i285, i32 20 ; <i8*> [#uses=1]
- %16 = bitcast i8* %tmp96 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %16
- %tmp98 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp91, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %tmp99 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp98 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp100 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp99, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp101 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp100 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp101, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp104 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp99, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i286) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp106 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp91, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp107 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp106 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp108 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp107, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp109 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp108 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp109, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp112 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp107, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i286) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc.i294 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i295 = bitcast i8* %.newclass_gc_alloc.i294 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i296 = bitcast i8* %.newclass_gc_alloc.i294 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i296
- %monitor.i297 = getelementptr i8* %.newclass_gc_alloc.i294, i32 4 ; <i8*> [#uses=1]
- %17 = bitcast i8* %monitor.i297 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %17
- %tmp.i298 = getelementptr i8* %.newclass_gc_alloc.i294, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i298, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i299 = getelementptr i8* %.newclass_gc_alloc.i294, i32 48 ; <i8*> [#uses=1]
- %18 = bitcast i8* %tmp1.i.i299 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %18
- %tmp8.i301 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i291 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i302 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i301, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i303 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i302 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i304" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i303, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i305 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i304", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i306 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i305(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i301, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i295) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp117 = getelementptr i8* %.newclass_gc_alloc.i294, i32 20 ; <i8*> [#uses=1]
- %19 = bitcast i8* %tmp117 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %19
- %tmp119 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp91, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp120 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp119 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp121 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp120, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp122 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp121 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.exits.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp122, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f.exits.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f.exits.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp125 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f.exits.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp120, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i295) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp127 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp91, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %tmp128 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp127 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp129 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp128, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp130 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp129 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.entry_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp130, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f.entry_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f.entry_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp133 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f.entry_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp128, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i295) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %.newclass_gc_alloc.i328 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i329 = bitcast i8* %.newclass_gc_alloc.i328 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=3]
- %vtbl.i330 = bitcast i8* %.newclass_gc_alloc.i328 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i330
- %monitor.i331 = getelementptr i8* %.newclass_gc_alloc.i328, i32 4 ; <i8*> [#uses=1]
- %20 = bitcast i8* %monitor.i331 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %20
- %tmp.i332 = getelementptr i8* %.newclass_gc_alloc.i328, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i332, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i333 = getelementptr i8* %.newclass_gc_alloc.i328, i32 16 ; <i8*> [#uses=1]
- %21 = bitcast i8* %tmp1.i.i333 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i334 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i335 = bitcast i8* %.newclass_gc_alloc.i.i334 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i336 = bitcast i8* %.newclass_gc_alloc.i.i334 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i336
- %monitor.i.i337 = getelementptr i8* %.newclass_gc_alloc.i.i334, i32 4 ; <i8*> [#uses=1]
- %22 = bitcast i8* %monitor.i.i337 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %22
- %tmp2.i.i338 = getelementptr i8* %.newclass_gc_alloc.i.i334, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i338, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i335, %"tango.text.Regex.List!(TNFATransition).List"** %21
- %tmp6.i339 = getelementptr i8* %.newclass_gc_alloc.i328, i32 12 ; <i8*> [#uses=1]
- %23 = bitcast i8* %tmp6.i339 to i32* ; <i32*> [#uses=1]
- %tmp9.i340 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=2]
- %.len.i341 = load i32* %tmp9.i340 ; <i32> [#uses=4]
- store i32 %.len.i341, i32* %23
- %tmp14.i342 = add i32 %.len.i341, 1 ; <i32> [#uses=2]
- %tmp17.i343 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr.i344 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i343 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i345 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i344 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i346 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i342, i32 %.len.i341, i8* %tmp18.i345) ; <i8*> [#uses=1]
- %.gc_mem19.i347 = bitcast i8* %.gc_mem.i346 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i348 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i347, i32 %.len.i341 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i329, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i348
- store i32 %tmp14.i342, i32* %tmp9.i340
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i347, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i343
- %tmp137 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp91, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp138 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp137 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"f.setEntry@vtbl139" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp138, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %f.setEntry141 = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"f.setEntry@vtbl139", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %f.setEntry141(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp91, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i329)
- %tmp144 = icmp eq %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.0, null ; <i1> [#uses=1]
- br i1 %tmp144, label %else147, label %if145
-
-if145: ; preds = %if84
- %tmp149 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.0, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp150 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp149 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"prev.setExit@vtbl151" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp150, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %prev.setExit153 = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"prev.setExit@vtbl151", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %prev.setExit153(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.0, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i329)
- br label %forcond166
-
-else147: ; preds = %if84
- %tmp159 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp98 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp159, %"tango.text.Regex.List!(TNFATransition).List"** %2
- %tmp164 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp127 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp164, %"tango.text.Regex.List!(TNFATransition).List"** %6
- br label %forcond166
-
-forcond166: ; preds = %endif224, %else147, %if145, %endfor
- %prev.2 = phi %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* [ %f175.0, %endif224 ], [ %prev.0, %endfor ], [ %tmp91, %else147 ], [ %tmp91, %if145 ] ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=5]
- %i170.0 = phi i32 [ %tmp254, %endif224 ], [ %minOccur_arg, %if145 ], [ %minOccur_arg, %else147 ], [ %minOccur_arg, %endfor ] ; <i32> [#uses=3]
- %tmp174 = icmp ult i32 %i170.0, %maxOccur_arg ; <i1> [#uses=1]
- br i1 %tmp174, label %forbody167, label %endfor169
-
-forbody167: ; preds = %forcond166
- %tmp178 = add i32 %maxOccur_arg, -1 ; <i32> [#uses=1]
- %tmp179 = icmp ult i32 %i170.0, %tmp178 ; <i1> [#uses=1]
- %tmp185 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp186 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp185 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp187 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp186, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp188 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp187 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=2]
- br i1 %tmp179, label %if180, label %endif181
-
-if180: ; preds = %forbody167
- %tmp189 = tail call fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp188) ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- br label %endif181
-
-endif181: ; preds = %if180, %forbody167
- %f175.0 = phi %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* [ %tmp189, %if180 ], [ %tmp188, %forbody167 ] ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=6]
- %.newclass_gc_alloc.i349 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i350 = bitcast i8* %.newclass_gc_alloc.i349 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=3]
- %vtbl.i351 = bitcast i8* %.newclass_gc_alloc.i349 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i351
- %monitor.i352 = getelementptr i8* %.newclass_gc_alloc.i349, i32 4 ; <i8*> [#uses=1]
- %24 = bitcast i8* %monitor.i352 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %24
- %tmp.i353 = getelementptr i8* %.newclass_gc_alloc.i349, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i353, i8* bitcast (%"tango.text.Regex.TNFAState!(dchar).TNFAState"** getelementptr (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ, i32 0, i32 2) to i8*), i32 44, i32 1)
- %tmp1.i.i354 = getelementptr i8* %.newclass_gc_alloc.i349, i32 48 ; <i8*> [#uses=1]
- %25 = bitcast i8* %tmp1.i.i354 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %25
- %tmp7.i355 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 9 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp8.i356 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp7.i355 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp9.i357 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i356, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp10.i358 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp9.i357 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.transitions.opCatAssign@vtbl.i359" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp10.i358, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.transitions.opCatAssign.i360 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.transitions.opCatAssign@vtbl.i359", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp13.i361 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.transitions.opCatAssign.i360(%"tango.text.Regex.List!(TNFATransition).List"* %tmp8.i356, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i350) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp200 = getelementptr i8* %.newclass_gc_alloc.i349, i32 20 ; <i8*> [#uses=1]
- %26 = bitcast i8* %tmp200 to i32* ; <i32*> [#uses=1]
- store i32 1, i32* %26
- %tmp202 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f175.0, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %tmp203 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp202 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp204 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp203, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp205 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp204 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.entries.opCatAssign@vtbl206" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp205, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f.entries.opCatAssign208 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f.entries.opCatAssign@vtbl206", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp210 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f.entries.opCatAssign208(%"tango.text.Regex.List!(TNFATransition).List"* %tmp203, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i350) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp212 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f175.0, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp213 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp212 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp214 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp213, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp215 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp214 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f.exit_state.opCatAssign@vtbl216" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp215, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f.exit_state.opCatAssign218 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f.exit_state.opCatAssign@vtbl216", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %tmp220 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f.exit_state.opCatAssign218(%"tango.text.Regex.List!(TNFATransition).List"* %tmp213, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.newclass_gc.i350) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp222 = icmp eq %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.2, null ; <i1> [#uses=1]
- br i1 %tmp222, label %else225, label %if223
-
-if223: ; preds = %endif181
- %.newclass_gc_alloc.i307 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i308 = bitcast i8* %.newclass_gc_alloc.i307 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=3]
- %vtbl.i309 = bitcast i8* %.newclass_gc_alloc.i307 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i309
- %monitor.i310 = getelementptr i8* %.newclass_gc_alloc.i307, i32 4 ; <i8*> [#uses=1]
- %27 = bitcast i8* %monitor.i310 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %27
- %tmp.i311 = getelementptr i8* %.newclass_gc_alloc.i307, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i311, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i312 = getelementptr i8* %.newclass_gc_alloc.i307, i32 16 ; <i8*> [#uses=1]
- %28 = bitcast i8* %tmp1.i.i312 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i313 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i314 = bitcast i8* %.newclass_gc_alloc.i.i313 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i315 = bitcast i8* %.newclass_gc_alloc.i.i313 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i315
- %monitor.i.i316 = getelementptr i8* %.newclass_gc_alloc.i.i313, i32 4 ; <i8*> [#uses=1]
- %29 = bitcast i8* %monitor.i.i316 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %29
- %tmp2.i.i317 = getelementptr i8* %.newclass_gc_alloc.i.i313, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i317, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i314, %"tango.text.Regex.List!(TNFATransition).List"** %28
- %tmp6.i318 = getelementptr i8* %.newclass_gc_alloc.i307, i32 12 ; <i8*> [#uses=1]
- %30 = bitcast i8* %tmp6.i318 to i32* ; <i32*> [#uses=1]
- %tmp9.i319 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=2]
- %.len.i320 = load i32* %tmp9.i319 ; <i32> [#uses=4]
- store i32 %.len.i320, i32* %30
- %tmp14.i321 = add i32 %.len.i320, 1 ; <i32> [#uses=2]
- %tmp17.i322 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr.i323 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i322 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i324 = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i323 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i325 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i321, i32 %.len.i320, i8* %tmp18.i324) ; <i8*> [#uses=1]
- %.gc_mem19.i326 = bitcast i8* %.gc_mem.i325 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i327 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i326, i32 %.len.i320 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i308, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i327
- store i32 %tmp14.i321, i32* %tmp9.i319
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i326, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i322
- %tmp229 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.2, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp230 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp229 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"prev.setExit@vtbl231" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp230, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %prev.setExit233 = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"prev.setExit@vtbl231", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %prev.setExit233(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.2, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i308)
- %tmp236 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f175.0, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp237 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp236 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"f.setEntry@vtbl238" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp237, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %f.setEntry240 = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"f.setEntry@vtbl238", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %f.setEntry240(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f175.0, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i308)
- br label %endif224
-
-else225: ; preds = %endif181
- %tmp246 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp202 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp246, %"tango.text.Regex.List!(TNFATransition).List"** %2
- %tmp250 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %f175.0, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp251 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp250 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp251, %"tango.text.Regex.List!(TNFATransition).List"** %6
- br label %endif224
-
-endif224: ; preds = %else225, %if223
- %tmp254 = add i32 %i170.0, 1 ; <i32> [#uses=1]
- br label %forcond166
-
-endfor169: ; preds = %forcond166
- %tmp258 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.2, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp259 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp258 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp259, %"tango.text.Regex.List!(TNFATransition).List"** %4
- %tmp263 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %prev.2, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp264 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp263 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp264, %"tango.text.Regex.List!(TNFATransition).List"** %8
- %tmp267 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp267, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp271 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp271, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp274 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc35) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA15constructAlternMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=4]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %frags.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %oror
-
-oror: ; preds = %entry
- %tmp6 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp8 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=2]
- %tmp9 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp6 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp10 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp8 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp11 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp9, %tmp10 ; <i1> [#uses=1]
- br i1 %tmp11, label %if, label %endif
-
-if: ; preds = %oror, %entry
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp12 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp18 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp18 ; <i32*> [#uses=1]
- %tmp20 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp21 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp21 ; <i32> [#uses=1]
- %tmp22 = load i32* %tmp20 ; <i32> [#uses=2]
- %tmp23 = getelementptr i32* %.ptr, i32 %tmp22 ; <i32*> [#uses=1]
- %tmp24 = sub i32 %.len, %tmp22 ; <i32> [#uses=1]
- %tmp25 = insertvalue %"Act[]" undef, i32 %tmp24, 0 ; <%"Act[]"> [#uses=1]
- %tmp26 = insertvalue %"Act[]" %tmp25, i32* %tmp23, 1 ; <%"Act[]"> [#uses=1]
- %tmp27 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp26, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len28 = extractvalue %"byte[]" %tmp27, 0 ; <i32> [#uses=4]
- %tmp29 = add i32 %.len28, 28 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp29, align 1 ; <i8*> [#uses=3]
- %.ptr30 = extractvalue %"byte[]" %tmp27, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([29 x i8]* @.str239, i32 0, i32 0), i32 28, i32 1)
- %tmp31 = getelementptr i8* %.nongc_mem, i32 28 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp31, i8* %.ptr30, i32 %.len28, i32 1)
- %tmp33 = add i32 %.len28, 29 ; <i32> [#uses=2]
- %.nongc_mem168 = alloca i8, i32 %tmp33, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem168, i8* %.nongc_mem, i32 %tmp29, i32 1)
- %tmp36 = getelementptr i8* %.nongc_mem168, i32 %tmp29 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp36, align 1
- %tmp2.i = add i32 %.len28, 37 ; <i32> [#uses=2]
- %.gc_mem.i = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i, i64* %.gc_mem12.i, align 1
- %tmp4.i = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i, i8* %.nongc_mem168, i32 %tmp33, i32 1)
- %tmp6.i = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i = insertvalue %"byte[]" %tmp6.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp40 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp40)
- unreachable
-
-endif: ; preds = %oror
- %.newclass_gc_alloc41 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc42 = bitcast i8* %.newclass_gc_alloc41 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl43 = bitcast i8* %.newclass_gc_alloc41 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl43
- %monitor44 = getelementptr i8* %.newclass_gc_alloc41, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor44 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp45 = getelementptr i8* %.newclass_gc_alloc41, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp45, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %2 = bitcast i8* %tmp45 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp2.i166 = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i166, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i, %"tango.text.Regex.List!(TNFATransition).List"** %2
- %tmp7.i167 = getelementptr i8* %.newclass_gc_alloc41, i32 12 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp7.i167 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc8.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %5 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %5
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %4
- %tmp17.i = getelementptr i8* %.newclass_gc_alloc41, i32 16 ; <i8*> [#uses=1]
- %6 = bitcast i8* %tmp17.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc18.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %6
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc41, i32 20 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=3]
- %.newclass_gc_alloc28.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %9
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %8
- %tmp52 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp8 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp53 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp52, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp54 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp53 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=4]
- %tmp58 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp52, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp59 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp58 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp60 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp59, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp61 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp60 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=4]
- %tmp64 = load %"tango.text.Regex.List!(TNFATransition).List"** %6 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp65 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp64, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp66 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp65 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entry_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp66, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entry_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entry_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp69 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp61, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp70 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp69 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp71 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entry_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp64, %"tango.text.Regex.List!(TNFATransition).List"* %tmp70) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp74 = load %"tango.text.Regex.List!(TNFATransition).List"** %6 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp75 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp74, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp76 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp75 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entry_state.opCatAssign@vtbl77" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp76, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entry_state.opCatAssign79 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entry_state.opCatAssign@vtbl77", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp81 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp54, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp82 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp81 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp83 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entry_state.opCatAssign79(%"tango.text.Regex.List!(TNFATransition).List"* %tmp74, %"tango.text.Regex.List!(TNFATransition).List"* %tmp82) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp86 = load %"tango.text.Regex.List!(TNFATransition).List"** %8 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp87 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp86, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp88 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp87 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp88, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp91 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp61, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp92 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp91 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp93 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp86, %"tango.text.Regex.List!(TNFATransition).List"* %tmp92) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp96 = load %"tango.text.Regex.List!(TNFATransition).List"** %8 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp97 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp96, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp98 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp97 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl99" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp98, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exit_state.opCatAssign101 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exit_state.opCatAssign@vtbl99", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp103 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp54, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp104 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp103 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp105 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign101(%"tango.text.Regex.List!(TNFATransition).List"* %tmp96, %"tango.text.Regex.List!(TNFATransition).List"* %tmp104) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp108 = load %"tango.text.Regex.List!(TNFATransition).List"** %2 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp109 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp108, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp110 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp109 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp110, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp113 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp61, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp114 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp113 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp115 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp108, %"tango.text.Regex.List!(TNFATransition).List"* %tmp114) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp118 = load %"tango.text.Regex.List!(TNFATransition).List"** %2 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp119 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp118, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp120 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp119 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl121" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp120, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entries.opCatAssign123 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entries.opCatAssign@vtbl121", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp125 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp54, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp126 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp125 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp127 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign123(%"tango.text.Regex.List!(TNFATransition).List"* %tmp118, %"tango.text.Regex.List!(TNFATransition).List"* %tmp126) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp130 = load %"tango.text.Regex.List!(TNFATransition).List"** %4 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp131 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp130, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp132 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp131 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exits.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp132, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exits.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exits.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp135 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp61, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp136 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp135 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp137 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exits.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp130, %"tango.text.Regex.List!(TNFATransition).List"* %tmp136) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp140 = load %"tango.text.Regex.List!(TNFATransition).List"** %4 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp141 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp140, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp142 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp141 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exits.opCatAssign@vtbl143" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp142, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exits.opCatAssign145 = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exits.opCatAssign@vtbl143", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp147 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp54, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp148 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp147 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp149 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exits.opCatAssign145(%"tango.text.Regex.List!(TNFATransition).List"* %tmp140, %"tango.text.Regex.List!(TNFATransition).List"* %tmp148) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp152 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp152, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp156 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl157" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp156, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop159 = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl157", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop159(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp162 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp162, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp165 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc42) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA15constructConcatMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=4]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %frags.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %oror
-
-oror: ; preds = %entry
- %tmp6 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp8 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp6 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp10 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp8 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=3]
- %tmp11 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp9, %tmp10 ; <i1> [#uses=1]
- br i1 %tmp11, label %if, label %endif
-
-if: ; preds = %oror, %entry
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp12 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp18 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp18 ; <i32*> [#uses=1]
- %tmp20 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp21 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp21 ; <i32> [#uses=1]
- %tmp22 = load i32* %tmp20 ; <i32> [#uses=2]
- %tmp23 = getelementptr i32* %.ptr, i32 %tmp22 ; <i32*> [#uses=1]
- %tmp24 = sub i32 %.len, %tmp22 ; <i32> [#uses=1]
- %tmp25 = insertvalue %"Act[]" undef, i32 %tmp24, 0 ; <%"Act[]"> [#uses=1]
- %tmp26 = insertvalue %"Act[]" %tmp25, i32* %tmp23, 1 ; <%"Act[]"> [#uses=1]
- %tmp27 = tail call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp26, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len28 = extractvalue %"byte[]" %tmp27, 0 ; <i32> [#uses=4]
- %tmp29 = add i32 %.len28, 39 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp29, align 1 ; <i8*> [#uses=3]
- %.ptr30 = extractvalue %"byte[]" %tmp27, 1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([40 x i8]* @.str241, i32 0, i32 0), i32 39, i32 1)
- %tmp31 = getelementptr i8* %.nongc_mem, i32 39 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp31, i8* %.ptr30, i32 %.len28, i32 1)
- %tmp33 = add i32 %.len28, 40 ; <i32> [#uses=2]
- %.nongc_mem140 = alloca i8, i32 %tmp33, align 1 ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem140, i8* %.nongc_mem, i32 %tmp29, i32 1)
- %tmp36 = getelementptr i8* %.nongc_mem140, i32 %tmp29 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp36, align 1
- %tmp2.i = add i32 %.len28, 48 ; <i32> [#uses=2]
- %.gc_mem.i = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i, i64* %.gc_mem12.i, align 1
- %tmp4.i = getelementptr i8* %.gc_mem.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp4.i, i8* %.nongc_mem140, i32 %tmp33, i32 1)
- %tmp6.i = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i = insertvalue %"byte[]" %tmp6.i, i8* %.gc_mem.i, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i = tail call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp40 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- tail call void @_d_throw_exception(%object.Object* %tmp40)
- unreachable
-
-endif: ; preds = %oror
- %tmp44 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp10, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp45 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp44 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=4]
- %tmp49 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp10, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp50 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp49 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp51 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp50, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp52 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp51 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=4]
- %.newclass_gc_alloc.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState7__ClassZ) ; <i8*> [#uses=6]
- %.newclass_gc.i = bitcast i8* %.newclass_gc_alloc.i to %"tango.text.Regex.TNFAState!(dchar).TNFAState"* ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=3]
- %vtbl.i = bitcast i8* %.newclass_gc_alloc.i to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl.i
- %monitor.i = getelementptr i8* %.newclass_gc_alloc.i, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp.i130 = getelementptr i8* %.newclass_gc_alloc.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp.i130, i8* bitcast (i1* getelementptr (%"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- %tmp1.i.i = getelementptr i8* %.newclass_gc_alloc.i, i32 16 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp1.i.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc.i.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i.i = bitcast i8* %.newclass_gc_alloc.i.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i.i
- %monitor.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor.i.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp2.i.i = getelementptr i8* %.newclass_gc_alloc.i.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i.i, %"tango.text.Regex.List!(TNFATransition).List"** %2
- %tmp6.i131 = getelementptr i8* %.newclass_gc_alloc.i, i32 12 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp6.i131 to i32* ; <i32*> [#uses=1]
- %tmp9.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 0 ; <i32*> [#uses=2]
- %.len.i = load i32* %tmp9.i ; <i32> [#uses=4]
- store i32 %.len.i, i32* %4
- %tmp14.i = add i32 %.len.i, 1 ; <i32> [#uses=2]
- %tmp17.i = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %.this_arg, i32 0, i32 3, i32 1 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"***> [#uses=2]
- %.ptr.i = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp18.i = bitcast %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i132 = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D56TypeInfo_AC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState6__initZ to %object.TypeInfo*), i32 %tmp14.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i132 to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=2]
- %tmp20.i = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, i32 %.len.i ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp20.i
- store i32 %tmp14.i, i32* %tmp9.i
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %.gc_mem19.i, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*** %tmp17.i
- %tmp56 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp57 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp56 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"f2.setExit@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp57, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %f2.setExit = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"f2.setExit@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %f2.setExit(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i)
- %tmp61 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp45, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- %tmp62 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp61 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"f1.setEntry@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp62, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %f1.setEntry = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"f1.setEntry@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- tail call fastcc void %f1.setEntry(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp45, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.newclass_gc.i)
- %.newclass_gc_alloc65 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc66 = bitcast i8* %.newclass_gc_alloc65 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %vtbl67 = bitcast i8* %.newclass_gc_alloc65 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__vtblZ, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %vtbl67
- %monitor68 = getelementptr i8* %.newclass_gc_alloc65, i32 4 ; <i8*> [#uses=1]
- %5 = bitcast i8* %monitor68 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %5
- %tmp69 = getelementptr i8* %.newclass_gc_alloc65, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp69, i8* bitcast (%"tango.text.Regex.List!(TNFATransition).List"** getelementptr (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment6__initZ, i32 0, i32 2) to i8*), i32 17, i32 1)
- %6 = bitcast i8* %tmp69 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc.i133 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc.i134 = bitcast i8* %.newclass_gc_alloc.i133 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl.i135 = bitcast i8* %.newclass_gc_alloc.i133 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl.i135
- %monitor.i136 = getelementptr i8* %.newclass_gc_alloc.i133, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %monitor.i136 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %7
- %tmp2.i137 = getelementptr i8* %.newclass_gc_alloc.i133, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2.i137, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc.i134, %"tango.text.Regex.List!(TNFATransition).List"** %6
- %tmp7.i138 = getelementptr i8* %.newclass_gc_alloc65, i32 12 ; <i8*> [#uses=1]
- %8 = bitcast i8* %tmp7.i138 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc8.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10.i = bitcast i8* %.newclass_gc_alloc8.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10.i
- %monitor11.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %monitor11.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %9
- %tmp12.i = getelementptr i8* %.newclass_gc_alloc8.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9.i, %"tango.text.Regex.List!(TNFATransition).List"** %8
- %tmp17.i139 = getelementptr i8* %.newclass_gc_alloc65, i32 16 ; <i8*> [#uses=1]
- %10 = bitcast i8* %tmp17.i139 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc18.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20.i = bitcast i8* %.newclass_gc_alloc18.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20.i
- %monitor21.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 4 ; <i8*> [#uses=1]
- %11 = bitcast i8* %monitor21.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %11
- %tmp22.i = getelementptr i8* %.newclass_gc_alloc18.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19.i, %"tango.text.Regex.List!(TNFATransition).List"** %10
- %tmp27.i = getelementptr i8* %.newclass_gc_alloc65, i32 20 ; <i8*> [#uses=1]
- %12 = bitcast i8* %tmp27.i to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=2]
- %.newclass_gc_alloc28.i = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30.i = bitcast i8* %.newclass_gc_alloc28.i to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30.i
- %monitor31.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 4 ; <i8*> [#uses=1]
- %13 = bitcast i8* %monitor31.i to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %13
- %tmp32.i = getelementptr i8* %.newclass_gc_alloc28.i, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32.i, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29.i, %"tango.text.Regex.List!(TNFATransition).List"** %12
- %tmp76 = load %"tango.text.Regex.List!(TNFATransition).List"** %6 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp77 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp76, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp78 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp77 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp78, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp81 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp82 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp81 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp83 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp76, %"tango.text.Regex.List!(TNFATransition).List"* %tmp82) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp86 = load %"tango.text.Regex.List!(TNFATransition).List"** %8 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp87 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp86, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp88 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp87 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exits.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp88, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exits.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exits.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp91 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp45, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp92 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp91 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp93 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exits.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp86, %"tango.text.Regex.List!(TNFATransition).List"* %tmp92) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp96 = load %"tango.text.Regex.List!(TNFATransition).List"** %10 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp97 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp96, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp98 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp97 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.entry_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp98, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.entry_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.entry_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp101 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp52, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp102 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp101 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp103 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.entry_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp96, %"tango.text.Regex.List!(TNFATransition).List"* %tmp102) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp106 = load %"tango.text.Regex.List!(TNFATransition).List"** %12 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp107 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp106, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp108 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp107 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"frag.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp108, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %frag.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"frag.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp111 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp45, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp112 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp111 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp113 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %frag.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp106, %"tango.text.Regex.List!(TNFATransition).List"* %tmp112) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp116 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp116, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp120 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.pop@vtbl121" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp120, i32 0, i32 16 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %frags.pop123 = load void (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"frags.pop@vtbl121", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- tail call fastcc void %frags.pop123(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg)
- %tmp126 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"frags.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp126, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %frags.opCatAssign = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"frags.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %tmp129 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %frags.opCatAssign(%"tango.text.Regex.List!(TNFAFragment).List"* %frags_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.newclass_gc66) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=0]
- ret void
-}
-
-declare fastcc %"byte[]" @_D5tango4text5Regex16__T9CharRangeTwZ9CharRange8toStringMFZAa(%tango.net.Socket.timeval*)
-
-declare fastcc i32 @_D5tango4text5Regex16__T9CharRangeTwZ9CharRange8opEqualsMFPS5tango4text5Regex16__T9CharRangeTwZ9CharRangeZi(%tango.net.Socket.timeval* nocapture, %tango.net.Socket.timeval* nocapture) nounwind readonly
-
-declare fastcc i32 @_D5tango4text5Regex16__T9CharRangeTwZ9CharRange5opCmpMFPS5tango4text5Regex16__T9CharRangeTwZ9CharRangeZi(%tango.net.Socket.timeval* nocapture, %tango.net.Socket.timeval* nocapture) nounwind readonly
-
-declare fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass6negateMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"*)
-
-declare fastcc void @_D5tango4text5Regex16__T9CharClassTwZ9CharClass8optimizeMFZv(%"tango.text.Regex.CharClass!(dchar).CharClass"*)
-
-define weak_odr fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition5_ctorMFE5tango4text5Regex13PriorityClassZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.this_arg, i32 %pc_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.this_arg, i32 0, i32 6 ; <i32*> [#uses=1]
- store i32 %pc_arg, i32* %tmp1
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAState!(dchar).TNFAState"* @_D5tango4text5Regex16__T9TNFAStateTwZ9TNFAState5_ctorMFZC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState(%"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.this_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.this_arg, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp2 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List"** %tmp1
- ret %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11opCatAssignMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=5]
- %tmp2 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp3 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp2, null ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %else
-
-if: ; preds = %entry
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List.Element"* ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp8 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp8, i8* bitcast (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** getelementptr (%"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp13 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp13 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %1
- %2 = bitcast i8* %tmp8 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %2
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp5
- br label %endif
-
-else: ; preds = %entry
- %tmp19 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp2, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %.newclass_gc_alloc20 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc21 = bitcast i8* %.newclass_gc_alloc20 to %"tango.text.Regex.List!(TNFATransition).List.Element"* ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %vtbl22 = bitcast i8* %.newclass_gc_alloc20 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl22
- %monitor23 = getelementptr i8* %.newclass_gc_alloc20, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor23 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp24 = getelementptr i8* %.newclass_gc_alloc20, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* bitcast (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** getelementptr (%"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp29 = getelementptr i8* %.newclass_gc_alloc20, i32 20 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp29 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %4
- %5 = bitcast i8* %tmp24 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %5
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc21, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp19
- %tmp34 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp35 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp34, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp36 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp35 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp37 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp36, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp34, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp37
- %tmp45 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp46 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp45, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp47 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp46 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp47, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1
- br label %endif
-
-endif: ; preds = %else, %if
- %tmp49 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp52 = load i32* %tmp49 ; <i32> [#uses=1]
- %tmp53 = add i32 %tmp52, 1 ; <i32> [#uses=1]
- store i32 %tmp53, i32* %tmp49
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11insertAfterMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %w_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) {
-entry:
- %.frame = alloca %nest.insertAfter, align 8 ; <%nest.insertAfter*> [#uses=5]
- %this = getelementptr %nest.insertAfter* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %this, align 8
- %w = getelementptr %nest.insertAfter* %.frame, i32 0, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %w_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %w
- %v = getelementptr %nest.insertAfter* %.frame, i32 0, i32 2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %v, align 8
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp8 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp7 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.elements@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp8, i32 0, i32 18 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")**> [#uses=1]
- %this.elements = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")** %"this.elements@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")*> [#uses=1]
- %tmp10 = bitcast %nest.insertAfter* %.frame to i8* ; <i8*> [#uses=1]
- %tmp11 = insertvalue %"int delegate(ref Element)" undef, i8* %tmp10, 0 ; <%"int delegate(ref Element)"> [#uses=1]
- %.func = insertvalue %"int delegate(ref Element)" %tmp11, i32 (i8*, %"tango.text.Regex.List!(TNFATransition).List.Element"**)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11insertAfterMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List15__foreachbody52MFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZi, 1 ; <%"int delegate(ref Element)"> [#uses=1]
- %tmp12 = call fastcc i32 %this.elements(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"int delegate(ref Element)" %.func) ; <i32> [#uses=1]
- %cond = icmp eq i32 %tmp12, 2 ; <i1> [#uses=1]
- br i1 %cond, label %case, label %switchend
-
-case: ; preds = %entry
- %__result = getelementptr %nest.insertAfter* %.frame, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.List!(TNFATransition).List"** %__result ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- ret %"tango.text.Regex.List!(TNFATransition).List"* %tmp14
-
-switchend: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFATransition).List"* null
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11insertAfterMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) {
-entry:
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List.Element"* ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp1 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp1, i8* bitcast (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** getelementptr (%"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp6 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp6 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %1
- %2 = bitcast i8* %tmp1 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %2
- %tmp10 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp10 to %"tango.text.Regex.List!(TNFATransition).List.Element"** ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"** %3
- %tmp13 = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp13 to %"tango.text.Regex.List!(TNFATransition).List.Element"** ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=2]
- %tmp16 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp15 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp16, %"tango.text.Regex.List!(TNFATransition).List.Element"** %4
- %tmp20 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp16, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp20
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp15
- %tmp26 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=2]
- %tmp28 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp26 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp29 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp28, %e_arg ; <i1> [#uses=1]
- br i1 %tmp29, label %if, label %endif
-
-if: ; preds = %entry
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp26
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp37 = load i32* %tmp34 ; <i32> [#uses=1]
- %tmp38 = add i32 %tmp37, 1 ; <i32> [#uses=1]
- store i32 %tmp38, i32* %tmp34
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11opCatAssignMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4ListZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"* %l_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"l.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %l.empty = load i1 (%"tango.text.Regex.List!(TNFATransition).List"*)** %"l.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %l.empty(%"tango.text.Regex.List!(TNFATransition).List"* %l_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-
-endif: ; preds = %entry
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=3]
- %tmp8 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp9 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp8, null ; <i1> [#uses=1]
- br i1 %tmp9, label %if10, label %else
-
-if10: ; preds = %endif
- %tmp13 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp16 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp15 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp16, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp13
- br label %endif11
-
-else: ; preds = %endif
- %tmp25 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp8, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp27 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp28 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp27 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp28, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp25
- %tmp31 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp32 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp31, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp33 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp32 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp33, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp31, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp34
- br label %endif11
-
-endif11: ; preds = %else, %if10
- %storemerge.in = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %storemerge = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %storemerge.in ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7
- %tmp44 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp49 = load i32* %tmp44 ; <i32> [#uses=1]
- %tmp50 = load i32* %tmp48 ; <i32> [#uses=1]
- %tmp51 = add i32 %tmp49, %tmp50 ; <i32> [#uses=1]
- store i32 %tmp51, i32* %tmp44
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List9pushFrontMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=4]
- %tmp2 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp3 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp2, null ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %else
-
-if: ; preds = %entry
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List.Element"* ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp8 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp8, i8* bitcast (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** getelementptr (%"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp13 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp13 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %1
- %2 = bitcast i8* %tmp8 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %2
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7
- br label %endif
-
-else: ; preds = %entry
- %tmp19 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp2, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %.newclass_gc_alloc20 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc21 = bitcast i8* %.newclass_gc_alloc20 to %"tango.text.Regex.List!(TNFATransition).List.Element"* ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %vtbl22 = bitcast i8* %.newclass_gc_alloc20 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl22
- %monitor23 = getelementptr i8* %.newclass_gc_alloc20, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor23 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp24 = getelementptr i8* %.newclass_gc_alloc20, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* bitcast (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** getelementptr (%"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp29 = getelementptr i8* %.newclass_gc_alloc20, i32 20 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp29 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %4
- %5 = bitcast i8* %tmp24 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %5
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc21, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp19
- %tmp34 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp35 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp34, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp36 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp35 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp37 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp36, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp34, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp37
- %tmp45 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp46 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp45, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp47 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp46 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- br label %endif
-
-endif: ; preds = %else, %if
- %storemerge = phi %"tango.text.Regex.List!(TNFATransition).List.Element"* [ %.newclass_gc, %if ], [ %tmp47, %else ] ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1
- %tmp49 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp52 = load i32* %tmp49 ; <i32> [#uses=1]
- %tmp53 = add i32 %tmp52, 1 ; <i32> [#uses=1]
- store i32 %tmp53, i32* %tmp49
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List12insertBeforeMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %w_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) {
-entry:
- %.frame = alloca %nest.insertAfter, align 8 ; <%nest.insertAfter*> [#uses=5]
- %this = getelementptr %nest.insertAfter* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %this, align 8
- %w = getelementptr %nest.insertAfter* %.frame, i32 0, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %w_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %w
- %v = getelementptr %nest.insertAfter* %.frame, i32 0, i32 2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %v, align 8
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp8 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp7 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.elements@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp8, i32 0, i32 18 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")**> [#uses=1]
- %this.elements = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")** %"this.elements@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref Element)")*> [#uses=1]
- %tmp10 = bitcast %nest.insertAfter* %.frame to i8* ; <i8*> [#uses=1]
- %tmp11 = insertvalue %"int delegate(ref Element)" undef, i8* %tmp10, 0 ; <%"int delegate(ref Element)"> [#uses=1]
- %.func = insertvalue %"int delegate(ref Element)" %tmp11, i32 (i8*, %"tango.text.Regex.List!(TNFATransition).List.Element"**)* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List12insertBeforeMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List15__foreachbody53MFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZi, 1 ; <%"int delegate(ref Element)"> [#uses=1]
- %tmp12 = call fastcc i32 %this.elements(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"int delegate(ref Element)" %.func) ; <i32> [#uses=1]
- %cond = icmp eq i32 %tmp12, 2 ; <i1> [#uses=1]
- br i1 %cond, label %case, label %switchend
-
-case: ; preds = %entry
- %__result = getelementptr %nest.insertAfter* %.frame, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.List!(TNFATransition).List"** %__result ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- ret %"tango.text.Regex.List!(TNFATransition).List"* %tmp14
-
-switchend: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFATransition).List"* null
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List12insertBeforeMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) {
-entry:
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List.Element"* ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp1 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp1, i8* bitcast (%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** getelementptr (%"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp6 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp6 to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"** %1
- %2 = bitcast i8* %tmp1 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %2
- %tmp10 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp10 to %"tango.text.Regex.List!(TNFATransition).List.Element"** ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp12 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=2]
- %tmp13 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp12 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp13, %"tango.text.Regex.List!(TNFATransition).List.Element"** %3
- %tmp15 = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp15 to %"tango.text.Regex.List!(TNFATransition).List.Element"** ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"** %4
- %tmp20 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp13, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp20
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp12
- %tmp26 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=2]
- %tmp28 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp26 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp29 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp28, %e_arg ; <i1> [#uses=1]
- br i1 %tmp29, label %if, label %endif
-
-if: ; preds = %entry
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp26
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp37 = load i32* %tmp34 ; <i32> [#uses=1]
- %tmp38 = add i32 %tmp37, 1 ; <i32> [#uses=1]
- store i32 %tmp38, i32* %tmp34
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List9pushFrontMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4ListZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List"* %l_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"l.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %l.empty = load i1 (%"tango.text.Regex.List!(TNFATransition).List"*)** %"l.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %l.empty(%"tango.text.Regex.List!(TNFATransition).List"* %l_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-
-endif: ; preds = %entry
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=4]
- %tmp8 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp9 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp8, null ; <i1> [#uses=1]
- br i1 %tmp9, label %if10, label %else
-
-if10: ; preds = %endif
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp16 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp15 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp16, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7
- %tmp18 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp20 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp21 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp20 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp21, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp18
- br label %endif11
-
-else: ; preds = %endif
- %tmp25 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp8, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp27 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp28 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp27 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp28, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp25
- %tmp31 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp32 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp31, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp33 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp32 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp33, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp31, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp34
- %tmp41 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp42 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp41 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp42, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp7
- br label %endif11
-
-endif11: ; preds = %else, %if10
- %tmp44 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %l_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp49 = load i32* %tmp44 ; <i32> [#uses=1]
- %tmp50 = load i32* %tmp48 ; <i32> [#uses=1]
- %tmp51 = add i32 %tmp49, %tmp50 ; <i32> [#uses=1]
- store i32 %tmp51, i32* %tmp44
- ret %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6lengthMFZk(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- ret i32 %tmp2
-}
-
-define weak_odr fastcc i1 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List5emptyMFZb(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp3 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp2, null ; <i1> [#uses=1]
- ret i1 %tmp3
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List5clearMFZv(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* null, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp1
- %tmp3 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* null, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp3
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- store i32 0, i32* %tmp5
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List3popMFZv(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.remove@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp2, i32 0, i32 17 ; <void (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*)**> [#uses=1]
- %this.remove = load void (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*)** %"this.remove@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*)*> [#uses=1]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- tail call fastcc void %this.remove(%"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp6)
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6removeMFC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZv(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg) nounwind {
-entry:
- %tmp1 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, null ; <i1> [#uses=1]
- br i1 %tmp1, label %if, label %endif
-
-if: ; preds = %entry
- ret void
-
-endif: ; preds = %entry
- %tmp3 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=3]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp5 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp4, null ; <i1> [#uses=1]
- br i1 %tmp5, label %if6, label %else
-
-if6: ; preds = %endif
- %tmp9 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp11 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp12 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp11 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp12, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp9
- br label %endif7
-
-else: ; preds = %endif
- %tmp16 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp4, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp18 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp19 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp18 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp19, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp16
- br label %endif7
-
-endif7: ; preds = %else, %if6
- %tmp21 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp22 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp21 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp23 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp22, null ; <i1> [#uses=1]
- br i1 %tmp23, label %if24, label %else26
-
-if24: ; preds = %endif7
- %tmp28 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp31 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp31, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp28
- br label %endif25
-
-else26: ; preds = %endif7
- %tmp35 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp22, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %tmp38 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp38, %"tango.text.Regex.List!(TNFATransition).List.Element"** %tmp35
- br label %endif25
-
-endif25: ; preds = %else26, %if24
- %tmp40 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp43 = load i32* %tmp40 ; <i32> [#uses=1]
- %tmp44 = add i32 %tmp43, -1 ; <i32> [#uses=1]
- store i32 %tmp44, i32* %tmp40
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List8elementsMFDFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZiZi(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg, %"int delegate(ref Element)" %dg_arg) {
-entry:
- %e = alloca %"tango.text.Regex.List!(TNFATransition).List.Element"*, align 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=3]
- %dg_arg18 = extractvalue %"int delegate(ref Element)" %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg19 = extractvalue %"int delegate(ref Element)" %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.List!(TNFATransition).List.Element"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %storemerge.in = phi %"tango.text.Regex.List!(TNFATransition).List.Element"** [ %tmp15, %forinc ], [ %tmp1, %entry ] ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %storemerge = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %storemerge.in ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFATransition).List.Element"** %e
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %storemerge, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp9 = call fastcc i32 %dg_arg19(i8* %dg_arg18, %"tango.text.Regex.List!(TNFATransition).List.Element"** %e) ; <i32> [#uses=2]
- %tmp12 = icmp eq i32 %tmp9, 0 ; <i1> [#uses=1]
- br i1 %tmp12, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp9
-
-forinc: ; preds = %forbody
- %tmp14 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %e ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp14, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List16elements_reverseMFDFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZiZi(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg, %"int delegate(ref Element)" %dg_arg) {
-entry:
- %e = alloca %"tango.text.Regex.List!(TNFATransition).List.Element"*, align 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=3]
- %dg_arg18 = extractvalue %"int delegate(ref Element)" %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg19 = extractvalue %"int delegate(ref Element)" %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.List!(TNFATransition).List.Element"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %storemerge.in = phi %"tango.text.Regex.List!(TNFATransition).List.Element"** [ %tmp15, %forinc ], [ %tmp1, %entry ] ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %storemerge = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %storemerge.in ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFATransition).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFATransition).List.Element"** %e
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %storemerge, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp9 = call fastcc i32 %dg_arg19(i8* %dg_arg18, %"tango.text.Regex.List!(TNFATransition).List.Element"** %e) ; <i32> [#uses=2]
- %tmp12 = icmp eq i32 %tmp9, 0 ; <i1> [#uses=1]
- br i1 %tmp12, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp9
-
-forinc: ; preds = %forbody
- %tmp14 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %e ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp14, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7opApplyMFDFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZiZi(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg, %"int delegate(ref TNFATransition)" %dg_arg) {
-entry:
- %dg_arg20 = extractvalue %"int delegate(ref TNFATransition)" %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg21 = extractvalue %"int delegate(ref TNFATransition)" %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %e.0.in = phi %"tango.text.Regex.List!(TNFATransition).List.Element"** [ %tmp1, %entry ], [ %tmp17, %forinc ] ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %e.0 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %e.0.in ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=3]
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %e.0, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e.0, i32 0, i32 2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp11 = tail call fastcc i32 %dg_arg21(i8* %dg_arg20, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp10) ; <i32> [#uses=2]
- %tmp14 = icmp eq i32 %tmp11, 0 ; <i1> [#uses=1]
- br i1 %tmp14, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp11
-
-forinc: ; preds = %forbody
- %tmp17 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e.0, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List14opApplyReverseMFDFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZiZi(%"tango.text.Regex.List!(TNFATransition).List"* nocapture %.this_arg, %"int delegate(ref TNFATransition)" %dg_arg) {
-entry:
- %dg_arg20 = extractvalue %"int delegate(ref TNFATransition)" %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg21 = extractvalue %"int delegate(ref TNFATransition)" %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %e.0.in = phi %"tango.text.Regex.List!(TNFATransition).List.Element"** [ %tmp1, %entry ], [ %tmp17, %forinc ] ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- %e.0 = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %e.0.in ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=3]
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFATransition).List.Element"* %e.0, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e.0, i32 0, i32 2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp11 = tail call fastcc i32 %dg_arg21(i8* %dg_arg20, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp10) ; <i32> [#uses=2]
- %tmp14 = icmp eq i32 %tmp11, 0 ; <i1> [#uses=1]
- br i1 %tmp14, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp11
-
-forinc: ; preds = %forbody
- %tmp17 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %e.0, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFATransition).List.Element"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element5_ctorMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7Element(%"tango.text.Regex.List!(TNFATransition).List.Element"* %.this_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %.this_arg, i32 0, i32 2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp1
- ret %"tango.text.Regex.List!(TNFATransition).List.Element"* %.this_arg
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment8setEntryMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* nocapture %.this_arg, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state_arg) {
-entry:
- %.frame = alloca %nest.setEntry, align 8 ; <%nest.setEntry*> [#uses=2]
- %state = getelementptr %nest.setEntry* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state_arg, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %state, align 8
- %tmp3 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state_arg, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp4, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"state.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp6, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %state.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"state.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp9 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp10 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp9 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp11 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %state.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp4, %"tango.text.Regex.List!(TNFATransition).List"* %tmp10) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp13 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp13 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp14, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp16 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp15 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.entry_state.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp16, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %this.entry_state.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"this.entry_state.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp18 = bitcast %nest.setEntry* %.frame to i8* ; <i8*> [#uses=1]
- %tmp19 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp18, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func = insertvalue %"int delegate(ref TNFATransition)" %tmp19, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment8setEntryMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv15__foreachbody54MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp20 = call fastcc i32 %this.entry_state.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp14, %"int delegate(ref TNFATransition)" %.func) ; <i32> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7setExitMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* nocapture %.this_arg, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state_arg) {
-entry:
- %.frame = alloca %nest.setEntry, align 8 ; <%nest.setEntry*> [#uses=2]
- %state = getelementptr %nest.setEntry* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state_arg, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %state, align 8
- %tmp3 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %state_arg, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp4, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"state.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp6, i32 0, i32 8 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)**> [#uses=1]
- %state.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)** %"state.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List"*)*> [#uses=1]
- %tmp9 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp10 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp9 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %tmp11 = call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %state.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp4, %"tango.text.Regex.List!(TNFATransition).List"* %tmp10) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- %tmp13 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp13 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp14, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp16 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp15 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.exit_state.opApply@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp16, i32 0, i32 20 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")**> [#uses=1]
- %this.exit_state.opApply = load i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")** %"this.exit_state.opApply@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFATransition).List"*, %"int delegate(ref TNFATransition)")*> [#uses=1]
- %tmp18 = bitcast %nest.setEntry* %.frame to i8* ; <i8*> [#uses=1]
- %tmp19 = insertvalue %"int delegate(ref TNFATransition)" undef, i8* %tmp18, 0 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %.func = insertvalue %"int delegate(ref TNFATransition)" %tmp19, i32 (i8*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**)* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7setExitMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv15__foreachbody55MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi, 1 ; <%"int delegate(ref TNFATransition)"> [#uses=1]
- %tmp20 = call fastcc i32 %this.exit_state.opApply(%"tango.text.Regex.List!(TNFATransition).List"* %tmp14, %"int delegate(ref TNFATransition)" %.func) ; <i32> [#uses=0]
- ret void
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment5_ctorMFZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp2 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp2, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc, %"tango.text.Regex.List!(TNFATransition).List"** %tmp1
- %tmp7 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc8 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc9 = bitcast i8* %.newclass_gc_alloc8 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl10 = bitcast i8* %.newclass_gc_alloc8 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl10
- %monitor11 = getelementptr i8* %.newclass_gc_alloc8, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %monitor11 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %1
- %tmp12 = getelementptr i8* %.newclass_gc_alloc8, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp12, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc9, %"tango.text.Regex.List!(TNFATransition).List"** %tmp7
- %tmp17 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc18 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc19 = bitcast i8* %.newclass_gc_alloc18 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl20 = bitcast i8* %.newclass_gc_alloc18 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl20
- %monitor21 = getelementptr i8* %.newclass_gc_alloc18, i32 4 ; <i8*> [#uses=1]
- %2 = bitcast i8* %monitor21 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %2
- %tmp22 = getelementptr i8* %.newclass_gc_alloc18, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp22, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc19, %"tango.text.Regex.List!(TNFATransition).List"** %tmp17
- %tmp27 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %.newclass_gc_alloc28 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7__ClassZ) ; <i8*> [#uses=4]
- %.newclass_gc29 = bitcast i8* %.newclass_gc_alloc28 to %"tango.text.Regex.List!(TNFATransition).List"* ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- %vtbl30 = bitcast i8* %.newclass_gc_alloc28 to %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__vtblZ, %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %vtbl30
- %monitor31 = getelementptr i8* %.newclass_gc_alloc28, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor31 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp32 = getelementptr i8* %.newclass_gc_alloc28, i32 8 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp32, i8* bitcast (i32* getelementptr (%"tango.text.Regex.List!(TNFATransition).List"* @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List6__initZ, i32 0, i32 2) to i8*), i32 12, i32 1)
- store %"tango.text.Regex.List!(TNFATransition).List"* %.newclass_gc29, %"tango.text.Regex.List!(TNFATransition).List"** %tmp27
- ret %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11opCatAssignMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=5]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp3 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp2, null ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %else
-
-if: ; preds = %entry
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFAFragment).List.Element"* ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp8 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp8, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** getelementptr (%"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp13 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp13 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %1
- %2 = bitcast i8* %tmp8 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %2
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp5
- br label %endif
-
-else: ; preds = %entry
- %tmp19 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp2, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %.newclass_gc_alloc20 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc21 = bitcast i8* %.newclass_gc_alloc20 to %"tango.text.Regex.List!(TNFAFragment).List.Element"* ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %vtbl22 = bitcast i8* %.newclass_gc_alloc20 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl22
- %monitor23 = getelementptr i8* %.newclass_gc_alloc20, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor23 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp24 = getelementptr i8* %.newclass_gc_alloc20, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** getelementptr (%"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp29 = getelementptr i8* %.newclass_gc_alloc20, i32 20 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp29 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %4
- %5 = bitcast i8* %tmp24 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %5
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc21, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp19
- %tmp34 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp35 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp34, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp36 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp35 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp37 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp36, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp34, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp37
- %tmp45 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp46 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp45, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp47 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp46 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp47, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1
- br label %endif
-
-endif: ; preds = %else, %if
- %tmp49 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp52 = load i32* %tmp49 ; <i32> [#uses=1]
- %tmp53 = add i32 %tmp52, 1 ; <i32> [#uses=1]
- store i32 %tmp53, i32* %tmp49
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11insertAfterMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %w_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg) {
-entry:
- %.frame = alloca %34, align 8 ; <%34*> [#uses=5]
- %this = getelementptr %34* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %this, align 8
- %w = getelementptr %34* %.frame, i32 0, i32 1 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %w_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %w
- %v = getelementptr %34* %.frame, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %v, align 8
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp8 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp7 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"this.elements@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp8, i32 0, i32 18 ; <i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)**> [#uses=1]
- %this.elements = load i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)** %"this.elements@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)*> [#uses=1]
- %tmp10 = bitcast %34* %.frame to i8* ; <i8*> [#uses=1]
- %tmp11 = insertvalue %1 undef, i8* %tmp10, 0 ; <%1> [#uses=1]
- %.func = insertvalue %1 %tmp11, i32 (i8*, %"tango.text.Regex.List!(TNFAFragment).List.Element"**)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11insertAfterMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List15__foreachbody56MFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZi, 1 ; <%1> [#uses=1]
- %tmp12 = call fastcc i32 %this.elements(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %1 %.func) ; <i32> [#uses=1]
- %cond = icmp eq i32 %tmp12, 2 ; <i1> [#uses=1]
- br i1 %cond, label %case, label %switchend
-
-case: ; preds = %entry
- %__result = getelementptr %34* %.frame, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.List!(TNFAFragment).List"** %__result ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %tmp14
-
-switchend: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFAFragment).List"* null
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11insertAfterMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg) {
-entry:
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFAFragment).List.Element"* ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp1 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp1, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** getelementptr (%"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp6 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp6 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %1
- %2 = bitcast i8* %tmp1 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %2
- %tmp10 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp10 to %"tango.text.Regex.List!(TNFAFragment).List.Element"** ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %3
- %tmp13 = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp13 to %"tango.text.Regex.List!(TNFAFragment).List.Element"** ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=2]
- %tmp16 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp15 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp16, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %4
- %tmp20 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp16, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp20
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp15
- %tmp26 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=2]
- %tmp28 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp26 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp29 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp28, %e_arg ; <i1> [#uses=1]
- br i1 %tmp29, label %if, label %endif
-
-if: ; preds = %entry
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp26
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp37 = load i32* %tmp34 ; <i32> [#uses=1]
- %tmp38 = add i32 %tmp37, 1 ; <i32> [#uses=1]
- store i32 %tmp38, i32* %tmp34
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11opCatAssignMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"l.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %l.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"l.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %l.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %l_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-
-endif: ; preds = %entry
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=3]
- %tmp8 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp9 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp8, null ; <i1> [#uses=1]
- br i1 %tmp9, label %if10, label %else
-
-if10: ; preds = %endif
- %tmp13 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp16 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp15 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp16, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp13
- br label %endif11
-
-else: ; preds = %endif
- %tmp25 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp8, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp27 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp28 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp27 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp28, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp25
- %tmp31 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp32 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp31, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp33 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp32 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp33, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp31, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp34
- br label %endif11
-
-endif11: ; preds = %else, %if10
- %storemerge.in = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %storemerge = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %storemerge.in ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7
- %tmp44 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp49 = load i32* %tmp44 ; <i32> [#uses=1]
- %tmp50 = load i32* %tmp48 ; <i32> [#uses=1]
- %tmp51 = add i32 %tmp49, %tmp50 ; <i32> [#uses=1]
- store i32 %tmp51, i32* %tmp44
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List9pushFrontMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=4]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp3 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp2, null ; <i1> [#uses=1]
- br i1 %tmp3, label %if, label %else
-
-if: ; preds = %entry
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFAFragment).List.Element"* ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp8 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp8, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** getelementptr (%"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp13 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp13 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %1
- %2 = bitcast i8* %tmp8 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %2
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7
- br label %endif
-
-else: ; preds = %entry
- %tmp19 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp2, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %.newclass_gc_alloc20 = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc21 = bitcast i8* %.newclass_gc_alloc20 to %"tango.text.Regex.List!(TNFAFragment).List.Element"* ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %vtbl22 = bitcast i8* %.newclass_gc_alloc20 to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl22
- %monitor23 = getelementptr i8* %.newclass_gc_alloc20, i32 4 ; <i8*> [#uses=1]
- %3 = bitcast i8* %monitor23 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %3
- %tmp24 = getelementptr i8* %.newclass_gc_alloc20, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp24, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** getelementptr (%"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp29 = getelementptr i8* %.newclass_gc_alloc20, i32 20 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp29 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %4
- %5 = bitcast i8* %tmp24 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %5
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc21, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp19
- %tmp34 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp35 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp34, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp36 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp35 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp37 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp36, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp34, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp37
- %tmp45 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp46 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp45, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp47 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp46 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- br label %endif
-
-endif: ; preds = %else, %if
- %storemerge = phi %"tango.text.Regex.List!(TNFAFragment).List.Element"* [ %.newclass_gc, %if ], [ %tmp47, %else ] ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1
- %tmp49 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp52 = load i32* %tmp49 ; <i32> [#uses=1]
- %tmp53 = add i32 %tmp52, 1 ; <i32> [#uses=1]
- store i32 %tmp53, i32* %tmp49
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List12insertBeforeMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %w_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg) {
-entry:
- %.frame = alloca %34, align 8 ; <%34*> [#uses=5]
- %this = getelementptr %34* %.frame, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %this, align 8
- %w = getelementptr %34* %.frame, i32 0, i32 1 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %w_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %w
- %v = getelementptr %34* %.frame, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %v, align 8
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp8 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp7 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"this.elements@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp8, i32 0, i32 18 ; <i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)**> [#uses=1]
- %this.elements = load i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)** %"this.elements@vtbl", align 4 ; <i32 (%"tango.text.Regex.List!(TNFAFragment).List"*, %1)*> [#uses=1]
- %tmp10 = bitcast %34* %.frame to i8* ; <i8*> [#uses=1]
- %tmp11 = insertvalue %1 undef, i8* %tmp10, 0 ; <%1> [#uses=1]
- %.func = insertvalue %1 %tmp11, i32 (i8*, %"tango.text.Regex.List!(TNFAFragment).List.Element"**)* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List12insertBeforeMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List15__foreachbody57MFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZi, 1 ; <%1> [#uses=1]
- %tmp12 = call fastcc i32 %this.elements(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %1 %.func) ; <i32> [#uses=1]
- %cond = icmp eq i32 %tmp12, 2 ; <i1> [#uses=1]
- br i1 %cond, label %case, label %switchend
-
-case: ; preds = %entry
- %__result = getelementptr %34* %.frame, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.List!(TNFAFragment).List"** %__result ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %tmp14
-
-switchend: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFAFragment).List"* null
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List12insertBeforeMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg) {
-entry:
- %.newclass_gc_alloc = tail call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element7__ClassZ) ; <i8*> [#uses=7]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %"tango.text.Regex.List!(TNFAFragment).List.Element"* ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=3]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.ModuleInfo.__vtbl** ; <%object.ModuleInfo.__vtbl**> [#uses=1]
- store %object.ModuleInfo.__vtbl* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__vtblZ, %object.ModuleInfo.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp1 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp1, i8* bitcast (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** getelementptr (%"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element6__initZ, i32 0, i32 2) to i8*), i32 16, i32 1)
- %tmp6 = getelementptr i8* %.newclass_gc_alloc, i32 20 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp6 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"** %1
- %2 = bitcast i8* %tmp1 to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %2
- %tmp10 = getelementptr i8* %.newclass_gc_alloc, i32 12 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp10 to %"tango.text.Regex.List!(TNFAFragment).List.Element"** ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp12 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=2]
- %tmp13 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp12 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp13, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %3
- %tmp15 = getelementptr i8* %.newclass_gc_alloc, i32 16 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp15 to %"tango.text.Regex.List!(TNFAFragment).List.Element"** ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %4
- %tmp20 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp13, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp20
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp12
- %tmp26 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=2]
- %tmp28 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp26 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp29 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp28, %e_arg ; <i1> [#uses=1]
- br i1 %tmp29, label %if, label %endif
-
-if: ; preds = %entry
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.newclass_gc, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp26
- br label %endif
-
-endif: ; preds = %if, %entry
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp37 = load i32* %tmp34 ; <i32> [#uses=1]
- %tmp38 = add i32 %tmp37, 1 ; <i32> [#uses=1]
- store i32 %tmp38, i32* %tmp34
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List9pushFrontMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"l.empty@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 14 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)**> [#uses=1]
- %l.empty = load i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)** %"l.empty@vtbl", align 4 ; <i1 (%"tango.text.Regex.List!(TNFAFragment).List"*)*> [#uses=1]
- %tmp4 = tail call fastcc i1 %l.empty(%"tango.text.Regex.List!(TNFAFragment).List"* %l_arg) ; <i1> [#uses=1]
- br i1 %tmp4, label %if, label %endif
-
-if: ; preds = %entry
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-
-endif: ; preds = %entry
- %tmp7 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=4]
- %tmp8 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp9 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp8, null ; <i1> [#uses=1]
- br i1 %tmp9, label %if10, label %else
-
-if10: ; preds = %endif
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp16 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp15 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp16, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7
- %tmp18 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp20 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp21 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp20 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp21, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp18
- br label %endif11
-
-else: ; preds = %endif
- %tmp25 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp8, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp27 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp28 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp27 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp28, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp25
- %tmp31 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp32 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp31, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp33 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp32 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp34 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp33, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp31, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp34
- %tmp41 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp42 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp41 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp42, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp7
- br label %endif11
-
-endif11: ; preds = %else, %if10
- %tmp44 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp48 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %l_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp49 = load i32* %tmp44 ; <i32> [#uses=1]
- %tmp50 = load i32* %tmp48 ; <i32> [#uses=1]
- %tmp51 = add i32 %tmp49, %tmp50 ; <i32> [#uses=1]
- store i32 %tmp51, i32* %tmp44
- ret %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6lengthMFZk(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- ret i32 %tmp2
-}
-
-define weak_odr fastcc i1 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List5emptyMFZb(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp3 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp2, null ; <i1> [#uses=1]
- ret i1 %tmp3
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List5clearMFZv(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* null, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp1
- %tmp3 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* null, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp3
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=1]
- store i32 0, i32* %tmp5
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List3popMFZv(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp1 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"this.remove@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp2, i32 0, i32 17 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*)**> [#uses=1]
- %this.remove = load void (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*)** %"this.remove@vtbl", align 4 ; <void (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*)*> [#uses=1]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp5 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- tail call fastcc void %this.remove(%"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp6)
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List6removeMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZv(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg) nounwind {
-entry:
- %tmp1 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, null ; <i1> [#uses=1]
- br i1 %tmp1, label %if, label %endif
-
-if: ; preds = %entry
- ret void
-
-endif: ; preds = %entry
- %tmp3 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=3]
- %tmp4 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp5 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp4, null ; <i1> [#uses=1]
- br i1 %tmp5, label %if6, label %else
-
-if6: ; preds = %endif
- %tmp9 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp11 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp12 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp11 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp12, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp9
- br label %endif7
-
-else: ; preds = %endif
- %tmp16 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp4, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp18 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp19 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp18 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp19, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp16
- br label %endif7
-
-endif7: ; preds = %else, %if6
- %tmp21 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp22 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp21 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp23 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp22, null ; <i1> [#uses=1]
- br i1 %tmp23, label %if24, label %else26
-
-if24: ; preds = %endif7
- %tmp28 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp31 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp31, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp28
- br label %endif25
-
-else26: ; preds = %endif7
- %tmp35 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp22, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %tmp38 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp38, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %tmp35
- br label %endif25
-
-endif25: ; preds = %else26, %if24
- %tmp40 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 2 ; <i32*> [#uses=2]
- %tmp43 = load i32* %tmp40 ; <i32> [#uses=1]
- %tmp44 = add i32 %tmp43, -1 ; <i32> [#uses=1]
- store i32 %tmp44, i32* %tmp40
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List8elementsMFDFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZiZi(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg, %1 %dg_arg) {
-entry:
- %e = alloca %"tango.text.Regex.List!(TNFAFragment).List.Element"*, align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=3]
- %dg_arg18 = extractvalue %1 %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg19 = extractvalue %1 %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.List!(TNFAFragment).List.Element"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %storemerge.in = phi %"tango.text.Regex.List!(TNFAFragment).List.Element"** [ %tmp15, %forinc ], [ %tmp1, %entry ] ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %storemerge = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %storemerge.in ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %storemerge, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp9 = call fastcc i32 %dg_arg19(i8* %dg_arg18, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e) ; <i32> [#uses=2]
- %tmp12 = icmp eq i32 %tmp9, 0 ; <i1> [#uses=1]
- br i1 %tmp12, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp9
-
-forinc: ; preds = %forbody
- %tmp14 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp14, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List16elements_reverseMFDFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZiZi(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg, %1 %dg_arg) {
-entry:
- %e = alloca %"tango.text.Regex.List!(TNFAFragment).List.Element"*, align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=3]
- %dg_arg18 = extractvalue %1 %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg19 = extractvalue %1 %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.List!(TNFAFragment).List.Element"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %storemerge.in = phi %"tango.text.Regex.List!(TNFAFragment).List.Element"** [ %tmp15, %forinc ], [ %tmp1, %entry ] ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %storemerge = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %storemerge.in ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- store %"tango.text.Regex.List!(TNFAFragment).List.Element"* %storemerge, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %storemerge, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp9 = call fastcc i32 %dg_arg19(i8* %dg_arg18, %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e) ; <i32> [#uses=2]
- %tmp12 = icmp eq i32 %tmp9, 0 ; <i1> [#uses=1]
- br i1 %tmp12, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp9
-
-forinc: ; preds = %forbody
- %tmp14 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=1]
- %tmp15 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp14, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7opApplyMFDFKC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZiZi(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg, %"int delegate(ref TNFAFragment)" %dg_arg) {
-entry:
- %dg_arg20 = extractvalue %"int delegate(ref TNFAFragment)" %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg21 = extractvalue %"int delegate(ref TNFAFragment)" %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %e.0.in = phi %"tango.text.Regex.List!(TNFAFragment).List.Element"** [ %tmp1, %entry ], [ %tmp17, %forinc ] ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %e.0 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e.0.in ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=3]
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e.0, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e.0, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp11 = tail call fastcc i32 %dg_arg21(i8* %dg_arg20, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp10) ; <i32> [#uses=2]
- %tmp14 = icmp eq i32 %tmp11, 0 ; <i1> [#uses=1]
- br i1 %tmp14, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp11
-
-forinc: ; preds = %forbody
- %tmp17 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e.0, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List14opApplyReverseMFDFKC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZiZi(%"tango.text.Regex.List!(TNFAFragment).List"* nocapture %.this_arg, %"int delegate(ref TNFAFragment)" %dg_arg) {
-entry:
- %dg_arg20 = extractvalue %"int delegate(ref TNFAFragment)" %dg_arg, 0 ; <i8*> [#uses=1]
- %dg_arg21 = extractvalue %"int delegate(ref TNFAFragment)" %dg_arg, 1 ; <i32 (i8*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**)*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %.this_arg, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %entry
- %e.0.in = phi %"tango.text.Regex.List!(TNFAFragment).List.Element"** [ %tmp1, %entry ], [ %tmp17, %forinc ] ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- %e.0 = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %e.0.in ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=3]
- %tmp4 = icmp eq %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e.0, null ; <i1> [#uses=1]
- br i1 %tmp4, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e.0, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp11 = tail call fastcc i32 %dg_arg21(i8* %dg_arg20, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp10) ; <i32> [#uses=2]
- %tmp14 = icmp eq i32 %tmp11, 0 ; <i1> [#uses=1]
- br i1 %tmp14, label %forinc, label %if
-
-if: ; preds = %forbody
- ret i32 %tmp11
-
-forinc: ; preds = %forbody
- %tmp17 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %e.0, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"**> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 0
-}
-
-define weak_odr fastcc %"tango.text.Regex.List!(TNFAFragment).List.Element"* @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element5_ctorMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7Element(%"tango.text.Regex.List!(TNFAFragment).List.Element"* %.this_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.this_arg, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- store %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %v_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp1
- ret %"tango.text.Regex.List!(TNFAFragment).List.Element"* %.this_arg
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util21__T13locatePatternTaZ13locatePatternFAaAakZk(%"byte[]" %source_arg, %"byte[]" %match_arg, i32 %start_arg) nounwind readonly {
-entry:
- %source_arg59 = extractvalue %"byte[]" %source_arg, 0 ; <i32> [#uses=3]
- %source_arg60 = extractvalue %"byte[]" %source_arg, 1 ; <i8*> [#uses=2]
- %match_arg57 = extractvalue %"byte[]" %match_arg, 0 ; <i32> [#uses=5]
- %match_arg58 = extractvalue %"byte[]" %match_arg, 1 ; <i8*> [#uses=2]
- %tmp5 = sub i32 %source_arg59, %start_arg ; <i32> [#uses=1]
- %tmp8 = sub i32 %tmp5, %match_arg57 ; <i32> [#uses=1]
- %tmp9 = add i32 %tmp8, 1 ; <i32> [#uses=2]
- %tmp12 = icmp eq i32 %match_arg57, 0 ; <i1> [#uses=1]
- %tmp16 = icmp ugt i32 %tmp9, %source_arg59 ; <i1> [#uses=1]
- %or.cond = or i1 %tmp12, %tmp16 ; <i1> [#uses=1]
- br i1 %or.cond, label %endif, label %whilecond
-
-whilecond: ; preds = %else40, %entry
- %source_arg60.pn = phi i8* [ %p.0, %else40 ], [ %source_arg60, %entry ] ; <i8*> [#uses=4]
- %start_arg.pn = phi i32 [ %tmp49, %else40 ], [ %start_arg, %entry ] ; <i32> [#uses=3]
- %extent.0 = phi i32 [ %tmp51, %else40 ], [ %tmp9, %entry ] ; <i32> [#uses=5]
- %p.0 = getelementptr i8* %source_arg60.pn, i32 %start_arg.pn ; <i8*> [#uses=2]
- %tmp18 = icmp eq i32 %extent.0, 0 ; <i1> [#uses=1]
- br i1 %tmp18, label %endif, label %whilebody
-
-whilebody: ; preds = %whilecond
- %tmp23 = load i8* %match_arg58 ; <i8> [#uses=1]
- %p.0.sum63 = add i32 %start_arg.pn, -1 ; <i32> [#uses=1]
- %tmp2.i = getelementptr i8* %source_arg60.pn, i32 %p.0.sum63 ; <i8*> [#uses=1]
- br label %forcond.i
-
-forcond.i: ; preds = %forbody.i, %whilebody
- %len.0.i = phi i32 [ %extent.0, %whilebody ], [ %tmp4.i, %forbody.i ] ; <i32> [#uses=2]
- %p.0.i = phi i8* [ %tmp2.i, %whilebody ], [ %tmp7.i, %forbody.i ] ; <i8*> [#uses=1]
- %tmp4.i = add i32 %len.0.i, -1 ; <i32> [#uses=1]
- %tmp5.i = icmp eq i32 %len.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i, label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit, label %forbody.i
-
-forbody.i: ; preds = %forcond.i
- %tmp7.i = getelementptr i8* %p.0.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i = load i8* %tmp7.i ; <i8> [#uses=1]
- %tmp12.i = icmp eq i8 %tmp8.i, %tmp23 ; <i1> [#uses=1]
- br i1 %tmp12.i, label %if.i, label %forcond.i
-
-if.i: ; preds = %forbody.i
- %tmp15.i = ptrtoint i8* %tmp7.i to i32 ; <i32> [#uses=1]
- %tmp16.i = ptrtoint i8* %p.0 to i32 ; <i32> [#uses=1]
- %tmp17.i = sub i32 %tmp15.i, %tmp16.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit
-
-_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit: ; preds = %if.i, %forcond.i
- %tmp2561 = phi i32 [ %tmp17.i, %if.i ], [ %extent.0, %forcond.i ] ; <i32> [#uses=3]
- %tmp27 = icmp eq i32 %tmp2561, %extent.0 ; <i1> [#uses=1]
- br i1 %tmp27, label %endif, label %else
-
-else: ; preds = %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit
- %p.0.sum = add i32 %start_arg.pn, %tmp2561 ; <i32> [#uses=2]
- %tmp32 = getelementptr i8* %source_arg60.pn, i32 %p.0.sum ; <i8*> [#uses=2]
- %tmp32.sum = add i32 %p.0.sum, -1 ; <i32> [#uses=1]
- %tmp2.i.i = getelementptr i8* %source_arg60.pn, i32 %tmp32.sum ; <i8*> [#uses=1]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %else
- %len.0.i.i = phi i32 [ %match_arg57, %else ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %s2.0.i.i = phi i8* [ %match_arg58, %else ], [ %tmp11.i.i, %forbody.i.i ] ; <i8*> [#uses=2]
- %p.0.i.i = phi i8* [ %tmp2.i.i, %else ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util15__T8matchingTaZ8matchingFPaPakZb.exit, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp11.i.i = getelementptr i8* %s2.0.i.i, i32 1 ; <i8*> [#uses=1]
- %tmp12.i.i = load i8* %s2.0.i.i ; <i8> [#uses=1]
- %tmp14.i.i = icmp eq i8 %tmp8.i.i, %tmp12.i.i ; <i1> [#uses=1]
- br i1 %tmp14.i.i, label %forcond.i.i, label %if.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp17.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp18.i.i = ptrtoint i8* %tmp32 to i32 ; <i32> [#uses=1]
- %tmp19.i.i = sub i32 %tmp17.i.i, %tmp18.i.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util15__T8matchingTaZ8matchingFPaPakZb.exit
-
-_D5tango4text4Util15__T8matchingTaZ8matchingFPaPakZb.exit: ; preds = %if.i.i, %forcond.i.i
- %tmp36.i = phi i32 [ %tmp19.i.i, %if.i.i ], [ %match_arg57, %forcond.i.i ] ; <i32> [#uses=1]
- %tmp5.i62 = icmp eq i32 %tmp36.i, %match_arg57 ; <i1> [#uses=1]
- br i1 %tmp5.i62, label %if38, label %else40
-
-if38: ; preds = %_D5tango4text4Util15__T8matchingTaZ8matchingFPaPakZb.exit
- %tmp44 = ptrtoint i8* %tmp32 to i32 ; <i32> [#uses=1]
- %tmp45 = ptrtoint i8* %source_arg60 to i32 ; <i32> [#uses=1]
- %tmp46 = sub i32 %tmp44, %tmp45 ; <i32> [#uses=1]
- ret i32 %tmp46
-
-else40: ; preds = %_D5tango4text4Util15__T8matchingTaZ8matchingFPaPakZb.exit
- %tmp49 = add i32 %tmp2561, 1 ; <i32> [#uses=2]
- %tmp51 = sub i32 %extent.0, %tmp49 ; <i32> [#uses=1]
- br label %whilecond
-
-endif: ; preds = %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit, %whilecond, %entry
- ret i32 %source_arg59
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk(i8* %str_arg, i8 %match_arg, i32 %length_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr i8* %str_arg, i32 -1 ; <i8*> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forbody, %entry
- %len.0 = phi i32 [ %length_arg, %entry ], [ %tmp4, %forbody ] ; <i32> [#uses=2]
- %p.0 = phi i8* [ %tmp2, %entry ], [ %tmp7, %forbody ] ; <i8*> [#uses=1]
- %tmp4 = add i32 %len.0, -1 ; <i32> [#uses=1]
- %tmp5 = icmp eq i32 %len.0, 0 ; <i1> [#uses=1]
- br i1 %tmp5, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp7 = getelementptr i8* %p.0, i32 1 ; <i8*> [#uses=3]
- %tmp8 = load i8* %tmp7 ; <i8> [#uses=1]
- %tmp12 = icmp eq i8 %tmp8, %match_arg ; <i1> [#uses=1]
- br i1 %tmp12, label %if, label %forcond
-
-if: ; preds = %forbody
- %tmp15 = ptrtoint i8* %tmp7 to i32 ; <i32> [#uses=1]
- %tmp16 = ptrtoint i8* %str_arg to i32 ; <i32> [#uses=1]
- %tmp17 = sub i32 %tmp15, %tmp16 ; <i32> [#uses=1]
- ret i32 %tmp17
-
-endfor: ; preds = %forcond
- ret i32 %length_arg
-}
-
-define weak_odr fastcc i1 @_D5tango4text4Util15__T8matchingTaZ8matchingFPaPakZb(i8* %s1_arg, i8* nocapture %s2_arg, i32 %length_arg) nounwind readonly {
-entry:
- %tmp2.i = getelementptr i8* %s1_arg, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i
-
-forcond.i: ; preds = %forbody.i, %entry
- %len.0.i = phi i32 [ %length_arg, %entry ], [ %tmp4.i, %forbody.i ] ; <i32> [#uses=2]
- %s2.0.i = phi i8* [ %s2_arg, %entry ], [ %tmp11.i, %forbody.i ] ; <i8*> [#uses=2]
- %p.0.i = phi i8* [ %tmp2.i, %entry ], [ %tmp7.i, %forbody.i ] ; <i8*> [#uses=1]
- %tmp4.i = add i32 %len.0.i, -1 ; <i32> [#uses=1]
- %tmp5.i = icmp eq i32 %len.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i, label %_D5tango4text4Util15__T8mismatchTaZ8mismatchFPaPakZk.exit, label %forbody.i
-
-forbody.i: ; preds = %forcond.i
- %tmp7.i = getelementptr i8* %p.0.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i = load i8* %tmp7.i ; <i8> [#uses=1]
- %tmp11.i = getelementptr i8* %s2.0.i, i32 1 ; <i8*> [#uses=1]
- %tmp12.i = load i8* %s2.0.i ; <i8> [#uses=1]
- %tmp14.i = icmp eq i8 %tmp8.i, %tmp12.i ; <i1> [#uses=1]
- br i1 %tmp14.i, label %forcond.i, label %if.i
-
-if.i: ; preds = %forbody.i
- %tmp17.i = ptrtoint i8* %tmp7.i to i32 ; <i32> [#uses=1]
- %tmp18.i = ptrtoint i8* %s1_arg to i32 ; <i32> [#uses=1]
- %tmp19.i = sub i32 %tmp17.i, %tmp18.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util15__T8mismatchTaZ8mismatchFPaPakZk.exit
-
-_D5tango4text4Util15__T8mismatchTaZ8mismatchFPaPakZk.exit: ; preds = %if.i, %forcond.i
- %tmp36 = phi i32 [ %tmp19.i, %if.i ], [ %length_arg, %forcond.i ] ; <i32> [#uses=1]
- %tmp5 = icmp eq i32 %tmp36, %length_arg ; <i1> [#uses=1]
- ret i1 %tmp5
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util15__T8mismatchTaZ8mismatchFPaPakZk(i8* %s1_arg, i8* nocapture %s2_arg, i32 %length_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr i8* %s1_arg, i32 -1 ; <i8*> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forbody, %entry
- %len.0 = phi i32 [ %length_arg, %entry ], [ %tmp4, %forbody ] ; <i32> [#uses=2]
- %s2.0 = phi i8* [ %s2_arg, %entry ], [ %tmp11, %forbody ] ; <i8*> [#uses=2]
- %p.0 = phi i8* [ %tmp2, %entry ], [ %tmp7, %forbody ] ; <i8*> [#uses=1]
- %tmp4 = add i32 %len.0, -1 ; <i32> [#uses=1]
- %tmp5 = icmp eq i32 %len.0, 0 ; <i1> [#uses=1]
- br i1 %tmp5, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- %tmp7 = getelementptr i8* %p.0, i32 1 ; <i8*> [#uses=3]
- %tmp8 = load i8* %tmp7 ; <i8> [#uses=1]
- %tmp11 = getelementptr i8* %s2.0, i32 1 ; <i8*> [#uses=1]
- %tmp12 = load i8* %s2.0 ; <i8> [#uses=1]
- %tmp14 = icmp eq i8 %tmp8, %tmp12 ; <i1> [#uses=1]
- br i1 %tmp14, label %forcond, label %if
-
-if: ; preds = %forbody
- %tmp17 = ptrtoint i8* %tmp7 to i32 ; <i32> [#uses=1]
- %tmp18 = ptrtoint i8* %s1_arg to i32 ; <i32> [#uses=1]
- %tmp19 = sub i32 %tmp17, %tmp18 ; <i32> [#uses=1]
- ret i32 %tmp19
-
-endfor: ; preds = %forcond
- ret i32 %length_arg
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util19__T11locatePriorTaZ11locatePriorFAaakZk(%"byte[]" %source_arg, i8 %match_arg, i32 %start_arg) nounwind readonly {
-entry:
- %source_arg22 = extractvalue %"byte[]" %source_arg, 0 ; <i32> [#uses=3]
- %source_arg23 = extractvalue %"byte[]" %source_arg, 1 ; <i8*> [#uses=1]
- %tmp2 = icmp ult i32 %source_arg22, %start_arg ; <i1> [#uses=1]
- br i1 %tmp2, label %if, label %whilecond
-
-if: ; preds = %entry
- br label %whilecond
-
-whilecond: ; preds = %whilebody, %if, %entry
- %start.0 = phi i32 [ %source_arg22, %if ], [ %tmp8, %whilebody ], [ %start_arg, %entry ] ; <i32> [#uses=2]
- %tmp6 = icmp eq i32 %start.0, 0 ; <i1> [#uses=1]
- br i1 %tmp6, label %endwhile, label %whilebody
-
-whilebody: ; preds = %whilecond
- %tmp8 = add i32 %start.0, -1 ; <i32> [#uses=3]
- %tmp10 = getelementptr i8* %source_arg23, i32 %tmp8 ; <i8*> [#uses=1]
- %tmp11 = load i8* %tmp10 ; <i8> [#uses=1]
- %tmp15 = icmp eq i8 %tmp11, %match_arg ; <i1> [#uses=1]
- br i1 %tmp15, label %if16, label %whilecond
-
-if16: ; preds = %whilebody
- ret i32 %tmp8
-
-endwhile: ; preds = %whilecond
- ret i32 %source_arg22
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util13__T6locateTaZ6locateFAaakZk(%"byte[]" %source_arg, i8 %match_arg, i32 %start_arg) nounwind readonly {
-entry:
- %source_arg16 = extractvalue %"byte[]" %source_arg, 0 ; <i32> [#uses=3]
- %source_arg17 = extractvalue %"byte[]" %source_arg, 1 ; <i8*> [#uses=2]
- %tmp2 = icmp ult i32 %source_arg16, %start_arg ; <i1> [#uses=1]
- %start.0 = select i1 %tmp2, i32 %source_arg16, i32 %start_arg ; <i32> [#uses=4]
- %tmp7 = getelementptr i8* %source_arg17, i32 %start.0 ; <i8*> [#uses=1]
- %tmp12 = sub i32 %source_arg16, %start.0 ; <i32> [#uses=2]
- %tmp7.sum = add i32 %start.0, -1 ; <i32> [#uses=1]
- %tmp2.i = getelementptr i8* %source_arg17, i32 %tmp7.sum ; <i8*> [#uses=1]
- br label %forcond.i
-
-forcond.i: ; preds = %forbody.i, %entry
- %len.0.i = phi i32 [ %tmp12, %entry ], [ %tmp4.i, %forbody.i ] ; <i32> [#uses=2]
- %p.0.i = phi i8* [ %tmp2.i, %entry ], [ %tmp7.i, %forbody.i ] ; <i8*> [#uses=1]
- %tmp4.i = add i32 %len.0.i, -1 ; <i32> [#uses=1]
- %tmp5.i = icmp eq i32 %len.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i, label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit, label %forbody.i
-
-forbody.i: ; preds = %forcond.i
- %tmp7.i = getelementptr i8* %p.0.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i = load i8* %tmp7.i ; <i8> [#uses=1]
- %tmp12.i = icmp eq i8 %tmp8.i, %match_arg ; <i1> [#uses=1]
- br i1 %tmp12.i, label %if.i, label %forcond.i
-
-if.i: ; preds = %forbody.i
- %tmp15.i = ptrtoint i8* %tmp7.i to i32 ; <i32> [#uses=1]
- %tmp16.i = ptrtoint i8* %tmp7 to i32 ; <i32> [#uses=1]
- %tmp17.i = sub i32 %tmp15.i, %tmp16.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit
-
-_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit: ; preds = %if.i, %forcond.i
- %tmp1318 = phi i32 [ %tmp17.i, %if.i ], [ %tmp12, %forcond.i ] ; <i32> [#uses=1]
- %tmp15 = add i32 %tmp1318, %start.0 ; <i32> [#uses=1]
- ret i32 %tmp15
-}
-
-define weak_odr fastcc i64 @_D5tango4text7convert7Integer13__T6toLongTaZ6toLongFAakZl(%"byte[]" %digits_arg, i32 %radix_arg) {
-entry:
- %len = alloca i32, align 4 ; <i32*> [#uses=3]
- %digits_arg15 = extractvalue %"byte[]" %digits_arg, 0 ; <i32> [#uses=2]
- %digits_arg16 = extractvalue %"byte[]" %digits_arg, 1 ; <i8*> [#uses=1]
- store i32 0, i32* %len
- %insert = insertvalue %"byte[]" undef, i32 %digits_arg15, 0 ; <%"byte[]"> [#uses=1]
- %insert14 = insertvalue %"byte[]" %insert, i8* %digits_arg16, 1 ; <%"byte[]"> [#uses=1]
- %tmp2 = call fastcc i64 @_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl(%"byte[]" %insert14, i32 %radix_arg, i32* %len) ; <i64> [#uses=1]
- %tmp4 = load i32* %len ; <i32> [#uses=1]
- %tmp5 = icmp ult i32 %tmp4, %digits_arg15 ; <i1> [#uses=1]
- br i1 %tmp5, label %if, label %endif
-
-if: ; preds = %entry
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4core9Exception24IllegalArgumentException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4core9Exception24IllegalArgumentException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %0
- %tmp6 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp6, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%29* @_D5tango4core9Exception24IllegalArgumentException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %tmp2.i = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" { i32 33, i8* getelementptr ([34 x i8]* @.str244, i32 0, i32 0) }, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp11 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp11)
- unreachable
-
-endif: ; preds = %entry
- ret i64 %tmp2
-}
-
-define weak_odr fastcc i64 @_D5tango4text7convert7Integer12__T5parseTaZ5parseFAakPkZl(%"byte[]" %digits_arg, i32 %radix_arg, i32* %ate_arg) nounwind {
-entry:
- %digits_arg26 = extractvalue %"byte[]" %digits_arg, 0 ; <i32> [#uses=3]
- %digits_arg27 = extractvalue %"byte[]" %digits_arg, 1 ; <i8*> [#uses=5]
- %tmp4.i = icmp eq i32 %digits_arg26, 0 ; <i1> [#uses=1]
- br i1 %tmp4.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit, label %forcond.i
-
-forcond.i: ; preds = %forinc.i, %entry
- %sign.1 = phi i1 [ false, %entry ], [ %sign.0, %forinc.i ] ; <i1> [#uses=6]
- %len.0.i = phi i32 [ %tmp33.i, %forinc.i ], [ %digits_arg26, %entry ] ; <i32> [#uses=3]
- %p.0.i = phi i8* [ %tmp30.i, %forinc.i ], [ %digits_arg27, %entry ] ; <i8*> [#uses=6]
- %c.0.in.i = phi i8* [ %tmp30.i, %forinc.i ], [ %digits_arg27, %entry ] ; <i8*> [#uses=1]
- %c.0.i = load i8* %c.0.in.i ; <i8> [#uses=2]
- %tmp8.i = icmp eq i32 %len.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp8.i, label %endfor.i, label %forbody.i
-
-forbody.i: ; preds = %forcond.i
- switch i8 %c.0.i, label %endfor.i [
- i8 32, label %forinc.i
- i8 9, label %forinc.i
- i8 45, label %if20.i
- i8 43, label %if26.i
- ]
-
-if20.i: ; preds = %forbody.i
- br label %forinc.i
-
-if26.i: ; preds = %forbody.i
- br label %forinc.i
-
-forinc.i: ; preds = %if26.i, %if20.i, %forbody.i, %forbody.i
- %sign.0 = phi i1 [ false, %if26.i ], [ true, %if20.i ], [ %sign.1, %forbody.i ], [ %sign.1, %forbody.i ] ; <i1> [#uses=1]
- %tmp30.i = getelementptr i8* %p.0.i, i32 1 ; <i8*> [#uses=2]
- %tmp33.i = add i32 %len.0.i, -1 ; <i32> [#uses=1]
- br label %forcond.i
-
-endfor.i: ; preds = %forbody.i, %forcond.i
- %tmp37.i = icmp eq i8 %c.0.i, 48 ; <i1> [#uses=1]
- %tmp39.i = icmp sgt i32 %len.0.i, 1 ; <i1> [#uses=1]
- %or.cond.i = and i1 %tmp37.i, %tmp39.i ; <i1> [#uses=1]
- br i1 %or.cond.i, label %if40.i, label %endif41.i
-
-if40.i: ; preds = %endfor.i
- %tmp43.i = getelementptr i8* %p.0.i, i32 1 ; <i8*> [#uses=2]
- %tmp44.i = load i8* %tmp43.i ; <i8> [#uses=1]
- %tmp45.i = zext i8 %tmp44.i to i32 ; <i32> [#uses=1]
- switch i32 %tmp45.i, label %endif41.i [
- i32 120, label %case46.i
- i32 88, label %case46.i
- i32 98, label %case51.i
- i32 66, label %case51.i
- i32 111, label %case56.i
- i32 79, label %case56.i
- ]
-
-case46.i: ; preds = %if40.i, %if40.i
- %tmp48.i = getelementptr i8* %p.0.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i
-
-case51.i: ; preds = %if40.i, %if40.i
- %tmp53.i = getelementptr i8* %p.0.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i
-
-case56.i: ; preds = %if40.i, %if40.i
- %tmp58.i = getelementptr i8* %p.0.i, i32 2 ; <i8*> [#uses=1]
- br label %endif41.i
-
-endif41.i: ; preds = %case56.i, %case51.i, %case46.i, %if40.i, %endfor.i
- %r.0.i = phi i32 [ %radix_arg, %if40.i ], [ 8, %case56.i ], [ 2, %case51.i ], [ 16, %case46.i ], [ %radix_arg, %endfor.i ] ; <i32> [#uses=3]
- %p.2.i = phi i8* [ %tmp43.i, %if40.i ], [ %tmp58.i, %case56.i ], [ %tmp53.i, %case51.i ], [ %tmp48.i, %case46.i ], [ %p.0.i, %endfor.i ] ; <i8*> [#uses=4]
- %tmp63.i = icmp eq i32 %r.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp63.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit, label %else66.i
-
-else66.i: ; preds = %endif41.i
- %tmp69.i = icmp eq i32 %r.0.i, %radix_arg ; <i1> [#uses=1]
- br i1 %tmp69.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit, label %if70.i
-
-if70.i: ; preds = %else66.i
- %tmp77.i = icmp eq i32 %radix_arg, 0 ; <i1> [#uses=1]
- br i1 %tmp77.i, label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit, label %if73.i
-
-if73.i: ; preds = %if70.i
- %tmp79.i = getelementptr i8* %p.2.i, i32 -1 ; <i8*> [#uses=1]
- br label %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit
-
-_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit: ; preds = %if73.i, %if70.i, %else66.i, %endif41.i, %entry
- %sign.2 = phi i1 [ false, %entry ], [ %sign.1, %else66.i ], [ %sign.1, %if73.i ], [ %sign.1, %endif41.i ], [ %sign.1, %if70.i ] ; <i1> [#uses=1]
- %radix.0 = phi i32 [ %radix_arg, %entry ], [ %radix_arg, %else66.i ], [ %radix_arg, %if73.i ], [ 10, %endif41.i ], [ %r.0.i, %if70.i ] ; <i32> [#uses=2]
- %p.1.i = phi i8* [ %tmp79.i, %if73.i ], [ %p.2.i, %else66.i ], [ %digits_arg27, %entry ], [ %p.2.i, %endif41.i ], [ %p.2.i, %if70.i ] ; <i8*> [#uses=1]
- %tmp84.i = ptrtoint i8* %p.1.i to i32 ; <i32> [#uses=1]
- %tmp85.i = ptrtoint i8* %digits_arg27 to i32 ; <i32> [#uses=1]
- %tmp86.i = sub i32 %tmp84.i, %tmp85.i ; <i32> [#uses=3]
- %tmp6 = sub i32 %digits_arg26, %tmp86.i ; <i32> [#uses=1]
- br label %foreachcond.i
-
-foreachcond.i: ; preds = %if55.i, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit
- %value.0.i = phi i64 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit ], [ %tmp65.i, %if55.i ] ; <i64> [#uses=3]
- %eaten.0.i = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit ], [ %tmp67.i, %if55.i ] ; <i32> [#uses=2]
- %foreachkey.0.i = phi i32 [ 0, %_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk.exit ], [ %tmp70.i, %if55.i ] ; <i32> [#uses=3]
- %tmp3.i = icmp ult i32 %foreachkey.0.i, %tmp6 ; <i1> [#uses=1]
- br i1 %tmp3.i, label %foreachbody.i, label %foreachend.i
-
-foreachbody.i: ; preds = %foreachcond.i
- %tmp5.sum = add i32 %tmp86.i, %foreachkey.0.i ; <i32> [#uses=1]
- %tmp5.i = getelementptr i8* %digits_arg27, i32 %tmp5.sum ; <i8*> [#uses=1]
- %tmp6.i = load i8* %tmp5.i ; <i8> [#uses=6]
- %tmp6.off84.i = add i8 %tmp6.i, -48 ; <i8> [#uses=1]
- %or.cond.i28 = icmp ugt i8 %tmp6.off84.i, 9 ; <i1> [#uses=1]
- br i1 %or.cond.i28, label %else.i, label %endif.i
-
-else.i: ; preds = %foreachbody.i
- %tmp6.off83.i = add i8 %tmp6.i, -97 ; <i8> [#uses=1]
- %or.cond81.i = icmp ugt i8 %tmp6.off83.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond81.i, label %else24.i, label %if22.i
-
-if22.i: ; preds = %else.i
- %tmp27.i = add i8 %tmp6.i, -39 ; <i8> [#uses=1]
- br label %endif.i
-
-else24.i: ; preds = %else.i
- %tmp6.off.i = add i8 %tmp6.i, -65 ; <i8> [#uses=1]
- %or.cond82.i = icmp ugt i8 %tmp6.off.i, 25 ; <i1> [#uses=1]
- br i1 %or.cond82.i, label %foreachend.i, label %if39.i
-
-if39.i: ; preds = %else24.i
- %tmp44.i29 = add i8 %tmp6.i, -7 ; <i8> [#uses=1]
- br label %endif.i
-
-endif.i: ; preds = %if39.i, %if22.i, %foreachbody.i
- %c.0.i30 = phi i8 [ %tmp27.i, %if22.i ], [ %tmp44.i29, %if39.i ], [ %tmp6.i, %foreachbody.i ] ; <i8> [#uses=1]
- %tmp48.i31 = zext i8 %c.0.i30 to i32 ; <i32> [#uses=1]
- %tmp49.i = add i32 %tmp48.i31, 208 ; <i32> [#uses=1]
- %tmp52.i = and i32 %tmp49.i, 255 ; <i32> [#uses=2]
- %tmp54.i = icmp ult i32 %tmp52.i, %radix.0 ; <i1> [#uses=1]
- br i1 %tmp54.i, label %if55.i, label %foreachend.i
-
-if55.i: ; preds = %endif.i
- %tmp59.i = zext i32 %radix.0 to i64 ; <i64> [#uses=1]
- %tmp61.i = mul i64 %value.0.i, %tmp59.i ; <i64> [#uses=1]
- %tmp64.i = zext i32 %tmp52.i to i64 ; <i64> [#uses=1]
- %tmp65.i = add i64 %tmp61.i, %tmp64.i ; <i64> [#uses=1]
- %tmp67.i = add i32 %eaten.0.i, 1 ; <i32> [#uses=1]
- %tmp70.i = add i32 %foreachkey.0.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i
-
-foreachend.i: ; preds = %endif.i, %else24.i, %foreachcond.i
- %tmp75.i = icmp eq i32* %ate_arg, null ; <i1> [#uses=1]
- br i1 %tmp75.i, label %endif, label %if72.i
-
-if72.i: ; preds = %foreachend.i
- %tmp19 = add i32 %eaten.0.i, %tmp86.i ; <i32> [#uses=1]
- store i32 %tmp19, i32* %ate_arg
- br label %endif
-
-endif: ; preds = %if72.i, %foreachend.i
- %negval = sub i64 0, %value.0.i ; <i64> [#uses=1]
- %condtmp.0 = select i1 %sign.2, i64 %negval, i64 %value.0.i ; <i64> [#uses=1]
- ret i64 %condtmp.0
-}
-
-define weak_odr fastcc i32 @_D5tango4text7convert7Integer11__T4trimTaZ4trimFAaKbKkZk(%"byte[]" %digits_arg, i1* nocapture %sign_arg, i32* nocapture %radix_arg) nounwind {
-entry:
- %digits_arg88 = extractvalue %"byte[]" %digits_arg, 0 ; <i32> [#uses=2]
- %digits_arg89 = extractvalue %"byte[]" %digits_arg, 1 ; <i8*> [#uses=4]
- %tmp4 = icmp eq i32 %digits_arg88, 0 ; <i1> [#uses=1]
- br i1 %tmp4, label %endif, label %forcond
-
-forcond: ; preds = %forinc, %entry
- %len.0 = phi i32 [ %tmp33, %forinc ], [ %digits_arg88, %entry ] ; <i32> [#uses=3]
- %p.0 = phi i8* [ %tmp30, %forinc ], [ %digits_arg89, %entry ] ; <i8*> [#uses=6]
- %c.0.in = phi i8* [ %tmp30, %forinc ], [ %digits_arg89, %entry ] ; <i8*> [#uses=1]
- %c.0 = load i8* %c.0.in ; <i8> [#uses=2]
- %tmp8 = icmp eq i32 %len.0, 0 ; <i1> [#uses=1]
- br i1 %tmp8, label %endfor, label %forbody
-
-forbody: ; preds = %forcond
- switch i8 %c.0, label %endfor [
- i8 32, label %forinc
- i8 9, label %forinc
- i8 45, label %if20
- i8 43, label %if26
- ]
-
-if20: ; preds = %forbody
- store i1 true, i1* %sign_arg
- br label %forinc
-
-if26: ; preds = %forbody
- store i1 false, i1* %sign_arg
- br label %forinc
-
-forinc: ; preds = %if26, %if20, %forbody, %forbody
- %tmp30 = getelementptr i8* %p.0, i32 1 ; <i8*> [#uses=2]
- %tmp33 = add i32 %len.0, -1 ; <i32> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forbody, %forcond
- %tmp34 = load i32* %radix_arg ; <i32> [#uses=4]
- %tmp37 = icmp eq i8 %c.0, 48 ; <i1> [#uses=1]
- %tmp39 = icmp sgt i32 %len.0, 1 ; <i1> [#uses=1]
- %or.cond = and i1 %tmp37, %tmp39 ; <i1> [#uses=1]
- br i1 %or.cond, label %if40, label %endif41
-
-if40: ; preds = %endfor
- %tmp43 = getelementptr i8* %p.0, i32 1 ; <i8*> [#uses=2]
- %tmp44 = load i8* %tmp43 ; <i8> [#uses=1]
- %tmp45 = zext i8 %tmp44 to i32 ; <i32> [#uses=1]
- switch i32 %tmp45, label %endif41 [
- i32 120, label %case46
- i32 88, label %case46
- i32 98, label %case51
- i32 66, label %case51
- i32 111, label %case56
- i32 79, label %case56
- ]
-
-case46: ; preds = %if40, %if40
- %tmp48 = getelementptr i8* %p.0, i32 2 ; <i8*> [#uses=1]
- br label %endif41
-
-case51: ; preds = %if40, %if40
- %tmp53 = getelementptr i8* %p.0, i32 2 ; <i8*> [#uses=1]
- br label %endif41
-
-case56: ; preds = %if40, %if40
- %tmp58 = getelementptr i8* %p.0, i32 2 ; <i8*> [#uses=1]
- br label %endif41
-
-endif41: ; preds = %case56, %case51, %case46, %if40, %endfor
- %r.0 = phi i32 [ %tmp34, %if40 ], [ 8, %case56 ], [ 2, %case51 ], [ 16, %case46 ], [ %tmp34, %endfor ] ; <i32> [#uses=3]
- %p.2 = phi i8* [ %tmp43, %if40 ], [ %tmp58, %case56 ], [ %tmp53, %case51 ], [ %tmp48, %case46 ], [ %p.0, %endfor ] ; <i8*> [#uses=4]
- %tmp63 = icmp eq i32 %r.0, 0 ; <i1> [#uses=1]
- br i1 %tmp63, label %if64, label %else66
-
-if64: ; preds = %endif41
- store i32 10, i32* %radix_arg
- br label %endif
-
-else66: ; preds = %endif41
- %tmp69 = icmp eq i32 %tmp34, %r.0 ; <i1> [#uses=1]
- br i1 %tmp69, label %endif, label %if70
-
-if70: ; preds = %else66
- %tmp77 = icmp eq i32 %tmp34, 0 ; <i1> [#uses=1]
- br i1 %tmp77, label %else75, label %if73
-
-if73: ; preds = %if70
- %tmp79 = getelementptr i8* %p.2, i32 -1 ; <i8*> [#uses=1]
- br label %endif
-
-else75: ; preds = %if70
- store i32 %r.0, i32* %radix_arg
- br label %endif
-
-endif: ; preds = %else75, %if73, %else66, %if64, %entry
- %p.1 = phi i8* [ %p.2, %if64 ], [ %tmp79, %if73 ], [ %p.2, %else75 ], [ %p.2, %else66 ], [ %digits_arg89, %entry ] ; <i8*> [#uses=1]
- %tmp84 = ptrtoint i8* %p.1 to i32 ; <i32> [#uses=1]
- %tmp85 = ptrtoint i8* %digits_arg89 to i32 ; <i32> [#uses=1]
- %tmp86 = sub i32 %tmp84, %tmp85 ; <i32> [#uses=1]
- ret i32 %tmp86
-}
-
-define weak_odr fastcc i64 @_D5tango4text7convert7Integer14__T7convertTaZ7convertFAakPkZm(%"byte[]" %digits_arg, i32 %radix_arg, i32* %ate_arg) nounwind {
-entry:
- %digits_arg79 = extractvalue %"byte[]" %digits_arg, 0 ; <i32> [#uses=1]
- %digits_arg80 = extractvalue %"byte[]" %digits_arg, 1 ; <i8*> [#uses=1]
- br label %foreachcond
-
-foreachcond: ; preds = %if55, %entry
- %value.0 = phi i64 [ 0, %entry ], [ %tmp65, %if55 ] ; <i64> [#uses=3]
- %eaten.0 = phi i32 [ 0, %entry ], [ %tmp67, %if55 ] ; <i32> [#uses=2]
- %foreachkey.0 = phi i32 [ 0, %entry ], [ %tmp70, %if55 ] ; <i32> [#uses=3]
- %tmp3 = icmp ult i32 %foreachkey.0, %digits_arg79 ; <i1> [#uses=1]
- br i1 %tmp3, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp5 = getelementptr i8* %digits_arg80, i32 %foreachkey.0 ; <i8*> [#uses=1]
- %tmp6 = load i8* %tmp5 ; <i8> [#uses=6]
- %tmp6.off84 = add i8 %tmp6, -48 ; <i8> [#uses=1]
- %or.cond = icmp ugt i8 %tmp6.off84, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %else, label %endif
-
-else: ; preds = %foreachbody
- %tmp6.off83 = add i8 %tmp6, -97 ; <i8> [#uses=1]
- %or.cond81 = icmp ugt i8 %tmp6.off83, 25 ; <i1> [#uses=1]
- br i1 %or.cond81, label %else24, label %if22
-
-if22: ; preds = %else
- %tmp27 = add i8 %tmp6, -39 ; <i8> [#uses=1]
- br label %endif
-
-else24: ; preds = %else
- %tmp6.off = add i8 %tmp6, -65 ; <i8> [#uses=1]
- %or.cond82 = icmp ugt i8 %tmp6.off, 25 ; <i1> [#uses=1]
- br i1 %or.cond82, label %foreachend, label %if39
-
-if39: ; preds = %else24
- %tmp44 = add i8 %tmp6, -7 ; <i8> [#uses=1]
- br label %endif
-
-endif: ; preds = %if39, %if22, %foreachbody
- %c.0 = phi i8 [ %tmp27, %if22 ], [ %tmp44, %if39 ], [ %tmp6, %foreachbody ] ; <i8> [#uses=1]
- %tmp48 = zext i8 %c.0 to i32 ; <i32> [#uses=1]
- %tmp49 = add i32 %tmp48, 208 ; <i32> [#uses=1]
- %tmp52 = and i32 %tmp49, 255 ; <i32> [#uses=2]
- %tmp54 = icmp ult i32 %tmp52, %radix_arg ; <i1> [#uses=1]
- br i1 %tmp54, label %if55, label %foreachend
-
-if55: ; preds = %endif
- %tmp59 = zext i32 %radix_arg to i64 ; <i64> [#uses=1]
- %tmp61 = mul i64 %value.0, %tmp59 ; <i64> [#uses=1]
- %tmp64 = zext i32 %tmp52 to i64 ; <i64> [#uses=1]
- %tmp65 = add i64 %tmp61, %tmp64 ; <i64> [#uses=1]
- %tmp67 = add i32 %eaten.0, 1 ; <i32> [#uses=1]
- %tmp70 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %endif, %else24, %foreachcond
- %tmp75 = icmp eq i32* %ate_arg, null ; <i1> [#uses=1]
- br i1 %tmp75, label %endif73, label %if72
-
-if72: ; preds = %foreachend
- store i32 %eaten.0, i32* %ate_arg
- ret i64 %value.0
-
-endif73: ; preds = %foreachend
- ret i64 %value.0
-}
-
-define weak_odr fastcc %"byte[]" @_D5tango4text7convert7Integer13__T6formatTaZ6formatFAalAaZAa(%"byte[]" %dst_arg, i64 %i_arg, %"byte[]" %fmt_arg) {
-entry:
- %fmt_arg41.i = extractvalue %"byte[]" %fmt_arg, 0 ; <i32> [#uses=3]
- %fmt_arg42.i = extractvalue %"byte[]" %fmt_arg, 1 ; <i8*> [#uses=2]
- %tmp1.i = icmp eq i32 %fmt_arg41.i, 0 ; <i1> [#uses=1]
- br i1 %tmp1.i, label %_D5tango4text7convert7Integer13__T6decodeTaZ6decodeFAaKaJaJiZv.exit, label %else.i
-
-else.i: ; preds = %entry
- %tmp4.i = load i8* %fmt_arg42.i ; <i8> [#uses=2]
- %tmp7.i = icmp ugt i32 %fmt_arg41.i, 1 ; <i1> [#uses=1]
- br i1 %tmp7.i, label %forcond.i, label %_D5tango4text7convert7Integer13__T6decodeTaZ6decodeFAaKaJaJiZv.exit
-
-forcond.i: ; preds = %forinc.i, %else.i
- %width.1 = phi i32 [ 0, %else.i ], [ %width.0, %forinc.i ] ; <i32> [#uses=3]
- %pre.1 = phi i8 [ -1, %else.i ], [ %pre.0, %forinc.i ] ; <i8> [#uses=2]
- %j.0.i = phi i32 [ %tmp38.i, %forinc.i ], [ 1, %else.i ] ; <i32> [#uses=2]
- %fmt_arg42.pn.i = phi i8* [ %p.0.i, %forinc.i ], [ %fmt_arg42.i, %else.i ] ; <i8*> [#uses=1]
- %p.0.i = getelementptr i8* %fmt_arg42.pn.i, i32 1 ; <i8*> [#uses=2]
- %tmp16.i = icmp ult i32 %j.0.i, %fmt_arg41.i ; <i1> [#uses=1]
- br i1 %tmp16.i, label %forbody.i, label %_D5tango4text7convert7Integer13__T6decodeTaZ6decodeFAaKaJaJiZv.exit
-
-forbody.i: ; preds = %forcond.i
- %tmp18.i = load i8* %p.0.i ; <i8> [#uses=3]
- %tmp18.i.off = add i8 %tmp18.i, -48 ; <i8> [#uses=1]
- %or.cond = icmp ugt i8 %tmp18.i.off, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %forinc.i, label %if25.i
-
-if25.i: ; preds = %forbody.i
- %tmp29.i = mul i32 %width.1, 10 ; <i32> [#uses=1]
- %tmp32.i = zext i8 %tmp18.i to i32 ; <i32> [#uses=1]
- %tmp33.i = add i32 %tmp32.i, -48 ; <i32> [#uses=1]
- %tmp34.i = add i32 %tmp29.i, %tmp33.i ; <i32> [#uses=1]
- br label %forinc.i
-
-forinc.i: ; preds = %if25.i, %forbody.i
- %width.0 = phi i32 [ %tmp34.i, %if25.i ], [ %width.1, %forbody.i ] ; <i32> [#uses=1]
- %pre.0 = phi i8 [ %pre.1, %if25.i ], [ %tmp18.i, %forbody.i ] ; <i8> [#uses=1]
- %tmp38.i = add i32 %j.0.i, 1 ; <i32> [#uses=1]
- br label %forcond.i
-
-_D5tango4text7convert7Integer13__T6decodeTaZ6decodeFAaKaJaJiZv.exit: ; preds = %forcond.i, %else.i, %entry
- %width.3 = phi i32 [ 0, %entry ], [ %width.1, %forcond.i ], [ 0, %else.i ] ; <i32> [#uses=1]
- %type.0 = phi i8 [ 100, %entry ], [ %tmp4.i, %forcond.i ], [ %tmp4.i, %else.i ] ; <i8> [#uses=1]
- %pre.3 = phi i8 [ -1, %entry ], [ %pre.1, %forcond.i ], [ -1, %else.i ] ; <i8> [#uses=1]
- %tmp6 = call fastcc %"byte[]" @_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa(%"byte[]" %dst_arg, i64 %i_arg, i8 %type.0, i8 %pre.3, i32 %width.3) ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp6
-}
-
-define weak_odr fastcc void @_D5tango4text7convert7Integer13__T6decodeTaZ6decodeFAaKaJaJiZv(%"byte[]" %fmt_arg, i8* nocapture %type_arg, i8* nocapture %pre_arg, i32* nocapture %width_arg) nounwind {
-entry:
- %fmt_arg41 = extractvalue %"byte[]" %fmt_arg, 0 ; <i32> [#uses=3]
- %fmt_arg42 = extractvalue %"byte[]" %fmt_arg, 1 ; <i8*> [#uses=2]
- store i8 -1, i8* %pre_arg
- store i32 0, i32* %width_arg
- %tmp1 = icmp eq i32 %fmt_arg41, 0 ; <i1> [#uses=1]
- br i1 %tmp1, label %if, label %else
-
-if: ; preds = %entry
- store i8 100, i8* %type_arg
- ret void
-
-else: ; preds = %entry
- %tmp4 = load i8* %fmt_arg42 ; <i8> [#uses=1]
- store i8 %tmp4, i8* %type_arg
- %tmp7 = icmp ugt i32 %fmt_arg41, 1 ; <i1> [#uses=1]
- br i1 %tmp7, label %forcond, label %endif
-
-forcond: ; preds = %forinc, %else
- %j.0 = phi i32 [ %tmp38, %forinc ], [ 1, %else ] ; <i32> [#uses=2]
- %fmt_arg42.pn = phi i8* [ %p.0, %forinc ], [ %fmt_arg42, %else ] ; <i8*> [#uses=1]
- %p.0 = getelementptr i8* %fmt_arg42.pn, i32 1 ; <i8*> [#uses=2]
- %tmp16 = icmp ult i32 %j.0, %fmt_arg41 ; <i1> [#uses=1]
- br i1 %tmp16, label %forbody, label %endif
-
-forbody: ; preds = %forcond
- %tmp18 = load i8* %p.0 ; <i8> [#uses=3]
- %tmp18.off = add i8 %tmp18, -48 ; <i8> [#uses=1]
- %or.cond = icmp ugt i8 %tmp18.off, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %else27, label %if25
-
-if25: ; preds = %forbody
- %tmp28 = load i32* %width_arg ; <i32> [#uses=1]
- %tmp29 = mul i32 %tmp28, 10 ; <i32> [#uses=1]
- %tmp32 = zext i8 %tmp18 to i32 ; <i32> [#uses=1]
- %tmp33 = add i32 %tmp32, -48 ; <i32> [#uses=1]
- %tmp34 = add i32 %tmp29, %tmp33 ; <i32> [#uses=1]
- store i32 %tmp34, i32* %width_arg
- br label %forinc
-
-else27: ; preds = %forbody
- store i8 %tmp18, i8* %pre_arg
- br label %forinc
-
-forinc: ; preds = %else27, %if25
- %tmp38 = add i32 %j.0, 1 ; <i32> [#uses=1]
- br label %forcond
-
-endif: ; preds = %forcond, %else
- ret void
-}
-
-define weak_odr fastcc %"byte[]" @_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa(%"byte[]" %dst_arg, i64 %i_arg, i8 %type_arg, i8 %pre_arg, i32 %width_arg) {
-entry:
- %.nongc_mem182 = alloca [18 x i8], align 1 ; <[18 x i8]*> [#uses=2]
- %.nongc_mem182.sub = getelementptr [18 x i8]* %.nongc_mem182, i32 0, i32 0 ; <i8*> [#uses=2]
- %dst_arg179 = extractvalue %"byte[]" %dst_arg, 0 ; <i32> [#uses=6]
- %dst_arg180 = extractvalue %"byte[]" %dst_arg, 1 ; <i8*> [#uses=2]
- %tmp3 = icmp eq i32 %dst_arg179, 0 ; <i1> [#uses=1]
- br i1 %tmp3, label %endif, label %if
-
-if: ; preds = %entry
- %tmp5 = zext i8 %type_arg to i32 ; <i32> [#uses=1]
- switch i32 %tmp5, label %default37 [
- i32 100, label %case8
- i32 68, label %case8
- i32 103, label %case8
- i32 71, label %case8
- i32 117, label %switchend
- i32 85, label %switchend
- i32 98, label %case28
- i32 66, label %case28
- i32 111, label %case31
- i32 79, label %case31
- i32 120, label %case33
- i32 88, label %case35
- ]
-
-case8: ; preds = %if, %if, %if, %if
- %tmp10 = icmp slt i64 %i_arg, 0 ; <i1> [#uses=1]
- br i1 %tmp10, label %if11, label %else
-
-if11: ; preds = %case8
- %negval = sub i64 0, %i_arg ; <i64> [#uses=1]
- br label %switchend
-
-else: ; preds = %case8
- %tmp16 = icmp eq i8 %pre_arg, 32 ; <i1> [#uses=1]
- br i1 %tmp16, label %switchend, label %else19
-
-else19: ; preds = %else
- %tmp22 = icmp eq i8 %pre_arg, 43 ; <i1> [#uses=1]
- br i1 %tmp22, label %if23, label %switchend
-
-if23: ; preds = %else19
- br label %switchend
-
-case28: ; preds = %if, %if
- br label %switchend
-
-case31: ; preds = %if, %if
- br label %switchend
-
-case33: ; preds = %if
- br label %switchend
-
-case35: ; preds = %if
- br label %switchend
-
-default37: ; preds = %if
- tail call void @llvm.memcpy.i32(i8* %.nongc_mem182.sub, i8* getelementptr ([18 x i8]* @.str263, i32 0, i32 0), i32 17, i32 1)
- %tmp38 = getelementptr [18 x i8]* %.nongc_mem182, i32 0, i32 17 ; <i8*> [#uses=1]
- store i8 %type_arg, i8* %tmp38
- %.gc_mem40 = tail call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 20) ; <i8*> [#uses=3]
- tail call void @llvm.memcpy.i32(i8* %.gc_mem40, i8* %.nongc_mem182.sub, i32 18, i32 1)
- %tmp41 = getelementptr i8* %.gc_mem40, i32 18 ; <i8*> [#uses=1]
- %tmp41181 = bitcast i8* %tmp41 to i16* ; <i16*> [#uses=1]
- %tmp = load i16* bitcast ([3 x i8]* @.str264 to i16*), align 2 ; <i16> [#uses=1]
- store i16 %tmp, i16* %tmp41181, align 1
- %tmp42 = insertvalue %"byte[]" { i32 20, i8* undef }, i8* %.gc_mem40, 1 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp42
-
-switchend: ; preds = %case35, %case33, %case31, %case28, %if23, %else19, %else, %if11, %if, %if
- %index.1 = phi i32 [ 7, %case35 ], [ 6, %case33 ], [ 5, %case31 ], [ 4, %case28 ], [ 0, %if ], [ 0, %if ], [ 1, %if11 ], [ 3, %if23 ], [ 0, %else19 ], [ 2, %else ] ; <i32> [#uses=3]
- %pre.0 = phi i8 [ %pre_arg, %case35 ], [ %pre_arg, %case33 ], [ %pre_arg, %case31 ], [ %pre_arg, %case28 ], [ 35, %else ], [ 35, %if ], [ 35, %if23 ], [ 35, %else19 ], [ 35, %if11 ], [ 35, %if ] ; <i8> [#uses=1]
- %i.1 = phi i64 [ %i_arg, %case35 ], [ %i_arg, %case33 ], [ %i_arg, %case31 ], [ %i_arg, %case28 ], [ %i_arg, %if ], [ %i_arg, %if ], [ %negval, %if11 ], [ %i_arg, %if23 ], [ %i_arg, %else19 ], [ %i_arg, %else ] ; <i64> [#uses=3]
- %tmp48 = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %index.1, i32 2 ; <%"byte[]"*> [#uses=1]
- %tmp49 = load %"byte[]"* %tmp48 ; <%"byte[]"> [#uses=1]
- %tmp49178 = extractvalue %"byte[]" %tmp49, 1 ; <i8*> [#uses=2]
- %tmp51 = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %index.1, i32 0 ; <i32*> [#uses=1]
- %tmp52 = load i32* %tmp51 ; <i32> [#uses=3]
- %tmp56 = getelementptr i8* %dst_arg180, i32 %dst_arg179 ; <i8*> [#uses=2]
- %tmp58 = icmp ugt i64 %i.1, 4294967295 ; <i1> [#uses=1]
- br i1 %tmp58, label %dowhile82, label %if59
-
-if59: ; preds = %switchend
- %tmp63 = trunc i64 %i.1 to i32 ; <i32> [#uses=1]
- br label %dowhile
-
-dowhile: ; preds = %andand, %if59
- %p.0 = phi i8* [ %tmp56, %if59 ], [ %tmp65, %andand ] ; <i8*> [#uses=1]
- %v.0 = phi i32 [ %tmp63, %if59 ], [ %tmp75, %andand ] ; <i32> [#uses=2]
- %len.0 = phi i32 [ %dst_arg179, %if59 ], [ %tmp78, %andand ] ; <i32> [#uses=3]
- %tmp65 = getelementptr i8* %p.0, i32 -1 ; <i8*> [#uses=4]
- %tmp68 = urem i32 %v.0, %tmp52 ; <i32> [#uses=1]
- %tmp71 = getelementptr i8* %tmp49178, i32 %tmp68 ; <i8*> [#uses=1]
- %tmp72 = load i8* %tmp71 ; <i8> [#uses=1]
- store i8 %tmp72, i8* %tmp65
- %tmp75 = udiv i32 %v.0, %tmp52 ; <i32> [#uses=2]
- %tmp76 = icmp eq i32 %tmp75, 0 ; <i1> [#uses=1]
- br i1 %tmp76, label %endif60, label %andand
-
-andand: ; preds = %dowhile
- %tmp78 = add i32 %len.0, -1 ; <i32> [#uses=2]
- %tmp79 = icmp eq i32 %len.0, 1 ; <i1> [#uses=1]
- br i1 %tmp79, label %endif60, label %dowhile
-
-dowhile82: ; preds = %andand100, %switchend
- %p.2 = phi i8* [ %tmp86, %andand100 ], [ %tmp56, %switchend ] ; <i8*> [#uses=1]
- %v80.0 = phi i64 [ %tmp99, %andand100 ], [ %i.1, %switchend ] ; <i64> [#uses=2]
- %len.2 = phi i32 [ %tmp104, %andand100 ], [ %dst_arg179, %switchend ] ; <i32> [#uses=3]
- %tmp86 = getelementptr i8* %p.2, i32 -1 ; <i8*> [#uses=4]
- %tmp88 = zext i32 %tmp52 to i64 ; <i64> [#uses=2]
- %tmp90 = urem i64 %v80.0, %tmp88 ; <i64> [#uses=1]
- %tmp91 = trunc i64 %tmp90 to i32 ; <i32> [#uses=1]
- %tmp94 = getelementptr i8* %tmp49178, i32 %tmp91 ; <i8*> [#uses=1]
- %tmp95 = load i8* %tmp94 ; <i8> [#uses=1]
- store i8 %tmp95, i8* %tmp86
- %tmp99 = udiv i64 %v80.0, %tmp88 ; <i64> [#uses=2]
- %tmp102 = icmp eq i64 %tmp99, 0 ; <i1> [#uses=1]
- br i1 %tmp102, label %endif60, label %andand100
-
-andand100: ; preds = %dowhile82
- %tmp104 = add i32 %len.2, -1 ; <i32> [#uses=2]
- %tmp105 = icmp eq i32 %len.2, 1 ; <i1> [#uses=1]
- br i1 %tmp105, label %endif60, label %dowhile82
-
-endif60: ; preds = %andand100, %dowhile82, %andand, %dowhile
- %p.1 = phi i8* [ %tmp65, %andand ], [ %tmp65, %dowhile ], [ %tmp86, %andand100 ], [ %tmp86, %dowhile82 ] ; <i8*> [#uses=1]
- %len.1 = phi i32 [ %tmp78, %andand ], [ %len.0, %dowhile ], [ %tmp104, %andand100 ], [ %len.2, %dowhile82 ] ; <i32> [#uses=2]
- %tmp109 = icmp eq i8 %pre.0, 35 ; <i1> [#uses=1]
- br i1 %tmp109, label %condtrue, label %condend
-
-condtrue: ; preds = %endif60
- %tmp111 = getelementptr [8 x %nest.parseListLine]* @.constarray262, i32 0, i32 %index.1, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp112 = load %"byte[]"* %tmp111 ; <%"byte[]"> [#uses=1]
- br label %condend
-
-condend: ; preds = %condtrue, %endif60
- %condtmp.0 = phi %"byte[]" [ %tmp112, %condtrue ], [ zeroinitializer, %endif60 ] ; <%"byte[]"> [#uses=2]
- %condtmp.0175 = extractvalue %"byte[]" %condtmp.0, 0 ; <i32> [#uses=4]
- %condtmp.0176 = extractvalue %"byte[]" %condtmp.0, 1 ; <i8*> [#uses=1]
- %tmp117 = icmp ugt i32 %len.1, %condtmp.0175 ; <i1> [#uses=1]
- br i1 %tmp117, label %if118, label %endif
-
-if118: ; preds = %condend
- %tmp123 = add i32 %condtmp.0175, 1 ; <i32> [#uses=1]
- %tmp124 = sub i32 %len.1, %tmp123 ; <i32> [#uses=2]
- %tmp129 = icmp eq i32 %width_arg, 0 ; <i1> [#uses=1]
- br i1 %tmp129, label %endif127, label %if126
-
-if126: ; preds = %if118
- %tmp133 = sub i32 %dst_arg179, %width_arg ; <i32> [#uses=1]
- %tmp136 = sub i32 %tmp133, %condtmp.0175 ; <i32> [#uses=1]
- br label %whilecond
-
-whilecond: ; preds = %whilebody, %if126
- %p.3 = phi i8* [ %p.1, %if126 ], [ %tmp146, %whilebody ] ; <i8*> [#uses=1]
- %len.3 = phi i32 [ %tmp124, %if126 ], [ %tmp148, %whilebody ] ; <i32> [#uses=4]
- %tmp139 = icmp sgt i32 %len.3, %tmp136 ; <i1> [#uses=1]
- %tmp143 = icmp sgt i32 %len.3, 0 ; <i1> [#uses=1]
- %or.cond = and i1 %tmp139, %tmp143 ; <i1> [#uses=1]
- br i1 %or.cond, label %whilebody, label %endif127
-
-whilebody: ; preds = %whilecond
- %tmp146 = getelementptr i8* %p.3, i32 -1 ; <i8*> [#uses=2]
- store i8 48, i8* %tmp146
- %tmp148 = add i32 %len.3, -1 ; <i32> [#uses=1]
- br label %whilecond
-
-endif127: ; preds = %whilecond, %if118
- %len.4 = phi i32 [ %len.3, %whilecond ], [ %tmp124, %if118 ] ; <i32> [#uses=2]
- %tmp156 = getelementptr i8* %dst_arg180, i32 %len.4 ; <i8*> [#uses=2]
- tail call void @llvm.memcpy.i32(i8* %tmp156, i8* %condtmp.0176, i32 %condtmp.0175, i32 1)
- %tmp170 = sub i32 %dst_arg179, %len.4 ; <i32> [#uses=1]
- %tmp171 = insertvalue %"byte[]" undef, i32 %tmp170, 0 ; <%"byte[]"> [#uses=1]
- %tmp172 = insertvalue %"byte[]" %tmp171, i8* %tmp156, 1 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp172
-
-endif: ; preds = %condend, %entry
- ret %"byte[]" { i32 24, i8* getelementptr ([25 x i8]* @.str265, i32 0, i32 0) }
-}
-
-define weak_odr fastcc i32 @_D5tango4text7convert7Integer11__T4atoiTaZ4atoiFAaiZk(%"byte[]" %s_arg, i32 %radix_arg) nounwind readonly {
-entry:
- %s_arg23 = extractvalue %"byte[]" %s_arg, 0 ; <i32> [#uses=1]
- %s_arg24 = extractvalue %"byte[]" %s_arg, 1 ; <i8*> [#uses=1]
- br label %foreachcond
-
-foreachcond: ; preds = %if, %entry
- %value.0 = phi i32 [ 0, %entry ], [ %tmp19, %if ] ; <i32> [#uses=2]
- %foreachkey.0 = phi i32 [ 0, %entry ], [ %tmp21, %if ] ; <i32> [#uses=3]
- %tmp3 = icmp ult i32 %foreachkey.0, %s_arg23 ; <i1> [#uses=1]
- br i1 %tmp3, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp5 = getelementptr i8* %s_arg24, i32 %foreachkey.0 ; <i8*> [#uses=1]
- %tmp6 = load i8* %tmp5 ; <i8> [#uses=2]
- %tmp6.off = add i8 %tmp6, -48 ; <i8> [#uses=1]
- %or.cond = icmp ugt i8 %tmp6.off, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %foreachend, label %if
-
-if: ; preds = %foreachbody
- %tmp15 = mul i32 %value.0, %radix_arg ; <i32> [#uses=1]
- %tmp17 = zext i8 %tmp6 to i32 ; <i32> [#uses=1]
- %tmp18 = add i32 %tmp17, -48 ; <i32> [#uses=1]
- %tmp19 = add i32 %tmp15, %tmp18 ; <i32> [#uses=1]
- %tmp21 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachbody, %foreachcond
- ret i32 %value.0
-}
-
-define weak_odr fastcc %"char[][]" @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa(%"byte[]" %src_arg) {
-entry:
- %.frame = alloca %nest.splitLines, align 8 ; <%nest.splitLines*> [#uses=5]
- %.rettmp = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %.rettmp8 = alloca %"tango.text.Util.LineFruct!(char).LineFruct", align 8 ; <%"tango.text.Util.LineFruct!(char).LineFruct"*> [#uses=3]
- %count = getelementptr %nest.splitLines* %.frame, i32 0, i32 0 ; <i32*> [#uses=3]
- %result = getelementptr %nest.splitLines* %.frame, i32 0, i32 1 ; <%"char[][]"*> [#uses=1]
- store i32 0, i32* %count, align 8
- %src_arg8.i = extractvalue %"byte[]" %src_arg, 0 ; <i32> [#uses=1]
- %src_arg9.i = extractvalue %"byte[]" %src_arg, 1 ; <i8*> [#uses=1]
- %0 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %src_arg8.i, i32* %0, align 8
- %.sret_arg10.1.i = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %src_arg9.i, i8** %.sret_arg10.1.i, align 4
- %tmp1 = bitcast %nest.splitLines* %.frame to i8* ; <i8*> [#uses=2]
- %tmp2 = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func = insertvalue %"int delegate(ref char[])" %tmp2, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody41MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp3 = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp, %"int delegate(ref char[])" %.func) ; <i32> [#uses=0]
- %tmp4 = load i32* %count, align 8 ; <i32> [#uses=2]
- %.gc_mem = call noalias i8* @_d_newarrayT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D12TypeInfo_AAa6__initZ to %object.TypeInfo*), i32 %tmp4) ; <i8*> [#uses=1]
- %.gc_mem5 = bitcast i8* %.gc_mem to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp6 = getelementptr %nest.splitLines* %.frame, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4, i32* %tmp6
- %tmp7 = getelementptr %nest.splitLines* %.frame, i32 0, i32 1, i32 1 ; <%"byte[]"**> [#uses=1]
- store %"byte[]"* %.gc_mem5, %"byte[]"** %tmp7
- store i32 0, i32* %count, align 8
- %src_arg8.i15 = extractvalue %"byte[]" %src_arg, 0 ; <i32> [#uses=1]
- %src_arg9.i16 = extractvalue %"byte[]" %src_arg, 1 ; <i8*> [#uses=1]
- %1 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %src_arg8.i15, i32* %1, align 8
- %.sret_arg10.1.i17 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %src_arg9.i16, i8** %.sret_arg10.1.i17, align 4
- %tmp11 = insertvalue %"int delegate(ref char[])" undef, i8* %tmp1, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func12 = insertvalue %"int delegate(ref char[])" %tmp11, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody42MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp13 = call fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* %.rettmp8, %"int delegate(ref char[])" %.func12) ; <i32> [#uses=0]
- %tmp14 = load %"char[][]"* %result ; <%"char[][]"> [#uses=1]
- ret %"char[][]" %tmp14
-}
-
-define weak_odr fastcc void @_D5tango4text4Util12__T5linesTaZ5linesFAaZS5tango4text4Util16__T9LineFructTaZ9LineFruct(%"tango.text.Util.LineFruct!(char).LineFruct"* noalias nocapture sret %.sret_arg, %"byte[]" %src_arg) nounwind {
-entry:
- %src_arg8 = extractvalue %"byte[]" %src_arg, 0 ; <i32> [#uses=1]
- %src_arg9 = extractvalue %"byte[]" %src_arg, 1 ; <i8*> [#uses=1]
- %0 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.sret_arg, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %src_arg8, i32* %0
- %.sret_arg10.1 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.sret_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %src_arg9, i8** %.sret_arg10.1, align 4
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util16__T9LineFructTaZ9LineFruct7opApplyMFDFKAaZiZi(%"tango.text.Util.LineFruct!(char).LineFruct"* nocapture %.this_arg, %"int delegate(ref char[])" %dg_arg) {
-entry:
- %line = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=7]
- %dg_arg70 = extractvalue %"int delegate(ref char[])" %dg_arg, 0 ; <i8*> [#uses=2]
- %dg_arg71 = extractvalue %"int delegate(ref char[])" %dg_arg, 1 ; <i32 (i8*, %"byte[]"*)*> [#uses=2]
- store %"byte[]" zeroinitializer, %"byte[]"* %line, align 8
- br label %whilecond
-
-whilecond: ; preds = %endif40, %entry
- %mark.0 = phi i32 [ 0, %entry ], [ %tmp43, %endif40 ] ; <i32> [#uses=7]
- %ret.0 = phi i32 [ 0, %entry ], [ %tmp37, %endif40 ] ; <i32> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.this_arg, i32 0, i32 0 ; <%"byte[]"*> [#uses=1]
- %tmp2 = load %"byte[]"* %tmp1 ; <%"byte[]"> [#uses=2]
- %source_arg16.i = extractvalue %"byte[]" %tmp2, 0 ; <i32> [#uses=3]
- %source_arg17.i = extractvalue %"byte[]" %tmp2, 1 ; <i8*> [#uses=2]
- %tmp2.i = icmp ult i32 %source_arg16.i, %mark.0 ; <i1> [#uses=1]
- %start.0.i = select i1 %tmp2.i, i32 %source_arg16.i, i32 %mark.0 ; <i32> [#uses=4]
- %tmp7.i = getelementptr i8* %source_arg17.i, i32 %start.0.i ; <i8*> [#uses=1]
- %tmp12.i = sub i32 %source_arg16.i, %start.0.i ; <i32> [#uses=2]
- %tmp7.sum.i = add i32 %start.0.i, -1 ; <i32> [#uses=1]
- %tmp2.i.i = getelementptr i8* %source_arg17.i, i32 %tmp7.sum.i ; <i8*> [#uses=1]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %whilecond
- %len.0.i.i = phi i32 [ %tmp12.i, %whilecond ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %p.0.i.i = phi i8* [ %tmp2.i.i, %whilecond ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp12.i.i = icmp eq i8 %tmp8.i.i, 10 ; <i1> [#uses=1]
- br i1 %tmp12.i.i, label %if.i.i, label %forcond.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp15.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp16.i.i = ptrtoint i8* %tmp7.i to i32 ; <i32> [#uses=1]
- %tmp17.i.i = sub i32 %tmp15.i.i, %tmp16.i.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
-
-_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit: ; preds = %if.i.i, %forcond.i.i
- %tmp1318.i = phi i32 [ %tmp17.i.i, %if.i.i ], [ %tmp12.i, %forcond.i.i ] ; <i32> [#uses=1]
- %tmp15.i = add i32 %tmp1318.i, %start.0.i ; <i32> [#uses=6]
- %tmp7 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.this_arg, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp7 ; <i32> [#uses=3]
- %tmp8 = icmp ult i32 %tmp15.i, %.len ; <i1> [#uses=1]
- br i1 %tmp8, label %whilebody, label %endwhile
-
-whilebody: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp11 = icmp eq i32 %tmp15.i, 0 ; <i1> [#uses=1]
- br i1 %tmp11, label %whilebody.endif_crit_edge, label %andand
-
-whilebody.endif_crit_edge: ; preds = %whilebody
- %tmp25.pre = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.this_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- br label %endif
-
-andand: ; preds = %whilebody
- %tmp15 = add i32 %tmp15.i, -1 ; <i32> [#uses=2]
- %tmp16 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.this_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=2]
- %.ptr = load i8** %tmp16 ; <i8*> [#uses=1]
- %tmp17 = getelementptr i8* %.ptr, i32 %tmp15 ; <i8*> [#uses=1]
- %tmp18 = load i8* %tmp17 ; <i8> [#uses=1]
- %tmp20 = icmp eq i8 %tmp18, 13 ; <i1> [#uses=1]
- %tmp22.tmp4 = select i1 %tmp20, i32 %tmp15, i32 %tmp15.i ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %andand, %whilebody.endif_crit_edge
- %tmp25.pre-phi = phi i8** [ %tmp25.pre, %whilebody.endif_crit_edge ], [ %tmp16, %andand ] ; <i8**> [#uses=1]
- %end.0 = phi i32 [ %tmp15.i, %whilebody.endif_crit_edge ], [ %tmp22.tmp4, %andand ] ; <i32> [#uses=1]
- %.ptr26 = load i8** %tmp25.pre-phi ; <i8*> [#uses=1]
- %tmp29 = getelementptr i8* %.ptr26, i32 %mark.0 ; <i8*> [#uses=1]
- %tmp30 = sub i32 %end.0, %mark.0 ; <i32> [#uses=1]
- %tmp31 = getelementptr %"byte[]"* %line, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp30, i32* %tmp31, align 8
- %tmp32 = getelementptr %"byte[]"* %line, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp29, i8** %tmp32
- %tmp37 = call fastcc i32 %dg_arg71(i8* %dg_arg70, %"byte[]"* %line) ; <i32> [#uses=3]
- %tmp38 = icmp eq i32 %tmp37, 0 ; <i1> [#uses=1]
- br i1 %tmp38, label %endif40, label %if39
-
-if39: ; preds = %endif
- ret i32 %tmp37
-
-endif40: ; preds = %endif
- %tmp43 = add i32 %tmp15.i, 1 ; <i32> [#uses=1]
- br label %whilecond
-
-endwhile: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp46 = getelementptr %"tango.text.Util.LineFruct!(char).LineFruct"* %.this_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- %.ptr47 = load i8** %tmp46 ; <i8*> [#uses=1]
- %tmp51 = getelementptr i8* %.ptr47, i32 %mark.0 ; <i8*> [#uses=1]
- %tmp52 = sub i32 %.len, %mark.0 ; <i32> [#uses=1]
- %tmp53 = getelementptr %"byte[]"* %line, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp52, i32* %tmp53, align 8
- %tmp54 = getelementptr %"byte[]"* %line, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp51, i8** %tmp54
- %tmp60 = icmp ugt i32 %mark.0, %.len ; <i1> [#uses=1]
- br i1 %tmp60, label %endif62, label %if61
-
-if61: ; preds = %endwhile
- %tmp67 = call fastcc i32 %dg_arg71(i8* %dg_arg70, %"byte[]"* %line) ; <i32> [#uses=1]
- ret i32 %tmp67
-
-endif62: ; preds = %endwhile
- ret i32 %ret.0
-}
-
-define weak_odr fastcc %"byte[]" @_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa(%"byte[]" %output_arg, %"char[][]" %layout_arg) nounwind {
-entry:
- %output_arg100 = extractvalue %"byte[]" %output_arg, 0 ; <i32> [#uses=2]
- %output_arg101 = extractvalue %"byte[]" %output_arg, 1 ; <i8*> [#uses=3]
- %layout_arg98 = extractvalue %"char[][]" %layout_arg, 0 ; <i32> [#uses=1]
- %layout_arg99 = extractvalue %"char[][]" %layout_arg, 1 ; <%"byte[]"*> [#uses=3]
- %tmp1 = add i32 %layout_arg98, -1 ; <i32> [#uses=1]
- %tmp4 = getelementptr %"byte[]"* %layout_arg99, i32 0, i32 0 ; <i32*> [#uses=1]
- %.len5 = load i32* %tmp4 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"byte[]"* %layout_arg99, i32 0, i32 1 ; <i8**> [#uses=1]
- %.ptr7 = load i8** %tmp6 ; <i8*> [#uses=1]
- br label %foreachcond
-
-foreachcond: ; preds = %foreachnext, %entry
- %foreachkey.0 = phi i32 [ 0, %entry ], [ %tmp87, %foreachnext ] ; <i32> [#uses=3]
- %state.2 = phi i1 [ false, %entry ], [ %state.1, %foreachnext ] ; <i1> [#uses=2]
- %pos.1 = phi i32 [ 0, %entry ], [ %pos.0, %foreachnext ] ; <i32> [#uses=7]
- %tmp9 = icmp ult i32 %foreachkey.0, %.len5 ; <i1> [#uses=1]
- br i1 %tmp9, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp11 = getelementptr i8* %.ptr7, i32 %foreachkey.0 ; <i8*> [#uses=1]
- %tmp12 = load i8* %tmp11 ; <i8> [#uses=4]
- br i1 %state.2, label %if, label %else
-
-if: ; preds = %foreachbody
- %tmp12.off = add i8 %tmp12, -48 ; <i8> [#uses=1]
- %or.cond = icmp ugt i8 %tmp12.off, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %endif, label %if20
-
-if20: ; preds = %if
- %tmp23 = zext i8 %tmp12 to i32 ; <i32> [#uses=2]
- %tmp24 = add i32 %tmp23, -48 ; <i32> [#uses=1]
- %tmp27 = icmp ult i32 %tmp24, %tmp1 ; <i1> [#uses=1]
- br i1 %tmp27, label %if28, label %else30
-
-if28: ; preds = %if20
- %tmp32 = add i32 %tmp23, -47 ; <i32> [#uses=1]
- %tmp35 = getelementptr %"byte[]"* %layout_arg99, i32 %tmp32 ; <%"byte[]"*> [#uses=1]
- %tmp36 = load %"byte[]"* %tmp35 ; <%"byte[]"> [#uses=2]
- %tmp3696 = extractvalue %"byte[]" %tmp36, 0 ; <i32> [#uses=2]
- %tmp40 = add i32 %pos.1, %tmp3696 ; <i32> [#uses=2]
- %tmp44 = icmp ult i32 %tmp40, %output_arg100 ; <i1> [#uses=1]
- br i1 %tmp44, label %if45, label %else47
-
-if45: ; preds = %if28
- %tmp3697 = extractvalue %"byte[]" %tmp36, 1 ; <i8*> [#uses=1]
- %tmp52 = getelementptr i8* %output_arg101, i32 %pos.1 ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp52, i8* %tmp3697, i32 %tmp3696, i32 1)
- br label %foreachnext
-
-else47: ; preds = %if28
- %tmp61 = load %"byte[]"* @_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa8toosmallAa, align 8 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp61
-
-else30: ; preds = %if20
- %tmp62 = load %"byte[]"* @_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa6badargAa, align 8 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp62
-
-else: ; preds = %foreachbody
- %tmp66 = icmp eq i8 %tmp12, 37 ; <i1> [#uses=1]
- br i1 %tmp66, label %foreachnext, label %endif
-
-endif: ; preds = %else, %if
- %state.0 = phi i1 [ false, %if ], [ %state.2, %else ] ; <i1> [#uses=1]
- %tmp73 = icmp ult i32 %pos.1, %output_arg100 ; <i1> [#uses=1]
- br i1 %tmp73, label %if74, label %else76
-
-if74: ; preds = %endif
- %tmp80 = getelementptr i8* %output_arg101, i32 %pos.1 ; <i8*> [#uses=1]
- store i8 %tmp12, i8* %tmp80
- %tmp83 = add i32 %pos.1, 1 ; <i32> [#uses=1]
- br label %foreachnext
-
-else76: ; preds = %endif
- %tmp84 = load %"byte[]"* @_D5tango4text4Util13__T6layoutTaZ6layoutFAaAAaXAa8toosmallAa, align 8 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp84
-
-foreachnext: ; preds = %if74, %else, %if45
- %state.1 = phi i1 [ false, %if45 ], [ %state.0, %if74 ], [ true, %else ] ; <i1> [#uses=1]
- %pos.0 = phi i32 [ %tmp40, %if45 ], [ %tmp83, %if74 ], [ %pos.1, %else ] ; <i32> [#uses=1]
- %tmp87 = add i32 %foreachkey.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- %tmp93 = insertvalue %"byte[]" undef, i32 %pos.1, 0 ; <%"byte[]"> [#uses=1]
- %tmp94 = insertvalue %"byte[]" %tmp93, i8* %output_arg101, 1 ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp94
-}
-
-define weak_odr fastcc %"byte[]" @_D5tango4text7convert7Integer15__T6formatTaTiZ6formatFAaiAaZAa(%"byte[]" %dst_arg, i32 %i_arg, %"byte[]" %fmt_arg) {
-entry:
- %tmp2 = sext i32 %i_arg to i64 ; <i64> [#uses=1]
- %fmt_arg41.i.i = extractvalue %"byte[]" %fmt_arg, 0 ; <i32> [#uses=3]
- %fmt_arg42.i.i = extractvalue %"byte[]" %fmt_arg, 1 ; <i8*> [#uses=2]
- %tmp1.i.i = icmp eq i32 %fmt_arg41.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp1.i.i, label %_D5tango4text7convert7Integer13__T6formatTaZ6formatFAalAaZAa.exit, label %else.i.i
-
-else.i.i: ; preds = %entry
- %tmp4.i.i = load i8* %fmt_arg42.i.i ; <i8> [#uses=2]
- %tmp7.i.i = icmp ugt i32 %fmt_arg41.i.i, 1 ; <i1> [#uses=1]
- br i1 %tmp7.i.i, label %forcond.i.i, label %_D5tango4text7convert7Integer13__T6formatTaZ6formatFAalAaZAa.exit
-
-forcond.i.i: ; preds = %forinc.i.i, %else.i.i
- %width.1.i = phi i32 [ 0, %else.i.i ], [ %width.0.i, %forinc.i.i ] ; <i32> [#uses=3]
- %pre.1.i = phi i8 [ -1, %else.i.i ], [ %pre.0.i, %forinc.i.i ] ; <i8> [#uses=2]
- %j.0.i.i = phi i32 [ %tmp38.i.i, %forinc.i.i ], [ 1, %else.i.i ] ; <i32> [#uses=2]
- %fmt_arg42.pn.i.i = phi i8* [ %p.0.i.i, %forinc.i.i ], [ %fmt_arg42.i.i, %else.i.i ] ; <i8*> [#uses=1]
- %p.0.i.i = getelementptr i8* %fmt_arg42.pn.i.i, i32 1 ; <i8*> [#uses=2]
- %tmp16.i.i = icmp ult i32 %j.0.i.i, %fmt_arg41.i.i ; <i1> [#uses=1]
- br i1 %tmp16.i.i, label %forbody.i.i, label %_D5tango4text7convert7Integer13__T6formatTaZ6formatFAalAaZAa.exit
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp18.i.i = load i8* %p.0.i.i ; <i8> [#uses=3]
- %tmp18.i.i.off = add i8 %tmp18.i.i, -48 ; <i8> [#uses=1]
- %or.cond = icmp ugt i8 %tmp18.i.i.off, 9 ; <i1> [#uses=1]
- br i1 %or.cond, label %forinc.i.i, label %if25.i.i
-
-if25.i.i: ; preds = %forbody.i.i
- %tmp29.i.i = mul i32 %width.1.i, 10 ; <i32> [#uses=1]
- %tmp32.i.i = zext i8 %tmp18.i.i to i32 ; <i32> [#uses=1]
- %tmp33.i.i = add i32 %tmp32.i.i, -48 ; <i32> [#uses=1]
- %tmp34.i.i = add i32 %tmp29.i.i, %tmp33.i.i ; <i32> [#uses=1]
- br label %forinc.i.i
-
-forinc.i.i: ; preds = %if25.i.i, %forbody.i.i
- %width.0.i = phi i32 [ %tmp34.i.i, %if25.i.i ], [ %width.1.i, %forbody.i.i ] ; <i32> [#uses=1]
- %pre.0.i = phi i8 [ %pre.1.i, %if25.i.i ], [ %tmp18.i.i, %forbody.i.i ] ; <i8> [#uses=1]
- %tmp38.i.i = add i32 %j.0.i.i, 1 ; <i32> [#uses=1]
- br label %forcond.i.i
-
-_D5tango4text7convert7Integer13__T6formatTaZ6formatFAalAaZAa.exit: ; preds = %forcond.i.i, %else.i.i, %entry
- %width.3.i = phi i32 [ 0, %entry ], [ %width.1.i, %forcond.i.i ], [ 0, %else.i.i ] ; <i32> [#uses=1]
- %type.0.i = phi i8 [ 100, %entry ], [ %tmp4.i.i, %forcond.i.i ], [ %tmp4.i.i, %else.i.i ] ; <i8> [#uses=1]
- %pre.3.i = phi i8 [ -1, %entry ], [ %pre.1.i, %forcond.i.i ], [ -1, %else.i.i ] ; <i8> [#uses=1]
- %tmp6.i = call fastcc %"byte[]" @_D5tango4text7convert7Integer16__T9formatterTaZ9formatterFAalaaiZAa(%"byte[]" %dst_arg, i64 %tmp2, i8 %type.0.i, i8 %pre.3.i, i32 %width.3.i) ; <%"byte[]"> [#uses=1]
- ret %"byte[]" %tmp6.i
-}
-
-define weak_odr fastcc i32 @_D5tango4core5Array14__T4findTAaTaZ4findFAaaZk(%"byte[]" %buf_arg, i8 %pat_arg) nounwind readonly {
-entry:
- %buf_arg16.i = extractvalue %"byte[]" %buf_arg, 0 ; <i32> [#uses=2]
- %buf_arg17.i = extractvalue %"byte[]" %buf_arg, 1 ; <i8*> [#uses=1]
- br label %foreachcond.i
-
-foreachcond.i: ; preds = %foreachnext.i, %entry
- %pos.0.i = phi i32 [ 0, %entry ], [ %tmp12.i, %foreachnext.i ] ; <i32> [#uses=4]
- %tmp3.i = icmp ult i32 %pos.0.i, %buf_arg16.i ; <i1> [#uses=1]
- br i1 %tmp3.i, label %foreachbody.i, label %_D5tango4core5Array12__T5find_TaZ2fnFAaaS5tango4core5Array14__T7IsEqualTaZ7IsEqualZk.exit
-
-foreachbody.i: ; preds = %foreachcond.i
- %tmp5.i = getelementptr i8* %buf_arg17.i, i32 %pos.0.i ; <i8*> [#uses=1]
- %tmp6.i = load i8* %tmp5.i ; <i8> [#uses=1]
- %tmp4.i.i = icmp eq i8 %tmp6.i, %pat_arg ; <i1> [#uses=1]
- br i1 %tmp4.i.i, label %_D5tango4core5Array12__T5find_TaZ2fnFAaaS5tango4core5Array14__T7IsEqualTaZ7IsEqualZk.exit, label %foreachnext.i
-
-foreachnext.i: ; preds = %foreachbody.i
- %tmp12.i = add i32 %pos.0.i, 1 ; <i32> [#uses=1]
- br label %foreachcond.i
-
-_D5tango4core5Array12__T5find_TaZ2fnFAaaS5tango4core5Array14__T7IsEqualTaZ7IsEqualZk.exit: ; preds = %foreachbody.i, %foreachcond.i
- %tmp23 = phi i32 [ %pos.0.i, %foreachbody.i ], [ %buf_arg16.i, %foreachcond.i ] ; <i32> [#uses=1]
- ret i32 %tmp23
-}
-
-define weak_odr fastcc i1 @_D5tango4core5Array14__T7IsEqualTaZ7IsEqual6opCallFaaZb(i8 %p1_arg, i8 %p2_arg) nounwind readnone {
-entry:
- %tmp4 = icmp eq i8 %p1_arg, %p2_arg ; <i1> [#uses=1]
- ret i1 %tmp4
-}
-
-define weak_odr fastcc i32 @_D5tango4core5Array12__T5find_TaZ2fnFAaaS5tango4core5Array14__T7IsEqualTaZ7IsEqualZk(%"byte[]" %buf_arg, i8 %pat_arg, %"tango.core.Array.IsEqual!(char).IsEqual"* nocapture byval %pred_arg) nounwind readonly {
-entry:
- %buf_arg16 = extractvalue %"byte[]" %buf_arg, 0 ; <i32> [#uses=2]
- %buf_arg17 = extractvalue %"byte[]" %buf_arg, 1 ; <i8*> [#uses=1]
- br label %foreachcond
-
-foreachcond: ; preds = %foreachnext, %entry
- %pos.0 = phi i32 [ 0, %entry ], [ %tmp12, %foreachnext ] ; <i32> [#uses=4]
- %tmp3 = icmp ult i32 %pos.0, %buf_arg16 ; <i1> [#uses=1]
- br i1 %tmp3, label %foreachbody, label %foreachend
-
-foreachbody: ; preds = %foreachcond
- %tmp5 = getelementptr i8* %buf_arg17, i32 %pos.0 ; <i8*> [#uses=1]
- %tmp6 = load i8* %tmp5 ; <i8> [#uses=1]
- %tmp4.i = icmp eq i8 %tmp6, %pat_arg ; <i1> [#uses=1]
- br i1 %tmp4.i, label %if, label %foreachnext
-
-if: ; preds = %foreachbody
- ret i32 %pos.0
-
-foreachnext: ; preds = %foreachbody
- %tmp12 = add i32 %pos.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-foreachend: ; preds = %foreachcond
- ret i32 %buf_arg16
-}
-
-define weak_odr fastcc i32 @_D5tango4core5Array12__T5find_TaZ2fnFAaAaS5tango4core5Array14__T7IsEqualTaZ7IsEqualZk(%"byte[]" %buf_arg, %"byte[]" %pat_arg, %"tango.core.Array.IsEqual!(char).IsEqual"* nocapture byval %pred_arg) nounwind readonly {
-entry:
- %buf_arg80 = extractvalue %"byte[]" %buf_arg, 0 ; <i32> [#uses=7]
- %buf_arg81 = extractvalue %"byte[]" %buf_arg, 1 ; <i8*> [#uses=2]
- %pat_arg78 = extractvalue %"byte[]" %pat_arg, 0 ; <i32> [#uses=5]
- %pat_arg79 = extractvalue %"byte[]" %pat_arg, 1 ; <i8*> [#uses=2]
- %tmp1 = icmp eq i32 %buf_arg80, 0 ; <i1> [#uses=1]
- %tmp4 = icmp eq i32 %pat_arg78, 0 ; <i1> [#uses=1]
- %or.cond = or i1 %tmp1, %tmp4 ; <i1> [#uses=1]
- %tmp11 = icmp ult i32 %buf_arg80, %pat_arg78 ; <i1> [#uses=1]
- %or.cond82 = or i1 %or.cond, %tmp11 ; <i1> [#uses=1]
- br i1 %or.cond82, label %if, label %endif
-
-if: ; preds = %entry
- ret i32 %buf_arg80
-
-endif: ; preds = %entry
- %tmp19 = sub i32 %buf_arg80, %pat_arg78 ; <i32> [#uses=1]
- %tmp20 = add i32 %tmp19, 1 ; <i32> [#uses=1]
- br label %forcond
-
-forcond: ; preds = %forinc, %endif
- %pos.2 = phi i32 [ 0, %endif ], [ %tmp73, %forinc ] ; <i32> [#uses=4]
- %tmp23 = icmp ult i32 %pos.2, %tmp20 ; <i1> [#uses=1]
- br i1 %tmp23, label %forbody, label %endfor
-
-forbody: ; preds = %forcond
- %tmp26 = getelementptr i8* %buf_arg81, i32 %pos.2 ; <i8*> [#uses=1]
- %tmp27 = load i8* %tmp26 ; <i8> [#uses=1]
- %tmp31 = load i8* %pat_arg79 ; <i8> [#uses=1]
- %tmp4.i = icmp eq i8 %tmp27, %tmp31 ; <i1> [#uses=1]
- br i1 %tmp4.i, label %dowhile, label %forinc
-
-dowhile: ; preds = %dowhilecond, %forbody
- %pos.0 = phi i32 [ %tmp49, %dowhilecond ], [ %pos.2, %forbody ] ; <i32> [#uses=2]
- %mat.0 = phi i32 [ %tmp36, %dowhilecond ], [ 0, %forbody ] ; <i32> [#uses=1]
- %tmp36 = add i32 %mat.0, 1 ; <i32> [#uses=4]
- %tmp39 = icmp ult i32 %tmp36, %pat_arg78 ; <i1> [#uses=1]
- br i1 %tmp39, label %endif41, label %if40
-
-if40: ; preds = %dowhile
- %tmp45 = sub i32 %pos.0, %pat_arg78 ; <i32> [#uses=1]
- %tmp46 = add i32 %tmp45, 1 ; <i32> [#uses=1]
- ret i32 %tmp46
-
-endif41: ; preds = %dowhile
- %tmp49 = add i32 %pos.0, 1 ; <i32> [#uses=4]
- %tmp52 = icmp ult i32 %tmp49, %buf_arg80 ; <i1> [#uses=1]
- br i1 %tmp52, label %dowhilecond, label %if53
-
-if53: ; preds = %endif41
- ret i32 %buf_arg80
-
-dowhilecond: ; preds = %endif41
- %tmp61 = getelementptr i8* %buf_arg81, i32 %tmp49 ; <i8*> [#uses=1]
- %tmp62 = load i8* %tmp61 ; <i8> [#uses=1]
- %tmp66 = getelementptr i8* %pat_arg79, i32 %tmp36 ; <i8*> [#uses=1]
- %tmp67 = load i8* %tmp66 ; <i8> [#uses=1]
- %tmp4.i83 = icmp eq i8 %tmp62, %tmp67 ; <i1> [#uses=1]
- br i1 %tmp4.i83, label %dowhile, label %enddowhile
-
-enddowhile: ; preds = %dowhilecond
- %tmp71 = sub i32 %tmp49, %tmp36 ; <i32> [#uses=1]
- br label %forinc
-
-forinc: ; preds = %enddowhile, %forbody
- %pos.1 = phi i32 [ %tmp71, %enddowhile ], [ %pos.2, %forbody ] ; <i32> [#uses=1]
- %tmp73 = add i32 %pos.1, 1 ; <i32> [#uses=1]
- br label %forcond
-
-endfor: ; preds = %forcond
- ret i32 %buf_arg80
-}
-
-define weak_odr fastcc i1 @_D5tango4text4Util15__T8containsTaZ8containsFAaaZb(%"byte[]" %source_arg, i8 %match_arg) nounwind readonly {
-entry:
- %source_arg7 = extractvalue %"byte[]" %source_arg, 0 ; <i32> [#uses=3]
- %source_arg8 = extractvalue %"byte[]" %source_arg, 1 ; <i8*> [#uses=2]
- %tmp2.i = getelementptr i8* %source_arg8, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i
-
-forcond.i: ; preds = %forbody.i, %entry
- %len.0.i = phi i32 [ %source_arg7, %entry ], [ %tmp4.i, %forbody.i ] ; <i32> [#uses=2]
- %p.0.i = phi i8* [ %tmp2.i, %entry ], [ %tmp7.i, %forbody.i ] ; <i8*> [#uses=1]
- %tmp4.i = add i32 %len.0.i, -1 ; <i32> [#uses=1]
- %tmp5.i = icmp eq i32 %len.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i, label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit, label %forbody.i
-
-forbody.i: ; preds = %forcond.i
- %tmp7.i = getelementptr i8* %p.0.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i = load i8* %tmp7.i ; <i8> [#uses=1]
- %tmp12.i = icmp eq i8 %tmp8.i, %match_arg ; <i1> [#uses=1]
- br i1 %tmp12.i, label %if.i, label %forcond.i
-
-if.i: ; preds = %forbody.i
- %tmp15.i = ptrtoint i8* %tmp7.i to i32 ; <i32> [#uses=1]
- %tmp16.i = ptrtoint i8* %source_arg8 to i32 ; <i32> [#uses=1]
- %tmp17.i = sub i32 %tmp15.i, %tmp16.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit
-
-_D5tango4text4Util14__T7indexOfTaZ7indexOfFPaakZk.exit: ; preds = %if.i, %forcond.i
- %tmp39 = phi i32 [ %tmp17.i, %if.i ], [ %source_arg7, %forcond.i ] ; <i32> [#uses=1]
- %tmp6 = icmp ne i32 %tmp39, %source_arg7 ; <i1> [#uses=1]
- ret i1 %tmp6
-}
-
-define weak_odr fastcc i32 @_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi(%"byte[]" %src_arg, %tango.time.Time.Time* nocapture %value_arg) {
-entry:
- %.frame = alloca %nest.dostime, align 8 ; <%nest.dostime*> [#uses=6]
- %tod = alloca %tango.time.Time.TimeOfDay, align 4 ; <%tango.time.Time.TimeOfDay*> [#uses=4]
- %.rettmp = alloca %tango.time.Time.Time, align 8 ; <%tango.time.Time.Time*> [#uses=2]
- %src_arg97 = extractvalue %"byte[]" %src_arg, 1 ; <i8*> [#uses=3]
- %date = getelementptr %nest.dostime* %.frame, i32 0, i32 0 ; <%tango.time.Time.Date*> [#uses=1]
- %tmp = bitcast %tango.time.Time.TimeOfDay* %tod to i8* ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp, i8 0, i32 16, i32 4)
- %tmp1 = bitcast %nest.dostime* %.frame to i8* ; <i8*> [#uses=1]
- call void @llvm.memset.i32(i8* %tmp1, i8 0, i32 24, i32 8)
- %tmp1.i125 = getelementptr %nest.dostime* %.frame, i32 0, i32 0, i32 3 ; <i32*> [#uses=1]
- br label %whilecond.i.i
-
-whilecond.i.i: ; preds = %whilebody.i.i, %entry
- %p.1 = phi i8* [ %src_arg97, %entry ], [ %tmp11.i.i, %whilebody.i.i ] ; <i8*> [#uses=3]
- %tmp10.i.i = phi i8* [ %tmp11.i.i, %whilebody.i.i ], [ %src_arg97, %entry ] ; <i8*> [#uses=3]
- %value.0.i.i = phi i32 [ 0, %entry ], [ %tmp15.i.i, %whilebody.i.i ] ; <i32> [#uses=3]
- %tmp1.i.i = load i8* %tmp10.i.i ; <i8> [#uses=1]
- %tmp1.i.off.i = add i8 %tmp1.i.i, -48 ; <i8> [#uses=1]
- %or.cond.i = icmp ult i8 %tmp1.i.off.i, 10 ; <i1> [#uses=1]
- br i1 %or.cond.i, label %whilebody.i.i, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit.i
-
-whilebody.i.i: ; preds = %whilecond.i.i
- %tmp9.i.i = mul i32 %value.0.i.i, 10 ; <i32> [#uses=1]
- %tmp11.i.i = getelementptr i8* %tmp10.i.i, i32 1 ; <i8*> [#uses=2]
- %tmp12.i.i = load i8* %tmp10.i.i ; <i8> [#uses=1]
- %tmp13.i.i = zext i8 %tmp12.i.i to i32 ; <i32> [#uses=1]
- %tmp14.i.i = add i32 %tmp9.i.i, %tmp13.i.i ; <i32> [#uses=1]
- %tmp15.i.i = add i32 %tmp14.i.i, -48 ; <i32> [#uses=1]
- br label %whilecond.i.i
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit.i: ; preds = %whilecond.i.i
- store i32 %value.0.i.i, i32* %tmp1.i125
- %tmp3.i126 = icmp eq i32 %value.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp3.i126, label %_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit, label %andand.i127
-
-andand.i127: ; preds = %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit.i
- %tmp5.i = getelementptr i8* %p.1, i32 1 ; <i8*> [#uses=3]
- %tmp6.i = load i8* %p.1 ; <i8> [#uses=1]
- %tmp8.i = icmp eq i8 %tmp6.i, 45 ; <i1> [#uses=1]
- br i1 %tmp8.i, label %andand9.i, label %_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit
-
-andand9.i: ; preds = %andand.i127
- %tmp13.i128 = getelementptr %nest.dostime* %.frame, i32 0, i32 0, i32 1 ; <i32*> [#uses=1]
- br label %whilecond.i58.i
-
-whilecond.i58.i: ; preds = %whilebody.i65.i, %andand9.i
- %p.4 = phi i8* [ %tmp5.i, %andand9.i ], [ %tmp11.i60.i, %whilebody.i65.i ] ; <i8*> [#uses=3]
- %tmp10.i54.i = phi i8* [ %tmp11.i60.i, %whilebody.i65.i ], [ %tmp5.i, %andand9.i ] ; <i8*> [#uses=3]
- %value.0.i55.i = phi i32 [ 0, %andand9.i ], [ %tmp15.i64.i, %whilebody.i65.i ] ; <i32> [#uses=3]
- %tmp1.i56.i = load i8* %tmp10.i54.i ; <i8> [#uses=1]
- %tmp1.i56.off.i = add i8 %tmp1.i56.i, -48 ; <i8> [#uses=1]
- %or.cond72.i = icmp ult i8 %tmp1.i56.off.i, 10 ; <i1> [#uses=1]
- br i1 %or.cond72.i, label %whilebody.i65.i, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70.i
-
-whilebody.i65.i: ; preds = %whilecond.i58.i
- %tmp9.i59.i = mul i32 %value.0.i55.i, 10 ; <i32> [#uses=1]
- %tmp11.i60.i = getelementptr i8* %tmp10.i54.i, i32 1 ; <i8*> [#uses=2]
- %tmp12.i61.i = load i8* %tmp10.i54.i ; <i8> [#uses=1]
- %tmp13.i62.i = zext i8 %tmp12.i61.i to i32 ; <i32> [#uses=1]
- %tmp14.i63.i = add i32 %tmp9.i59.i, %tmp13.i62.i ; <i32> [#uses=1]
- %tmp15.i64.i = add i32 %tmp14.i63.i, -48 ; <i32> [#uses=1]
- br label %whilecond.i58.i
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70.i: ; preds = %whilecond.i58.i
- store i32 %value.0.i55.i, i32* %tmp13.i128
- %tmp15.i129 = icmp eq i32 %value.0.i55.i, 0 ; <i1> [#uses=1]
- br i1 %tmp15.i129, label %_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit, label %andand16.i
-
-andand16.i: ; preds = %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70.i
- %tmp19.i = getelementptr i8* %p.4, i32 1 ; <i8*> [#uses=3]
- %tmp20.i = load i8* %p.4 ; <i8> [#uses=1]
- %tmp22.i = icmp eq i8 %tmp20.i, 45 ; <i1> [#uses=1]
- br i1 %tmp22.i, label %andand23.i, label %_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit
-
-andand23.i: ; preds = %andand16.i
- %tmp27.i = getelementptr %nest.dostime* %.frame, i32 0, i32 0, i32 2 ; <i32*> [#uses=1]
- br label %whilecond.i39.i
-
-whilecond.i39.i: ; preds = %whilebody.i46.i, %andand23.i
- %p.5 = phi i8* [ %tmp19.i, %andand23.i ], [ %tmp11.i41.i, %whilebody.i46.i ] ; <i8*> [#uses=1]
- %tmp10.i35.i = phi i8* [ %tmp11.i41.i, %whilebody.i46.i ], [ %tmp19.i, %andand23.i ] ; <i8*> [#uses=3]
- %value.0.i36.i = phi i32 [ 0, %andand23.i ], [ %tmp15.i45.i, %whilebody.i46.i ] ; <i32> [#uses=2]
- %tmp1.i37.i = load i8* %tmp10.i35.i ; <i8> [#uses=1]
- %tmp1.i37.off.i = add i8 %tmp1.i37.i, -48 ; <i8> [#uses=1]
- %or.cond73.i = icmp ult i8 %tmp1.i37.off.i, 10 ; <i1> [#uses=1]
- br i1 %or.cond73.i, label %whilebody.i46.i, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit51.i
-
-whilebody.i46.i: ; preds = %whilecond.i39.i
- %tmp9.i40.i = mul i32 %value.0.i36.i, 10 ; <i32> [#uses=1]
- %tmp11.i41.i = getelementptr i8* %tmp10.i35.i, i32 1 ; <i8*> [#uses=2]
- %tmp12.i42.i = load i8* %tmp10.i35.i ; <i8> [#uses=1]
- %tmp13.i43.i = zext i8 %tmp12.i42.i to i32 ; <i32> [#uses=1]
- %tmp14.i44.i = add i32 %tmp9.i40.i, %tmp13.i43.i ; <i32> [#uses=1]
- %tmp15.i45.i = add i32 %tmp14.i44.i, -48 ; <i32> [#uses=1]
- br label %whilecond.i39.i
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit51.i: ; preds = %whilecond.i39.i
- store i32 %value.0.i36.i, i32* %tmp27.i, align 8
- br label %_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit
-
-_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit: ; preds = %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit51.i, %andand16.i, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70.i, %andand.i127, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit.i
- %p.3 = phi i8* [ %p.5, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit51.i ], [ %p.1, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit.i ], [ %p.4, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70.i ], [ %tmp19.i, %andand16.i ], [ %tmp5.i, %andand.i127 ] ; <i8*> [#uses=2]
- %tmp8 = getelementptr i8* %p.3, i32 1 ; <i8*> [#uses=2]
- %tmp9 = load i8* %p.3 ; <i8> [#uses=1]
- %tmp11 = icmp eq i8 %tmp9, 32 ; <i1> [#uses=1]
- br i1 %tmp11, label %andand12, label %endif
-
-andand12: ; preds = %_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit
- %tmp14 = getelementptr %tango.time.Time.TimeOfDay* %tod, i32 0, i32 0 ; <i32*> [#uses=2]
- br label %whilecond.i
-
-whilecond.i: ; preds = %whilebody.i, %andand12
- %tmp20 = phi i8* [ %tmp11.i, %whilebody.i ], [ %tmp8, %andand12 ] ; <i8*> [#uses=2]
- %tmp10.i = phi i8* [ %tmp11.i, %whilebody.i ], [ %tmp8, %andand12 ] ; <i8*> [#uses=3]
- %tmp51 = phi i32 [ 0, %andand12 ], [ %tmp15.i, %whilebody.i ] ; <i32> [#uses=4]
- %tmp1.i = load i8* %tmp10.i ; <i8> [#uses=1]
- %tmp1.i.off = add i8 %tmp1.i, -48 ; <i8> [#uses=1]
- %or.cond = icmp ult i8 %tmp1.i.off, 10 ; <i1> [#uses=1]
- br i1 %or.cond, label %whilebody.i, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit
-
-whilebody.i: ; preds = %whilecond.i
- %tmp9.i = mul i32 %tmp51, 10 ; <i32> [#uses=1]
- %tmp11.i = getelementptr i8* %tmp10.i, i32 1 ; <i8*> [#uses=2]
- %tmp12.i = load i8* %tmp10.i ; <i8> [#uses=1]
- %tmp13.i = zext i8 %tmp12.i to i32 ; <i32> [#uses=1]
- %tmp14.i = add i32 %tmp9.i, %tmp13.i ; <i32> [#uses=1]
- %tmp15.i = add i32 %tmp14.i, -48 ; <i32> [#uses=1]
- br label %whilecond.i
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit: ; preds = %whilecond.i
- store i32 %tmp51, i32* %tmp14
- %tmp16 = icmp eq i32 %tmp51, 0 ; <i1> [#uses=1]
- br i1 %tmp16, label %endif, label %andand18
-
-andand18: ; preds = %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit
- %tmp21 = getelementptr i8* %tmp20, i32 1 ; <i8*> [#uses=3]
- %tmp22 = load i8* %tmp20 ; <i8> [#uses=1]
- %tmp24 = icmp eq i8 %tmp22, 58 ; <i1> [#uses=1]
- br i1 %tmp24, label %andand26, label %endif
-
-andand26: ; preds = %andand18
- %tmp28 = getelementptr %tango.time.Time.TimeOfDay* %tod, i32 0, i32 1 ; <i32*> [#uses=1]
- br label %whilecond.i107
-
-whilecond.i107: ; preds = %whilebody.i114, %andand26
- %p.0 = phi i8* [ %tmp21, %andand26 ], [ %tmp11.i109, %whilebody.i114 ] ; <i8*> [#uses=1]
- %tmp34 = phi i8* [ %tmp11.i109, %whilebody.i114 ], [ %tmp21, %andand26 ] ; <i8*> [#uses=1]
- %tmp10.i103 = phi i8* [ %tmp11.i109, %whilebody.i114 ], [ %tmp21, %andand26 ] ; <i8*> [#uses=3]
- %value.0.i104 = phi i32 [ 0, %andand26 ], [ %tmp15.i113, %whilebody.i114 ] ; <i32> [#uses=3]
- %tmp1.i105 = load i8* %tmp10.i103 ; <i8> [#uses=1]
- %tmp1.i105.off = add i8 %tmp1.i105, -48 ; <i8> [#uses=1]
- %or.cond130 = icmp ult i8 %tmp1.i105.off, 10 ; <i1> [#uses=1]
- br i1 %or.cond130, label %whilebody.i114, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit119
-
-whilebody.i114: ; preds = %whilecond.i107
- %tmp9.i108 = mul i32 %value.0.i104, 10 ; <i32> [#uses=1]
- %tmp11.i109 = getelementptr i8* %tmp10.i103, i32 1 ; <i8*> [#uses=3]
- %tmp12.i110 = load i8* %tmp10.i103 ; <i8> [#uses=1]
- %tmp13.i111 = zext i8 %tmp12.i110 to i32 ; <i32> [#uses=1]
- %tmp14.i112 = add i32 %tmp9.i108, %tmp13.i111 ; <i32> [#uses=1]
- %tmp15.i113 = add i32 %tmp14.i112, -48 ; <i32> [#uses=1]
- br label %whilecond.i107
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit119: ; preds = %whilecond.i107
- store i32 %value.0.i104, i32* %tmp28
- %tmp30 = icmp eq i32 %value.0.i104, 0 ; <i1> [#uses=1]
- br i1 %tmp30, label %endif, label %andand32
-
-andand32: ; preds = %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit119
- %tmp35 = load i8* %tmp34 ; <i8> [#uses=1]
- switch i8 %tmp35, label %endif [
- i8 80, label %if47
- i8 65, label %endif48
- ]
-
-if47: ; preds = %andand32
- %tmp52 = add i32 %tmp51, 12 ; <i32> [#uses=1]
- store i32 %tmp52, i32* %tmp14
- br label %endif48
-
-endif48: ; preds = %if47, %andand32
- %tmp53 = getelementptr %nest.dostime* %.frame, i32 0, i32 0, i32 2 ; <i32*> [#uses=3]
- %tmp54 = load i32* %tmp53, align 8 ; <i32> [#uses=4]
- %tmp55 = icmp ult i32 %tmp54, 70 ; <i1> [#uses=1]
- br i1 %tmp55, label %if56, label %else
-
-if56: ; preds = %endif48
- %tmp61 = add i32 %tmp54, 2000 ; <i32> [#uses=1]
- store i32 %tmp61, i32* %tmp53, align 8
- br label %endif57
-
-else: ; preds = %endif48
- %tmp64 = icmp ult i32 %tmp54, 100 ; <i1> [#uses=1]
- br i1 %tmp64, label %if65, label %endif57
-
-if65: ; preds = %else
- %tmp70 = add i32 %tmp54, 1900 ; <i32> [#uses=1]
- store i32 %tmp70, i32* %tmp53, align 8
- br label %endif57
-
-endif57: ; preds = %if65, %else, %if56
- %0 = load %tango.time.chrono.Gregorian.Gregorian** @_D5tango4time6chrono9Gregorian9Gregorian7genericC5tango4time6chrono9Gregorian9Gregorian ; <%tango.time.chrono.Gregorian.Gregorian*> [#uses=2]
- %tmp71 = bitcast %tango.time.chrono.Gregorian.Gregorian* %0 to %tango.time.chrono.Calendar.Calendar* ; <%tango.time.chrono.Calendar.Calendar*> [#uses=1]
- %tmp72 = bitcast %tango.time.chrono.Gregorian.Gregorian* %0 to %tango.time.chrono.Calendar.Calendar.__vtbl** ; <%tango.time.chrono.Calendar.Calendar.__vtbl**> [#uses=1]
- %tmp73 = load %tango.time.chrono.Calendar.Calendar.__vtbl** %tmp72 ; <%tango.time.chrono.Calendar.Calendar.__vtbl*> [#uses=1]
- %"generic.toTime@vtbl" = getelementptr %tango.time.chrono.Calendar.Calendar.__vtbl* %tmp73, i32 0, i32 10 ; <void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Date*, %tango.time.Time.TimeOfDay*)**> [#uses=1]
- %generic.toTime = load void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Date*, %tango.time.Time.TimeOfDay*)** %"generic.toTime@vtbl", align 4 ; <void (%tango.time.Time.Time*, %tango.time.chrono.Calendar.Calendar*, %tango.time.Time.Date*, %tango.time.Time.TimeOfDay*)*> [#uses=1]
- call fastcc void %generic.toTime(%tango.time.Time.Time* noalias nocapture sret %.rettmp, %tango.time.chrono.Calendar.Calendar* %tmp71, %tango.time.Time.Date* byval %date, %tango.time.Time.TimeOfDay* byval %tod)
- %tmp7698 = getelementptr %tango.time.Time.Time* %.rettmp, i32 0, i32 0 ; <i64*> [#uses=1]
- %tmp100 = load i64* %tmp7698, align 8 ; <i64> [#uses=1]
- %1 = getelementptr %tango.time.Time.Time* %value_arg, i32 0, i32 0 ; <i64*> [#uses=1]
- store i64 %tmp100, i64* %1
- %tmp78 = getelementptr i8* %p.0, i32 2 ; <i8*> [#uses=1]
- %tmp81 = ptrtoint i8* %tmp78 to i32 ; <i32> [#uses=1]
- %tmp82 = ptrtoint i8* %src_arg97 to i32 ; <i32> [#uses=1]
- %tmp83 = sub i32 %tmp81, %tmp82 ; <i32> [#uses=1]
- ret i32 %tmp83
-
-endif: ; preds = %andand32, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit119, %andand18, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit, %_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb.exit
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi(i8** nocapture %p_arg) nounwind {
-entry:
- %tmp.pre = load i8** %p_arg ; <i8*> [#uses=1]
- br label %whilecond
-
-whilecond: ; preds = %whilebody, %entry
- %tmp10 = phi i8* [ %tmp11, %whilebody ], [ %tmp.pre, %entry ] ; <i8*> [#uses=3]
- %value.0 = phi i32 [ 0, %entry ], [ %tmp15, %whilebody ] ; <i32> [#uses=3]
- %tmp1 = load i8* %tmp10 ; <i8> [#uses=2]
- %tmp3 = icmp ult i8 %tmp1, 48 ; <i1> [#uses=1]
- br i1 %tmp3, label %endwhile.critedge, label %andand
-
-whilebody: ; preds = %andand
- %tmp9 = mul i32 %value.0, 10 ; <i32> [#uses=1]
- %tmp11 = getelementptr i8* %tmp10, i32 1 ; <i8*> [#uses=2]
- store i8* %tmp11, i8** %p_arg
- %tmp12 = load i8* %tmp10 ; <i8> [#uses=1]
- %tmp13 = zext i8 %tmp12 to i32 ; <i32> [#uses=1]
- %tmp14 = add i32 %tmp9, %tmp13 ; <i32> [#uses=1]
- %tmp15 = add i32 %tmp14, -48 ; <i32> [#uses=1]
- br label %whilecond
-
-andand: ; preds = %whilecond
- %tmp7 = icmp ult i8 %tmp1, 58 ; <i1> [#uses=1]
- br i1 %tmp7, label %whilebody, label %endwhile
-
-endwhile.critedge: ; preds = %whilecond
- ret i32 %value.0
-
-endwhile: ; preds = %andand
- ret i32 %value.0
-}
-
-define weak_odr fastcc %"char[][]" @_D5tango4text4Util14__T7delimitTaZ7delimitFAaAaZAAa(%"byte[]" %src_arg, %"byte[]" %set_arg) {
-entry:
- %.frame = alloca %nest.delimit, align 8 ; <%nest.delimit*> [#uses=2]
- %.rettmp = alloca %tango.net.ftp.FtpClient.FtpFeature, align 8 ; <%tango.net.ftp.FtpClient.FtpFeature*> [#uses=5]
- %result = getelementptr %nest.delimit* %.frame, i32 0, i32 0 ; <%"char[][]"*> [#uses=2]
- store %"char[][]" zeroinitializer, %"char[][]"* %result, align 8
- %set_arg13.i = extractvalue %"byte[]" %set_arg, 0 ; <i32> [#uses=1]
- %set_arg14.i = extractvalue %"byte[]" %set_arg, 1 ; <i8*> [#uses=1]
- %src_arg16.i = extractvalue %"byte[]" %src_arg, 0 ; <i32> [#uses=1]
- %src_arg17.i = extractvalue %"byte[]" %src_arg, 1 ; <i8*> [#uses=1]
- %0 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %src_arg16.i, i32* %0, align 8
- %.sret_arg18.1.i = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %src_arg17.i, i8** %.sret_arg18.1.i, align 4
- %.sret_arg.1.0.i = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %set_arg13.i, i32* %.sret_arg.1.0.i, align 8
- %.sret_arg.1.1.i = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.rettmp, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- store i8* %set_arg14.i, i8** %.sret_arg.1.1.i, align 4
- %tmp2 = bitcast %nest.delimit* %.frame to i8* ; <i8*> [#uses=1]
- %tmp3 = insertvalue %"int delegate(ref char[])" undef, i8* %tmp2, 0 ; <%"int delegate(ref char[])"> [#uses=1]
- %.func = insertvalue %"int delegate(ref char[])" %tmp3, i32 (i8*, %"byte[]"*)* @_D5tango4text4Util14__T7delimitTaZ7delimitFAaAaZAAa15__foreachbody43MFKAaZi, 1 ; <%"int delegate(ref char[])"> [#uses=1]
- %tmp4 = call fastcc i32 @_D5tango4text4Util18__T10DelimFructTaZ10DelimFruct7opApplyMFDFKAaZiZi(%tango.net.ftp.FtpClient.FtpFeature* %.rettmp, %"int delegate(ref char[])" %.func) ; <i32> [#uses=0]
- %tmp5 = load %"char[][]"* %result, align 8 ; <%"char[][]"> [#uses=1]
- ret %"char[][]" %tmp5
-}
-
-define weak_odr fastcc void @_D5tango4text4Util18__T10delimitersTaZ10delimitersFAaAaZS5tango4text4Util18__T10DelimFructTaZ10DelimFruct(%tango.net.ftp.FtpClient.FtpFeature* noalias nocapture sret %.sret_arg, %"byte[]" %src_arg, %"byte[]" %set_arg) nounwind {
-entry:
- %set_arg13 = extractvalue %"byte[]" %set_arg, 0 ; <i32> [#uses=1]
- %set_arg14 = extractvalue %"byte[]" %set_arg, 1 ; <i8*> [#uses=1]
- %src_arg16 = extractvalue %"byte[]" %src_arg, 0 ; <i32> [#uses=1]
- %src_arg17 = extractvalue %"byte[]" %src_arg, 1 ; <i8*> [#uses=1]
- %0 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.sret_arg, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %src_arg16, i32* %0
- %.sret_arg18.1 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.sret_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %src_arg17, i8** %.sret_arg18.1, align 4
- %.sret_arg.1.0 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.sret_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %set_arg13, i32* %.sret_arg.1.0, align 8
- %.sret_arg.1.1 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.sret_arg, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- store i8* %set_arg14, i8** %.sret_arg.1.1, align 4
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util18__T10DelimFructTaZ10DelimFruct7opApplyMFDFKAaZiZi(%tango.net.ftp.FtpClient.FtpFeature* nocapture %.this_arg, %"int delegate(ref char[])" %dg_arg) {
-entry:
- %token = alloca %"byte[]", align 8 ; <%"byte[]"*> [#uses=10]
- %dg_arg115 = extractvalue %"int delegate(ref char[])" %dg_arg, 0 ; <i8*> [#uses=3]
- %dg_arg116 = extractvalue %"int delegate(ref char[])" %dg_arg, 1 ; <i32 (i8*, %"byte[]"*)*> [#uses=3]
- store %"byte[]" zeroinitializer, %"byte[]"* %token, align 8
- %tmp2 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp2 ; <i32> [#uses=2]
- %tmp3 = icmp eq i32 %.len, 1 ; <i1> [#uses=1]
- br i1 %tmp3, label %whilecond, label %else
-
-whilecond: ; preds = %endif36, %entry
- %mark.0 = phi i32 [ 0, %entry ], [ %tmp39, %endif36 ] ; <i32> [#uses=5]
- %ret.0 = phi i32 [ 0, %entry ], [ %tmp33, %endif36 ] ; <i32> [#uses=1]
- %tmp5 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 0 ; <%"byte[]"*> [#uses=1]
- %tmp6 = load %"byte[]"* %tmp5 ; <%"byte[]"> [#uses=2]
- %tmp9 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 1, i32 1 ; <i8**> [#uses=1]
- %.ptr = load i8** %tmp9 ; <i8*> [#uses=1]
- %tmp11 = load i8* %.ptr ; <i8> [#uses=1]
- %source_arg16.i = extractvalue %"byte[]" %tmp6, 0 ; <i32> [#uses=3]
- %source_arg17.i = extractvalue %"byte[]" %tmp6, 1 ; <i8*> [#uses=2]
- %tmp2.i = icmp ult i32 %source_arg16.i, %mark.0 ; <i1> [#uses=1]
- %start.0.i = select i1 %tmp2.i, i32 %source_arg16.i, i32 %mark.0 ; <i32> [#uses=4]
- %tmp7.i = getelementptr i8* %source_arg17.i, i32 %start.0.i ; <i8*> [#uses=1]
- %tmp12.i = sub i32 %source_arg16.i, %start.0.i ; <i32> [#uses=2]
- %tmp7.sum.i = add i32 %start.0.i, -1 ; <i32> [#uses=1]
- %tmp2.i.i = getelementptr i8* %source_arg17.i, i32 %tmp7.sum.i ; <i8*> [#uses=1]
- br label %forcond.i.i
-
-forcond.i.i: ; preds = %forbody.i.i, %whilecond
- %len.0.i.i = phi i32 [ %tmp12.i, %whilecond ], [ %tmp4.i.i, %forbody.i.i ] ; <i32> [#uses=2]
- %p.0.i.i = phi i8* [ %tmp2.i.i, %whilecond ], [ %tmp7.i.i, %forbody.i.i ] ; <i8*> [#uses=1]
- %tmp4.i.i = add i32 %len.0.i.i, -1 ; <i32> [#uses=1]
- %tmp5.i.i = icmp eq i32 %len.0.i.i, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i, label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit, label %forbody.i.i
-
-forbody.i.i: ; preds = %forcond.i.i
- %tmp7.i.i = getelementptr i8* %p.0.i.i, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i = load i8* %tmp7.i.i ; <i8> [#uses=1]
- %tmp12.i.i = icmp eq i8 %tmp8.i.i, %tmp11 ; <i1> [#uses=1]
- br i1 %tmp12.i.i, label %if.i.i, label %forcond.i.i
-
-if.i.i: ; preds = %forbody.i.i
- %tmp15.i.i = ptrtoint i8* %tmp7.i.i to i32 ; <i32> [#uses=1]
- %tmp16.i.i = ptrtoint i8* %tmp7.i to i32 ; <i32> [#uses=1]
- %tmp17.i.i = sub i32 %tmp15.i.i, %tmp16.i.i ; <i32> [#uses=1]
- br label %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
-
-_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit: ; preds = %if.i.i, %forcond.i.i
- %tmp1318.i = phi i32 [ %tmp17.i.i, %if.i.i ], [ %tmp12.i, %forcond.i.i ] ; <i32> [#uses=1]
- %tmp15.i = add i32 %tmp1318.i, %start.0.i ; <i32> [#uses=3]
- %tmp16 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- %.len17 = load i32* %tmp16 ; <i32> [#uses=1]
- %tmp18 = icmp ult i32 %tmp15.i, %.len17 ; <i1> [#uses=1]
- br i1 %tmp18, label %whilebody, label %endif
-
-whilebody: ; preds = %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %tmp21 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- %.ptr22 = load i8** %tmp21 ; <i8*> [#uses=1]
- %tmp25 = getelementptr i8* %.ptr22, i32 %mark.0 ; <i8*> [#uses=1]
- %tmp26 = sub i32 %tmp15.i, %mark.0 ; <i32> [#uses=1]
- %tmp27 = getelementptr %"byte[]"* %token, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp26, i32* %tmp27, align 8
- %tmp28 = getelementptr %"byte[]"* %token, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp25, i8** %tmp28
- %tmp33 = call fastcc i32 %dg_arg116(i8* %dg_arg115, %"byte[]"* %token) ; <i32> [#uses=3]
- %tmp34 = icmp eq i32 %tmp33, 0 ; <i1> [#uses=1]
- br i1 %tmp34, label %endif36, label %if35
-
-if35: ; preds = %whilebody
- ret i32 %tmp33
-
-endif36: ; preds = %whilebody
- %tmp39 = add i32 %tmp15.i, 1 ; <i32> [#uses=1]
- br label %whilecond
-
-else: ; preds = %entry
- %tmp44 = icmp ugt i32 %.len, 1 ; <i1> [#uses=1]
- br i1 %tmp44, label %if45, label %endif
-
-if45: ; preds = %else
- %tmp49 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- %.len50 = load i32* %tmp49 ; <i32> [#uses=1]
- %tmp51 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=2]
- %.ptr52 = load i8** %tmp51 ; <i8*> [#uses=1]
- br label %foreachcond
-
-foreachcond: ; preds = %endif82, %foreachbody.foreachnext_crit_edge, %if45
- %mark.3 = phi i32 [ 0, %if45 ], [ %tmp86, %endif82 ], [ %mark.3, %foreachbody.foreachnext_crit_edge ] ; <i32> [#uses=4]
- %ret.3 = phi i32 [ 0, %if45 ], [ %tmp79, %endif82 ], [ %ret.3, %foreachbody.foreachnext_crit_edge ] ; <i32> [#uses=2]
- %i.0 = phi i32 [ 0, %if45 ], [ %tmp88.pre, %foreachbody.foreachnext_crit_edge ], [ %tmp86, %endif82 ] ; <i32> [#uses=5]
- %tmp54 = icmp ult i32 %i.0, %.len50 ; <i1> [#uses=1]
- br i1 %tmp54, label %foreachbody, label %endif
-
-foreachbody: ; preds = %foreachcond
- %tmp56 = getelementptr i8* %.ptr52, i32 %i.0 ; <i8*> [#uses=1]
- %tmp57 = load i8* %tmp56 ; <i8> [#uses=1]
- %tmp59 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp60 = load %"byte[]"* %tmp59 ; <%"byte[]"> [#uses=2]
- %source_arg7.i = extractvalue %"byte[]" %tmp60, 0 ; <i32> [#uses=3]
- %source_arg8.i = extractvalue %"byte[]" %tmp60, 1 ; <i8*> [#uses=2]
- %tmp2.i.i117 = getelementptr i8* %source_arg8.i, i32 -1 ; <i8*> [#uses=1]
- br label %forcond.i.i122
-
-forcond.i.i122: ; preds = %forbody.i.i126, %foreachbody
- %len.0.i.i118 = phi i32 [ %source_arg7.i, %foreachbody ], [ %tmp4.i.i120, %forbody.i.i126 ] ; <i32> [#uses=2]
- %p.0.i.i119 = phi i8* [ %tmp2.i.i117, %foreachbody ], [ %tmp7.i.i123, %forbody.i.i126 ] ; <i8*> [#uses=1]
- %tmp4.i.i120 = add i32 %len.0.i.i118, -1 ; <i32> [#uses=1]
- %tmp5.i.i121 = icmp eq i32 %len.0.i.i118, 0 ; <i1> [#uses=1]
- br i1 %tmp5.i.i121, label %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit, label %forbody.i.i126
-
-forbody.i.i126: ; preds = %forcond.i.i122
- %tmp7.i.i123 = getelementptr i8* %p.0.i.i119, i32 1 ; <i8*> [#uses=3]
- %tmp8.i.i124 = load i8* %tmp7.i.i123 ; <i8> [#uses=1]
- %tmp12.i.i125 = icmp eq i8 %tmp8.i.i124, %tmp57 ; <i1> [#uses=1]
- br i1 %tmp12.i.i125, label %if.i.i130, label %forcond.i.i122
-
-if.i.i130: ; preds = %forbody.i.i126
- %tmp15.i.i127 = ptrtoint i8* %tmp7.i.i123 to i32 ; <i32> [#uses=1]
- %tmp16.i.i128 = ptrtoint i8* %source_arg8.i to i32 ; <i32> [#uses=1]
- %tmp17.i.i129 = sub i32 %tmp15.i.i127, %tmp16.i.i128 ; <i32> [#uses=1]
- br label %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit
-
-_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit: ; preds = %if.i.i130, %forcond.i.i122
- %tmp39.i = phi i32 [ %tmp17.i.i129, %if.i.i130 ], [ %source_arg7.i, %forcond.i.i122 ] ; <i32> [#uses=1]
- %tmp6.i = icmp eq i32 %tmp39.i, %source_arg7.i ; <i1> [#uses=1]
- br i1 %tmp6.i, label %foreachbody.foreachnext_crit_edge, label %if63
-
-foreachbody.foreachnext_crit_edge: ; preds = %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit
- %tmp88.pre = add i32 %i.0, 1 ; <i32> [#uses=1]
- br label %foreachcond
-
-if63: ; preds = %_D5tango4text4Util15__T8containsTaZ8containsFAaaZb.exit
- %.ptr68 = load i8** %tmp51 ; <i8*> [#uses=1]
- %tmp71 = getelementptr i8* %.ptr68, i32 %mark.3 ; <i8*> [#uses=1]
- %tmp72 = sub i32 %i.0, %mark.3 ; <i32> [#uses=1]
- %tmp73 = getelementptr %"byte[]"* %token, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp72, i32* %tmp73, align 8
- %tmp74 = getelementptr %"byte[]"* %token, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp71, i8** %tmp74
- %tmp79 = call fastcc i32 %dg_arg116(i8* %dg_arg115, %"byte[]"* %token) ; <i32> [#uses=3]
- %tmp80 = icmp eq i32 %tmp79, 0 ; <i1> [#uses=1]
- br i1 %tmp80, label %endif82, label %if81
-
-if81: ; preds = %if63
- ret i32 %tmp79
-
-endif82: ; preds = %if63
- %tmp86 = add i32 %i.0, 1 ; <i32> [#uses=2]
- br label %foreachcond
-
-endif: ; preds = %foreachcond, %else, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit
- %mark.1 = phi i32 [ %mark.0, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit ], [ %mark.3, %foreachcond ], [ 0, %else ] ; <i32> [#uses=3]
- %ret.1 = phi i32 [ %ret.0, %_D5tango4text4Util13__T6locateTaZ6locateFAaakZk.exit ], [ %ret.3, %foreachcond ], [ 0, %else ] ; <i32> [#uses=1]
- %tmp91 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 0, i32 1 ; <i8**> [#uses=1]
- %.ptr92 = load i8** %tmp91 ; <i8*> [#uses=1]
- %tmp93 = getelementptr %tango.net.ftp.FtpClient.FtpFeature* %.this_arg, i32 0, i32 0, i32 0 ; <i32*> [#uses=1]
- %.len94 = load i32* %tmp93 ; <i32> [#uses=2]
- %tmp96 = getelementptr i8* %.ptr92, i32 %mark.1 ; <i8*> [#uses=1]
- %tmp97 = sub i32 %.len94, %mark.1 ; <i32> [#uses=1]
- %tmp98 = getelementptr %"byte[]"* %token, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp97, i32* %tmp98, align 8
- %tmp99 = getelementptr %"byte[]"* %token, i32 0, i32 1 ; <i8**> [#uses=1]
- store i8* %tmp96, i8** %tmp99
- %tmp105 = icmp ugt i32 %mark.1, %.len94 ; <i1> [#uses=1]
- br i1 %tmp105, label %endif107, label %if106
-
-if106: ; preds = %endif
- %tmp112 = call fastcc i32 %dg_arg116(i8* %dg_arg115, %"byte[]"* %token) ; <i32> [#uses=1]
- ret i32 %tmp112
-
-endif107: ; preds = %endif
- ret i32 %ret.1
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, i32 %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=4]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len = load i32* %tmp4 ; <i32> [#uses=3]
- %tmp5 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp6 = icmp ult i32 %tmp5, %.len ; <i1> [#uses=1]
- br i1 %tmp6, label %entry.endif_crit_edge, label %if
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp26.pre = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp13 = shl i32 %.len, 1 ; <i32> [#uses=1]
- %tmp1437 = or i32 %tmp13, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=3]
- %.ptr = load i32** %tmp17 ; <i32*> [#uses=1]
- %tmp18 = bitcast i32* %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D55TypeInfo_AE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ to %object.TypeInfo*), i32 %tmp1437, i32 %.len, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to i32* ; <i32*> [#uses=1]
- store i32 %tmp1437, i32* %tmp4
- store i32* %.gc_mem19, i32** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp26.pre-phi = phi i32** [ %tmp26.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <i32**> [#uses=1]
- %tmp28 = phi i32 [ %tmp5, %entry.endif_crit_edge ], [ %tmp28.pre, %if ] ; <i32> [#uses=1]
- %.ptr27 = load i32** %tmp26.pre-phi ; <i32*> [#uses=1]
- %tmp29 = getelementptr i32* %.ptr27, i32 %tmp28 ; <i32*> [#uses=1]
- store i32 %v_arg, i32* %tmp29
- %tmp35 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp36 = add i32 %tmp35, 1 ; <i32> [#uses=1]
- store i32 %tmp36, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack11opCatAssignMFAE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, %"Act[]" %vs_arg) {
-entry:
- %vs_arg43 = extractvalue %"Act[]" %vs_arg, 0 ; <i32> [#uses=1]
- %vs_arg44 = extractvalue %"Act[]" %vs_arg, 1 ; <i32*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=3]
- %tmp3 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp4 = add i32 %tmp3, %vs_arg43 ; <i32> [#uses=4]
- %tmp7 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len8 = load i32* %tmp7 ; <i32> [#uses=2]
- %tmp10 = icmp ugt i32 %tmp4, %.len8 ; <i1> [#uses=1]
- br i1 %tmp10, label %if, label %entry.endif_crit_edge
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp24.pre = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp14 = shl i32 %tmp4, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=3]
- %.ptr = load i32** %tmp17 ; <i32*> [#uses=1]
- %tmp18 = bitcast i32* %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D55TypeInfo_AE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ to %object.TypeInfo*), i32 %tmp14, i32 %.len8, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to i32* ; <i32*> [#uses=1]
- store i32 %tmp14, i32* %tmp7
- store i32* %.gc_mem19, i32** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp24.pre-phi = phi i32** [ %tmp24.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <i32**> [#uses=1]
- %tmp28 = phi i32 [ %tmp28.pre, %if ], [ %tmp3, %entry.endif_crit_edge ] ; <i32> [#uses=2]
- %.ptr25 = load i32** %tmp24.pre-phi ; <i32*> [#uses=1]
- %tmp30 = getelementptr i32* %.ptr25, i32 %tmp28 ; <i32*> [#uses=1]
- %tmp31 = sub i32 %tmp4, %tmp28 ; <i32> [#uses=1]
- %tmp32 = shl i32 %tmp31, 2 ; <i32> [#uses=1]
- %tmp33 = bitcast i32* %tmp30 to i8* ; <i8*> [#uses=1]
- %tmp36 = bitcast i32* %vs_arg44 to i8* ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp33, i8* %tmp36, i32 %tmp32, i32 1)
- store i32 %tmp4, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack3popMFkZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, i32 %num_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp4 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp6 = sub i32 %tmp4, %num_arg ; <i32> [#uses=1]
- store i32 %tmp6, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack3popMFZE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp6 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp7 = add i32 %tmp6, -1 ; <i32> [#uses=2]
- store i32 %tmp7, i32* %tmp3
- %tmp8 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp8 ; <i32*> [#uses=1]
- %tmp9 = getelementptr i32* %.ptr, i32 %tmp7 ; <i32*> [#uses=1]
- %tmp10 = load i32* %tmp9 ; <i32> [#uses=1]
- ret i32 %tmp10
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack3topMFZE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp6 ; <i32*> [#uses=1]
- %tmp7 = getelementptr i32* %.ptr, i32 %tmp5 ; <i32*> [#uses=1]
- %tmp8 = load i32* %tmp7 ; <i32> [#uses=1]
- ret i32 %tmp8
-}
-
-define weak_odr fastcc i32* @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack6topPtrMFZPE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp6 ; <i32*> [#uses=1]
- %tmp7 = getelementptr i32* %.ptr, i32 %tmp5 ; <i32*> [#uses=1]
- ret i32* %tmp7
-}
-
-define weak_odr fastcc i1 @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack5emptyMFZb(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp3 = icmp eq i32 %tmp2, 0 ; <i1> [#uses=1]
- ret i1 %tmp3
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack5clearMFZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 0, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack6lengthMFZk(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- ret i32 %tmp2
-}
-
-define weak_odr fastcc %"Act[]" @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack5arrayMFZAE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp2 ; <i32*> [#uses=1]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp5 = load i32* %tmp4 ; <i32> [#uses=1]
- %tmp8 = insertvalue %"Act[]" undef, i32 %tmp5, 0 ; <%"Act[]"> [#uses=1]
- %tmp9 = insertvalue %"Act[]" %tmp8, i32* %.ptr, 1 ; <%"Act[]"> [#uses=1]
- ret %"Act[]" %tmp9
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack7opIndexMFkZE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, i32 %i_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp2 ; <i32*> [#uses=1]
- %tmp4 = getelementptr i32* %.ptr, i32 %i_arg ; <i32*> [#uses=1]
- %tmp5 = load i32* %tmp4 ; <i32> [#uses=1]
- ret i32 %tmp5
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack3dupMFZS5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack(%"tango.text.Regex.Stack!(Operator).Stack"* noalias nocapture sret %.sret_arg, %"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp8 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp8 ; <i32> [#uses=1]
- %tmp9 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp9 ; <i32*> [#uses=1]
- %tmp10 = bitcast i32* %.ptr to i8* ; <i8*> [#uses=1]
- %tmp11 = insertvalue %"byte[]" undef, i32 %.len, 0 ; <%"byte[]"> [#uses=1]
- %tmp12 = insertvalue %"byte[]" %tmp11, i8* %tmp10, 1 ; <%"byte[]"> [#uses=1]
- %tmp13 = tail call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D55TypeInfo_AE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ to %object.TypeInfo*), %"byte[]" %tmp12) ; <%"byte[]"> [#uses=2]
- %tmp14 = extractvalue %"byte[]" %tmp13, 0 ; <i32> [#uses=1]
- %tmp16 = extractvalue %"byte[]" %tmp13, 1 ; <i8*> [#uses=1]
- %tmp17 = bitcast i8* %tmp16 to i32* ; <i32*> [#uses=1]
- %.sret_arg.0 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.sret_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4, i32* %.sret_arg.0
- %.sret_arg.1.0 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.sret_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp14, i32* %.sret_arg.1.0, align 4
- %.sret_arg.1.1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.sret_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- store i32* %tmp17, i32** %.sret_arg.1.1, align 4
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex12__T5StackTkZ5Stack4pushMFkZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, i32 %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=4]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len = load i32* %tmp4 ; <i32> [#uses=3]
- %tmp5 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp6 = icmp ult i32 %tmp5, %.len ; <i1> [#uses=1]
- br i1 %tmp6, label %entry.endif_crit_edge, label %if
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp26.pre = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp13 = shl i32 %.len, 1 ; <i32> [#uses=1]
- %tmp1437 = or i32 %tmp13, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=3]
- %.ptr = load i32** %tmp17 ; <i32*> [#uses=1]
- %tmp18 = bitcast i32* %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* @_D11TypeInfo_Ak6__initZ, i32 %tmp1437, i32 %.len, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to i32* ; <i32*> [#uses=1]
- store i32 %tmp1437, i32* %tmp4
- store i32* %.gc_mem19, i32** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp26.pre-phi = phi i32** [ %tmp26.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <i32**> [#uses=1]
- %tmp28 = phi i32 [ %tmp5, %entry.endif_crit_edge ], [ %tmp28.pre, %if ] ; <i32> [#uses=1]
- %.ptr27 = load i32** %tmp26.pre-phi ; <i32*> [#uses=1]
- %tmp29 = getelementptr i32* %.ptr27, i32 %tmp28 ; <i32*> [#uses=1]
- store i32 %v_arg, i32* %tmp29
- %tmp35 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp36 = add i32 %tmp35, 1 ; <i32> [#uses=1]
- store i32 %tmp36, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex12__T5StackTkZ5Stack11opCatAssignMFAkZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, %"Act[]" %vs_arg) {
-entry:
- %vs_arg43 = extractvalue %"Act[]" %vs_arg, 0 ; <i32> [#uses=1]
- %vs_arg44 = extractvalue %"Act[]" %vs_arg, 1 ; <i32*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=3]
- %tmp3 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp4 = add i32 %tmp3, %vs_arg43 ; <i32> [#uses=4]
- %tmp7 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len8 = load i32* %tmp7 ; <i32> [#uses=2]
- %tmp10 = icmp ugt i32 %tmp4, %.len8 ; <i1> [#uses=1]
- br i1 %tmp10, label %if, label %entry.endif_crit_edge
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp24.pre = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp14 = shl i32 %tmp4, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=3]
- %.ptr = load i32** %tmp17 ; <i32*> [#uses=1]
- %tmp18 = bitcast i32* %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* @_D11TypeInfo_Ak6__initZ, i32 %tmp14, i32 %.len8, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to i32* ; <i32*> [#uses=1]
- store i32 %tmp14, i32* %tmp7
- store i32* %.gc_mem19, i32** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp24.pre-phi = phi i32** [ %tmp24.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <i32**> [#uses=1]
- %tmp28 = phi i32 [ %tmp28.pre, %if ], [ %tmp3, %entry.endif_crit_edge ] ; <i32> [#uses=2]
- %.ptr25 = load i32** %tmp24.pre-phi ; <i32*> [#uses=1]
- %tmp30 = getelementptr i32* %.ptr25, i32 %tmp28 ; <i32*> [#uses=1]
- %tmp31 = sub i32 %tmp4, %tmp28 ; <i32> [#uses=1]
- %tmp32 = shl i32 %tmp31, 2 ; <i32> [#uses=1]
- %tmp33 = bitcast i32* %tmp30 to i8* ; <i8*> [#uses=1]
- %tmp36 = bitcast i32* %vs_arg44 to i8* ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp33, i8* %tmp36, i32 %tmp32, i32 1)
- store i32 %tmp4, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex12__T5StackTkZ5Stack3popMFkZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, i32 %num_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp4 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp6 = sub i32 %tmp4, %num_arg ; <i32> [#uses=1]
- store i32 %tmp6, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex12__T5StackTkZ5Stack3popMFZk(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp6 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp7 = add i32 %tmp6, -1 ; <i32> [#uses=2]
- store i32 %tmp7, i32* %tmp3
- %tmp8 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp8 ; <i32*> [#uses=1]
- %tmp9 = getelementptr i32* %.ptr, i32 %tmp7 ; <i32*> [#uses=1]
- %tmp10 = load i32* %tmp9 ; <i32> [#uses=1]
- ret i32 %tmp10
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex12__T5StackTkZ5Stack3topMFZk(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp6 ; <i32*> [#uses=1]
- %tmp7 = getelementptr i32* %.ptr, i32 %tmp5 ; <i32*> [#uses=1]
- %tmp8 = load i32* %tmp7 ; <i32> [#uses=1]
- ret i32 %tmp8
-}
-
-define weak_odr fastcc i32* @_D5tango4text5Regex12__T5StackTkZ5Stack6topPtrMFZPk(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp6 ; <i32*> [#uses=1]
- %tmp7 = getelementptr i32* %.ptr, i32 %tmp5 ; <i32*> [#uses=1]
- ret i32* %tmp7
-}
-
-define weak_odr fastcc i1 @_D5tango4text5Regex12__T5StackTkZ5Stack5emptyMFZb(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp3 = icmp eq i32 %tmp2, 0 ; <i1> [#uses=1]
- ret i1 %tmp3
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex12__T5StackTkZ5Stack5clearMFZv(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 0, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex12__T5StackTkZ5Stack6lengthMFZk(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- ret i32 %tmp2
-}
-
-define weak_odr fastcc %"Act[]" @_D5tango4text5Regex12__T5StackTkZ5Stack5arrayMFZAk(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp2 ; <i32*> [#uses=1]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp5 = load i32* %tmp4 ; <i32> [#uses=1]
- %tmp8 = insertvalue %"Act[]" undef, i32 %tmp5, 0 ; <%"Act[]"> [#uses=1]
- %tmp9 = insertvalue %"Act[]" %tmp8, i32* %.ptr, 1 ; <%"Act[]"> [#uses=1]
- ret %"Act[]" %tmp9
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex12__T5StackTkZ5Stack7opIndexMFkZk(%"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg, i32 %i_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- %.ptr = load i32** %tmp2 ; <i32*> [#uses=1]
- %tmp4 = getelementptr i32* %.ptr, i32 %i_arg ; <i32*> [#uses=1]
- %tmp5 = load i32* %tmp4 ; <i32> [#uses=1]
- ret i32 %tmp5
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex12__T5StackTkZ5Stack3dupMFZS5tango4text5Regex12__T5StackTkZ5Stack(%"tango.text.Regex.Stack!(Operator).Stack"* noalias nocapture sret %.sret_arg, %"tango.text.Regex.Stack!(Operator).Stack"* nocapture %.this_arg) {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp7 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.this_arg, i32 0, i32 1 ; <%"Act[]"*> [#uses=1]
- %tmp8 = bitcast %"Act[]"* %tmp7 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp9 = load %"byte[]"* %tmp8 ; <%"byte[]"> [#uses=1]
- %tmp10 = tail call %"byte[]" @_adDupT(%object.TypeInfo* @_D11TypeInfo_Ak6__initZ, %"byte[]" %tmp9) ; <%"byte[]"> [#uses=2]
- %tmp11 = extractvalue %"byte[]" %tmp10, 0 ; <i32> [#uses=1]
- %tmp13 = extractvalue %"byte[]" %tmp10, 1 ; <i8*> [#uses=1]
- %tmp14 = bitcast i8* %tmp13 to i32* ; <i32*> [#uses=1]
- %.sret_arg.0 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.sret_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4, i32* %.sret_arg.0
- %.sret_arg.1.0 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.sret_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp11, i32* %.sret_arg.1.0, align 4
- %.sret_arg.1.1 = getelementptr %"tango.text.Regex.Stack!(Operator).Stack"* %.sret_arg, i32 0, i32 1, i32 1 ; <i32**> [#uses=1]
- store i32* %tmp14, i32** %.sret_arg.1.1, align 4
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex11__T4PairTkZ4Pair6opCallFkkZS5tango4text5Regex11__T4PairTkZ4Pair(%tango.net.Socket.timeval* noalias nocapture sret %.sret_arg, i32 %a_arg, i32 %b_arg) nounwind {
-entry:
- %tmp12 = zext i32 %a_arg to i64 ; <i64> [#uses=1]
- %tmp13 = shl i64 %tmp12, 32 ; <i64> [#uses=1]
- %tmp10 = zext i32 %b_arg to i64 ; <i64> [#uses=1]
- %ins = or i64 %tmp13, %tmp10 ; <i64> [#uses=1]
- %0 = bitcast %tango.net.Socket.timeval* %.sret_arg to i64* ; <i64*> [#uses=1]
- store i64 %ins, i64* %0
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack4pushMFS5tango4text5Regex11__T4PairTkZ4PairZv(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg, %tango.net.Socket.timeval* nocapture byval %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=4]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len = load i32* %tmp4 ; <i32> [#uses=3]
- %tmp5 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp6 = icmp ult i32 %tmp5, %.len ; <i1> [#uses=1]
- br i1 %tmp6, label %entry.endif_crit_edge, label %if
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp26.pre = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp13 = shl i32 %.len, 1 ; <i32> [#uses=1]
- %tmp1438 = or i32 %tmp13, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=3]
- %.ptr = load %tango.net.Socket.timeval** %tmp17 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp18 = bitcast %tango.net.Socket.timeval* %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D46TypeInfo_AS5tango4text5Regex11__T4PairTkZ4Pair6__initZ to %object.TypeInfo*), i32 %tmp1438, i32 %.len, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=1]
- store i32 %tmp1438, i32* %tmp4
- store %tango.net.Socket.timeval* %.gc_mem19, %tango.net.Socket.timeval** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp26.pre-phi = phi %tango.net.Socket.timeval** [ %tmp26.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <%tango.net.Socket.timeval**> [#uses=1]
- %tmp28 = phi i32 [ %tmp5, %entry.endif_crit_edge ], [ %tmp28.pre, %if ] ; <i32> [#uses=1]
- %.ptr27 = load %tango.net.Socket.timeval** %tmp26.pre-phi ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp29 = getelementptr %tango.net.Socket.timeval* %.ptr27, i32 %tmp28 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp3139 = bitcast %tango.net.Socket.timeval* %v_arg to i64* ; <i64*> [#uses=1]
- %tmp3040 = bitcast %tango.net.Socket.timeval* %tmp29 to i64* ; <i64*> [#uses=1]
- %tmp = load i64* %tmp3139, align 1 ; <i64> [#uses=1]
- store i64 %tmp, i64* %tmp3040, align 1
- %tmp36 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp37 = add i32 %tmp36, 1 ; <i32> [#uses=1]
- store i32 %tmp37, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack11opCatAssignMFAS5tango4text5Regex11__T4PairTkZ4PairZv(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg, %"CharRange!(dchar)[]" %vs_arg) {
-entry:
- %vs_arg43 = extractvalue %"CharRange!(dchar)[]" %vs_arg, 0 ; <i32> [#uses=1]
- %vs_arg44 = extractvalue %"CharRange!(dchar)[]" %vs_arg, 1 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=3]
- %tmp3 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp4 = add i32 %tmp3, %vs_arg43 ; <i32> [#uses=4]
- %tmp7 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len8 = load i32* %tmp7 ; <i32> [#uses=2]
- %tmp10 = icmp ugt i32 %tmp4, %.len8 ; <i1> [#uses=1]
- br i1 %tmp10, label %if, label %entry.endif_crit_edge
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp24.pre = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp14 = shl i32 %tmp4, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=3]
- %.ptr = load %tango.net.Socket.timeval** %tmp17 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp18 = bitcast %tango.net.Socket.timeval* %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D46TypeInfo_AS5tango4text5Regex11__T4PairTkZ4Pair6__initZ to %object.TypeInfo*), i32 %tmp14, i32 %.len8, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=1]
- store i32 %tmp14, i32* %tmp7
- store %tango.net.Socket.timeval* %.gc_mem19, %tango.net.Socket.timeval** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp24.pre-phi = phi %tango.net.Socket.timeval** [ %tmp24.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <%tango.net.Socket.timeval**> [#uses=1]
- %tmp28 = phi i32 [ %tmp28.pre, %if ], [ %tmp3, %entry.endif_crit_edge ] ; <i32> [#uses=2]
- %.ptr25 = load %tango.net.Socket.timeval** %tmp24.pre-phi ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp30 = getelementptr %tango.net.Socket.timeval* %.ptr25, i32 %tmp28 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp31 = sub i32 %tmp4, %tmp28 ; <i32> [#uses=1]
- %tmp32 = shl i32 %tmp31, 3 ; <i32> [#uses=1]
- %tmp33 = bitcast %tango.net.Socket.timeval* %tmp30 to i8* ; <i8*> [#uses=1]
- %tmp36 = bitcast %tango.net.Socket.timeval* %vs_arg44 to i8* ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp33, i8* %tmp36, i32 %tmp32, i32 1)
- store i32 %tmp4, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack3popMFkZv(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg, i32 %num_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp4 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp6 = sub i32 %tmp4, %num_arg ; <i32> [#uses=1]
- store i32 %tmp6, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack3popMFZS5tango4text5Regex11__T4PairTkZ4Pair(%tango.net.Socket.timeval* noalias nocapture sret %.sret_arg, %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp6 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp7 = add i32 %tmp6, -1 ; <i32> [#uses=2]
- store i32 %tmp7, i32* %tmp3
- %tmp8 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr = load %tango.net.Socket.timeval** %tmp8 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp9 = getelementptr %tango.net.Socket.timeval* %.ptr, i32 %tmp7 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1112 = bitcast %tango.net.Socket.timeval* %tmp9 to i64* ; <i64*> [#uses=1]
- %tmp1013 = bitcast %tango.net.Socket.timeval* %.sret_arg to i64* ; <i64*> [#uses=1]
- %tmp = load i64* %tmp1112, align 1 ; <i64> [#uses=1]
- store i64 %tmp, i64* %tmp1013, align 1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack3topMFZS5tango4text5Regex11__T4PairTkZ4Pair(%tango.net.Socket.timeval* noalias nocapture sret %.sret_arg, %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr = load %tango.net.Socket.timeval** %tmp6 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7 = getelementptr %tango.net.Socket.timeval* %.ptr, i32 %tmp5 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp910 = bitcast %tango.net.Socket.timeval* %tmp7 to i64* ; <i64*> [#uses=1]
- %tmp811 = bitcast %tango.net.Socket.timeval* %.sret_arg to i64* ; <i64*> [#uses=1]
- %tmp = load i64* %tmp910, align 1 ; <i64> [#uses=1]
- store i64 %tmp, i64* %tmp811, align 1
- ret void
-}
-
-define weak_odr fastcc %tango.net.Socket.timeval* @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack6topPtrMFZPS5tango4text5Regex11__T4PairTkZ4Pair(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr = load %tango.net.Socket.timeval** %tmp6 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp7 = getelementptr %tango.net.Socket.timeval* %.ptr, i32 %tmp5 ; <%tango.net.Socket.timeval*> [#uses=1]
- ret %tango.net.Socket.timeval* %tmp7
-}
-
-define weak_odr fastcc i1 @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack5emptyMFZb(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp3 = icmp eq i32 %tmp2, 0 ; <i1> [#uses=1]
- ret i1 %tmp3
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack5clearMFZv(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 0, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack6lengthMFZk(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- ret i32 %tmp2
-}
-
-define weak_odr fastcc %"CharRange!(dchar)[]" @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack5arrayMFZAS5tango4text5Regex11__T4PairTkZ4Pair(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr = load %tango.net.Socket.timeval** %tmp2 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp5 = load i32* %tmp4 ; <i32> [#uses=1]
- %tmp8 = insertvalue %"CharRange!(dchar)[]" undef, i32 %tmp5, 0 ; <%"CharRange!(dchar)[]"> [#uses=1]
- %tmp9 = insertvalue %"CharRange!(dchar)[]" %tmp8, %tango.net.Socket.timeval* %.ptr, 1 ; <%"CharRange!(dchar)[]"> [#uses=1]
- ret %"CharRange!(dchar)[]" %tmp9
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack7opIndexMFkZS5tango4text5Regex11__T4PairTkZ4Pair(%tango.net.Socket.timeval* noalias nocapture sret %.sret_arg, %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg, i32 %i_arg) nounwind {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr = load %tango.net.Socket.timeval** %tmp2 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp4 = getelementptr %tango.net.Socket.timeval* %.ptr, i32 %i_arg ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp67 = bitcast %tango.net.Socket.timeval* %tmp4 to i64* ; <i64*> [#uses=1]
- %tmp58 = bitcast %tango.net.Socket.timeval* %.sret_arg to i64* ; <i64*> [#uses=1]
- %tmp = load i64* %tmp67, align 1 ; <i64> [#uses=1]
- store i64 %tmp, i64* %tmp58, align 1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack3dupMFZS5tango4text5Regex47__T5StackTS5tango4text5Regex11__T4PairTkZ4PairZ5Stack(%"tango.text.Regex.Stack!(Pair!(uint)).Stack"* noalias nocapture sret %.sret_arg, %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* nocapture %.this_arg) {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp7 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.this_arg, i32 0, i32 1 ; <%"CharRange!(dchar)[]"*> [#uses=1]
- %tmp8 = bitcast %"CharRange!(dchar)[]"* %tmp7 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp9 = load %"byte[]"* %tmp8 ; <%"byte[]"> [#uses=1]
- %tmp10 = tail call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D46TypeInfo_AS5tango4text5Regex11__T4PairTkZ4Pair6__initZ to %object.TypeInfo*), %"byte[]" %tmp9) ; <%"byte[]"> [#uses=2]
- %tmp11 = extractvalue %"byte[]" %tmp10, 0 ; <i32> [#uses=1]
- %tmp13 = extractvalue %"byte[]" %tmp10, 1 ; <i8*> [#uses=1]
- %tmp14 = bitcast i8* %tmp13 to %tango.net.Socket.timeval* ; <%tango.net.Socket.timeval*> [#uses=1]
- %.sret_arg.0 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.sret_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4, i32* %.sret_arg.0
- %.sret_arg.1.0 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.sret_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp11, i32* %.sret_arg.1.0, align 4
- %.sret_arg.1.1 = getelementptr %"tango.text.Regex.Stack!(Pair!(uint)).Stack"* %.sret_arg, i32 0, i32 1, i32 1 ; <%tango.net.Socket.timeval**> [#uses=1]
- store %tango.net.Socket.timeval* %tmp14, %tango.net.Socket.timeval** %.sret_arg.1.1, align 4
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack4pushMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZv(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg) {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=4]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len = load i32* %tmp4 ; <i32> [#uses=3]
- %tmp5 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp6 = icmp ult i32 %tmp5, %.len ; <i1> [#uses=1]
- br i1 %tmp6, label %entry.endif_crit_edge, label %if
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp26.pre = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp13 = shl i32 %.len, 1 ; <i32> [#uses=1]
- %tmp1437 = or i32 %tmp13, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=3]
- %.ptr = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp17 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp18 = bitcast %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D68TypeInfo_AC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*), i32 %tmp1437, i32 %.len, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store i32 %tmp1437, i32* %tmp4
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.gc_mem19, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp26.pre-phi = phi %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** [ %tmp26.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %tmp28 = phi i32 [ %tmp5, %entry.endif_crit_edge ], [ %tmp28.pre, %if ] ; <i32> [#uses=1]
- %.ptr27 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp26.pre-phi ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp29 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr27, i32 %tmp28 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %v_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp29
- %tmp35 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp36 = add i32 %tmp35, 1 ; <i32> [#uses=1]
- store i32 %tmp36, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack11opCatAssignMFAC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZv(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg, %"TNFATransition[]" %vs_arg) {
-entry:
- %vs_arg43 = extractvalue %"TNFATransition[]" %vs_arg, 0 ; <i32> [#uses=1]
- %vs_arg44 = extractvalue %"TNFATransition[]" %vs_arg, 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=3]
- %tmp3 = load i32* %tmp1 ; <i32> [#uses=2]
- %tmp4 = add i32 %tmp3, %vs_arg43 ; <i32> [#uses=4]
- %tmp7 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=2]
- %.len8 = load i32* %tmp7 ; <i32> [#uses=2]
- %tmp10 = icmp ugt i32 %tmp4, %.len8 ; <i1> [#uses=1]
- br i1 %tmp10, label %if, label %entry.endif_crit_edge
-
-entry.endif_crit_edge: ; preds = %entry
- %tmp24.pre = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- br label %endif
-
-if: ; preds = %entry
- %tmp14 = shl i32 %tmp4, 1 ; <i32> [#uses=2]
- %tmp17 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=3]
- %.ptr = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp17 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp18 = bitcast %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D68TypeInfo_AC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*), i32 %tmp14, i32 %.len8, i8* %tmp18) ; <i8*> [#uses=1]
- %.gc_mem19 = bitcast i8* %.gc_mem to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store i32 %tmp14, i32* %tmp7
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.gc_mem19, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp17
- %tmp28.pre = load i32* %tmp1 ; <i32> [#uses=1]
- br label %endif
-
-endif: ; preds = %if, %entry.endif_crit_edge
- %tmp24.pre-phi = phi %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** [ %tmp24.pre, %entry.endif_crit_edge ], [ %tmp17, %if ] ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %tmp28 = phi i32 [ %tmp28.pre, %if ], [ %tmp3, %entry.endif_crit_edge ] ; <i32> [#uses=2]
- %.ptr25 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp24.pre-phi ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp30 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr25, i32 %tmp28 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp31 = sub i32 %tmp4, %tmp28 ; <i32> [#uses=1]
- %tmp32 = shl i32 %tmp31, 2 ; <i32> [#uses=1]
- %tmp33 = bitcast %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp30 to i8* ; <i8*> [#uses=1]
- %tmp36 = bitcast %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %vs_arg44 to i8* ; <i8*> [#uses=1]
- tail call void @llvm.memcpy.i32(i8* %tmp33, i8* %tmp36, i32 %tmp32, i32 1)
- store i32 %tmp4, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack3popMFkZv(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg, i32 %num_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp4 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp6 = sub i32 %tmp4, %num_arg ; <i32> [#uses=1]
- store i32 %tmp6, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack3popMFZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=2]
- %tmp6 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp7 = add i32 %tmp6, -1 ; <i32> [#uses=2]
- store i32 %tmp7, i32* %tmp3
- %tmp8 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %.ptr = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp8 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp9 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr, i32 %tmp7 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp10 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp9 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp10
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack3topMFZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %.ptr = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp6 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp7 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr, i32 %tmp5 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp8 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp7 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp8
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack6topPtrMFZPC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, -1 ; <i32> [#uses=1]
- %tmp6 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %.ptr = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp6 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp7 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr, i32 %tmp5 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp7
-}
-
-define weak_odr fastcc i1 @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack5emptyMFZb(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- %tmp3 = icmp eq i32 %tmp2, 0 ; <i1> [#uses=1]
- ret i1 %tmp3
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack5clearMFZv(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) nounwind {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 0, i32* %tmp1
- ret void
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack6lengthMFZk(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp1 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp2 = load i32* %tmp1 ; <i32> [#uses=1]
- ret i32 %tmp2
-}
-
-define weak_odr fastcc %"TNFATransition[]" @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack5arrayMFZAC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %.ptr = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp4 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp5 = load i32* %tmp4 ; <i32> [#uses=1]
- %tmp8 = insertvalue %"TNFATransition[]" undef, i32 %tmp5, 0 ; <%"TNFATransition[]"> [#uses=1]
- %tmp9 = insertvalue %"TNFATransition[]" %tmp8, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr, 1 ; <%"TNFATransition[]"> [#uses=1]
- ret %"TNFATransition[]" %tmp9
-}
-
-define weak_odr fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack7opIndexMFkZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg, i32 %i_arg) nounwind readonly {
-entry:
- %tmp2 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %.ptr = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %tmp2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp4 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr, i32 %i_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp5 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp4 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- ret %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp5
-}
-
-define weak_odr fastcc void @_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack3dupMFZS5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack(%"tango.text.Regex.Stack!(TNFATransition).Stack"* noalias nocapture sret %.sret_arg, %"tango.text.Regex.Stack!(TNFATransition).Stack"* nocapture %.this_arg) {
-entry:
- %tmp3 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- %tmp4 = load i32* %tmp3 ; <i32> [#uses=1]
- %tmp7 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.this_arg, i32 0, i32 1 ; <%"TNFATransition[]"*> [#uses=1]
- %tmp8 = bitcast %"TNFATransition[]"* %tmp7 to %"byte[]"* ; <%"byte[]"*> [#uses=1]
- %tmp9 = load %"byte[]"* %tmp8 ; <%"byte[]"> [#uses=1]
- %tmp10 = tail call %"byte[]" @_adDupT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D68TypeInfo_AC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*), %"byte[]" %tmp9) ; <%"byte[]"> [#uses=2]
- %tmp11 = extractvalue %"byte[]" %tmp10, 0 ; <i32> [#uses=1]
- %tmp13 = extractvalue %"byte[]" %tmp10, 1 ; <i8*> [#uses=1]
- %tmp14 = bitcast i8* %tmp13 to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %.sret_arg.0 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.sret_arg, i32 0, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp4, i32* %.sret_arg.0
- %.sret_arg.1.0 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.sret_arg, i32 0, i32 1, i32 0 ; <i32*> [#uses=1]
- store i32 %tmp11, i32* %.sret_arg.1.0, align 4
- %.sret_arg.1.1 = getelementptr %"tango.text.Regex.Stack!(TNFATransition).Stack"* %.sret_arg, i32 0, i32 1, i32 1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp14, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %.sret_arg.1.1, align 4
- ret void
-}
-
-declare i8* @llvm.eh.exception() nounwind
-
-declare i32 @_d_eh_personality(i32, i32, i64, i8*, i8*)
-
-declare i32 @llvm.eh.selector.i32(i8*, i8*, ...) nounwind
-
-declare void @_d_eh_resume_unwind(i8*)
-
-declare noalias i8* @_d_allocmemoryT(%object.TypeInfo*)
-
-declare void @llvm.memcpy.i32(i8* nocapture, i8* nocapture, i32, i32) nounwind
-
-declare noalias i8* @_d_newarrayiT(%object.TypeInfo*, i32)
-
-declare noalias i8* @_d_allocclass(%object.ClassInfo*)
-
-declare void @_d_throw_exception(%object.Object*)
-
-declare i32 @_adEq(%"byte[]", %"byte[]", %object.TypeInfo*) readonly
-
-declare void @_d_delarray(i32, i8*)
-
-declare void @_d_delclass(%object.Object*)
-
-declare fastcc %tango.net.Socket.IPv4Address* @_D5tango3net6Socket11IPv4Address5_ctorMFAaiZC5tango3net6Socket11IPv4Address(%tango.net.Socket.IPv4Address*, %"byte[]", i32)
-
-declare noalias i8* @_d_newarrayvT(%object.TypeInfo*, i32)
-
-declare i8* @_d_arraysetlengthiT(%object.TypeInfo*, i32, i32, i8*)
-
-declare fastcc void @_D5tango4time5Clock5Clock3nowFZS5tango4time4Time4Time(%tango.time.Time.Time* noalias nocapture sret)
-
-declare %object.Object* @_d_dynamic_cast(%object.Object*, %object.ClassInfo*) nounwind readonly
-
-declare fastcc void @_D5tango3net6Socket6Socket10initializeMFT5tango3net6Socket8socket_tZv(%tango.net.Socket.Socket*, i32)
-
-declare fastcc i32 @_D5tango3net6Socket6Socket6selectFC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetC5tango3net6Socket9SocketSetPS5tango3net6Socket7timevalZi(%tango.net.Socket.SocketSet*, %tango.net.Socket.SocketSet*, %tango.net.Socket.SocketSet*, %tango.net.Socket.timeval*)
-
-declare void @llvm.memset.i32(i8* nocapture, i8, i32, i32) nounwind
-
-declare %object.Object* @_d_toObject(i8*) nounwind readonly
-
-declare %"byte[]" @_adDupT(%object.TypeInfo*, %"byte[]")
-
-declare i8* @_aaGet(%32* nocapture, %object.TypeInfo*, i32, i8* nocapture)
-
-declare fastcc %"byte[]" @_D5tango4text5Ascii7toLowerFAaAaZAa(%"byte[]", %"byte[]")
-
-declare i8* @_aaIn(%32* nocapture, %object.TypeInfo*, i8* nocapture) readonly
-
-declare i32 @_d_switch_string(%"char[][]", %"byte[]") readonly
-
-declare fastcc %"tango.text.convert.Layout.Layout!(char).Layout"* @_D5tango4text7convert6Layout13__T6LayoutTaZ6Layout8instanceFZC5tango4text7convert6Layout13__T6LayoutTaZ6Layout()
-
-define weak_odr fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %.nest_arg, i32 %next_op_arg, i1 %explicit_operator_arg) {
-entry:
- %_argptr_storage = alloca %35, align 8 ; <%35*> [#uses=3]
- %_argptr_storage298 = alloca %nest.parseListLine, align 8 ; <%nest.parseListLine*> [#uses=4]
- %opStack = getelementptr i8* %.nest_arg, i32 8 ; <i8*> [#uses=1]
- %tmp3.i = bitcast i8* %opStack to i32* ; <i32*> [#uses=9]
- %tmp4.i = load i32* %tmp3.i ; <i32> [#uses=3]
- %tmp5.i = add i32 %tmp4.i, -1 ; <i32> [#uses=2]
- %tmp6.i = getelementptr i8* %.nest_arg, i32 16 ; <i8*> [#uses=1]
- %0 = bitcast i8* %tmp6.i to i32** ; <i32**> [#uses=2]
- %.ptr.i = load i32** %0 ; <i32*> [#uses=3]
- %tmp7.i = getelementptr i32* %.ptr.i, i32 %tmp5.i ; <i32*> [#uses=1]
- %tmp8.i = load i32* %tmp7.i ; <i32> [#uses=3]
- %tmp2 = mul i32 %tmp8.i, 17 ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp2, %next_op_arg ; <i32> [#uses=1]
- %tmp8 = getelementptr [289 x i32]* @.constarray34, i32 0, i32 %tmp5 ; <i32*> [#uses=1]
- %tmp9 = load i32* %tmp8 ; <i32> [#uses=1]
- switch i32 %tmp9, label %default286 [
- i32 0, label %case
- i32 1, label %case30
- i32 2, label %case204
- i32 3, label %case209
- i32 4, label %case284
- ]
-
-case: ; preds = %entry
- %tmp4.i350 = getelementptr i8* %.nest_arg, i32 12 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp4.i350 to i32* ; <i32*> [#uses=2]
- %.len.i = load i32* %1 ; <i32> [#uses=3]
- %tmp6.i352 = icmp ult i32 %tmp4.i, %.len.i ; <i1> [#uses=1]
- br i1 %tmp6.i352, label %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit, label %if.i
-
-if.i: ; preds = %case
- %tmp13.i = shl i32 %.len.i, 1 ; <i32> [#uses=1]
- %tmp1437.i = or i32 %tmp13.i, 1 ; <i32> [#uses=2]
- %tmp18.i = bitcast i32* %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i = call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D55TypeInfo_AE5tango4text5Regex11__T4TNFATwZ4TNFA8Operator6__initZ to %object.TypeInfo*), i32 %tmp1437.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i to i32* ; <i32*> [#uses=2]
- store i32 %tmp1437.i, i32* %1
- store i32* %.gc_mem19.i, i32** %0
- %tmp28.pre.i = load i32* %tmp3.i ; <i32> [#uses=1]
- br label %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit
-
-_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit: ; preds = %if.i, %case
- %.ptr27.i = phi i32* [ %.gc_mem19.i, %if.i ], [ %.ptr.i, %case ] ; <i32*> [#uses=1]
- %tmp28.i = phi i32 [ %tmp28.pre.i, %if.i ], [ %tmp4.i, %case ] ; <i32> [#uses=1]
- %tmp29.i = getelementptr i32* %.ptr27.i, i32 %tmp28.i ; <i32*> [#uses=1]
- store i32 %next_op_arg, i32* %tmp29.i
- %tmp35.i = load i32* %tmp3.i ; <i32> [#uses=1]
- %tmp36.i = add i32 %tmp35.i, 1 ; <i32> [#uses=1]
- store i32 %tmp36.i, i32* %tmp3.i
- %tmp14 = icmp eq i32 %next_op_arg, 3 ; <i1> [#uses=1]
- br i1 %tmp14, label %if, label %switchend
-
-if: ; preds = %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit
- %tagStack = getelementptr i8* %.nest_arg, i32 20 ; <i8*> [#uses=1]
- %this = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %2 = bitcast i8* %this to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=2]
- %tmp17 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %2 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp18 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp17, i32 0, i32 6 ; <i32*> [#uses=1]
- %tmp19 = load i32* %tmp18 ; <i32> [#uses=1]
- %tmp1.i360 = bitcast i8* %tagStack to i32* ; <i32*> [#uses=4]
- %tmp4.i361 = getelementptr i8* %.nest_arg, i32 24 ; <i8*> [#uses=1]
- %3 = bitcast i8* %tmp4.i361 to i32* ; <i32*> [#uses=2]
- %.len.i362 = load i32* %3 ; <i32> [#uses=3]
- %tmp5.i363 = load i32* %tmp1.i360 ; <i32> [#uses=2]
- %tmp6.i364 = icmp ult i32 %tmp5.i363, %.len.i362 ; <i1> [#uses=1]
- br i1 %tmp6.i364, label %entry.endif_crit_edge.i366, label %if.i375
-
-entry.endif_crit_edge.i366: ; preds = %if
- %tmp26.pre.i365 = getelementptr i8* %.nest_arg, i32 28 ; <i8*> [#uses=1]
- %4 = bitcast i8* %tmp26.pre.i365 to i32** ; <i32**> [#uses=1]
- %.ptr27.i378.pre = load i32** %4 ; <i32*> [#uses=1]
- br label %_D5tango4text5Regex12__T5StackTkZ5Stack4pushMFkZv.exit
-
-if.i375: ; preds = %if
- %tmp13.i367 = shl i32 %.len.i362, 1 ; <i32> [#uses=1]
- %tmp1437.i368 = or i32 %tmp13.i367, 1 ; <i32> [#uses=2]
- %tmp17.i369 = getelementptr i8* %.nest_arg, i32 28 ; <i8*> [#uses=1]
- %5 = bitcast i8* %tmp17.i369 to i32** ; <i32**> [#uses=2]
- %.ptr.i370 = load i32** %5 ; <i32*> [#uses=1]
- %tmp18.i371 = bitcast i32* %.ptr.i370 to i8* ; <i8*> [#uses=1]
- %.gc_mem.i372 = call i8* @_d_arraysetlengthT(%object.TypeInfo* @_D11TypeInfo_Ak6__initZ, i32 %tmp1437.i368, i32 %.len.i362, i8* %tmp18.i371) ; <i8*> [#uses=1]
- %.gc_mem19.i373 = bitcast i8* %.gc_mem.i372 to i32* ; <i32*> [#uses=2]
- store i32 %tmp1437.i368, i32* %3
- store i32* %.gc_mem19.i373, i32** %5
- %tmp28.pre.i374 = load i32* %tmp1.i360 ; <i32> [#uses=1]
- br label %_D5tango4text5Regex12__T5StackTkZ5Stack4pushMFkZv.exit
-
-_D5tango4text5Regex12__T5StackTkZ5Stack4pushMFkZv.exit: ; preds = %if.i375, %entry.endif_crit_edge.i366
- %.ptr27.i378 = phi i32* [ %.ptr27.i378.pre, %entry.endif_crit_edge.i366 ], [ %.gc_mem19.i373, %if.i375 ] ; <i32*> [#uses=1]
- %tmp28.i377 = phi i32 [ %tmp5.i363, %entry.endif_crit_edge.i366 ], [ %tmp28.pre.i374, %if.i375 ] ; <i32> [#uses=1]
- %tmp29.i379 = getelementptr i32* %.ptr27.i378, i32 %tmp28.i377 ; <i32*> [#uses=1]
- store i32 %tmp19, i32* %tmp29.i379
- %tmp35.i380 = load i32* %tmp1.i360 ; <i32> [#uses=1]
- %tmp36.i381 = add i32 %tmp35.i380, 1 ; <i32> [#uses=1]
- store i32 %tmp36.i381, i32* %tmp1.i360
- %tmp22 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %2 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp23 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp22, i32 0, i32 6 ; <i32*> [#uses=2]
- %tmp28 = load i32* %tmp23 ; <i32> [#uses=1]
- %tmp29 = add i32 %tmp28, 2 ; <i32> [#uses=1]
- store i32 %tmp29, i32* %tmp23
- ret i1 false
-
-case30: ; preds = %entry
- switch i32 %tmp8.i, label %default163 [
- i32 1, label %case37
- i32 2, label %case44
- i32 5, label %case52
- i32 8, label %case60
- i32 11, label %case68
- i32 6, label %case76
- i32 9, label %case84
- i32 12, label %case92
- i32 7, label %case100
- i32 10, label %case108
- i32 13, label %case116
- i32 15, label %case124
- i32 16, label %case142
- ]
-
-case37: ; preds = %case30
- %this39 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %6 = bitcast i8* %this39 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp40 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %6 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %7 = bitcast i8* %frags to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp42 = load %"tango.text.Regex.List!(TNFAFragment).List"** %7 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA15constructConcatMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp40, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp42)
- br label %switchend33
-
-case44: ; preds = %case30
- %this46 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %8 = bitcast i8* %this46 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp47 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %8 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags49 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %9 = bitcast i8* %frags49 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp50 = load %"tango.text.Regex.List!(TNFAFragment).List"** %9 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA15constructAlternMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp47, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp50)
- br label %switchend33
-
-case52: ; preds = %case30
- %this54 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %10 = bitcast i8* %this54 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp55 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %10 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags57 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %11 = bitcast i8* %frags57 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp58 = load %"tango.text.Regex.List!(TNFAFragment).List"** %11 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructZeroOneMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp55, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp58, i32 0)
- br label %switchend33
-
-case60: ; preds = %case30
- %this62 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %12 = bitcast i8* %this62 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp63 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %12 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags65 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %13 = bitcast i8* %frags65 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp66 = load %"tango.text.Regex.List!(TNFAFragment).List"** %13 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructZeroOneMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp63, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp66, i32 2)
- br label %switchend33
-
-case68: ; preds = %case30
- %this70 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %14 = bitcast i8* %this70 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp71 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %14 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags73 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %15 = bitcast i8* %frags73 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp74 = load %"tango.text.Regex.List!(TNFAFragment).List"** %15 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructZeroOneMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp71, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp74, i32 3)
- br label %switchend33
-
-case76: ; preds = %case30
- %this78 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %16 = bitcast i8* %this78 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp79 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %16 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags81 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %17 = bitcast i8* %frags81 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp82 = load %"tango.text.Regex.List!(TNFAFragment).List"** %17 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA17constructZeroMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp79, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp82, i32 0)
- br label %switchend33
-
-case84: ; preds = %case30
- %this86 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %18 = bitcast i8* %this86 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp87 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %18 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags89 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %19 = bitcast i8* %frags89 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp90 = load %"tango.text.Regex.List!(TNFAFragment).List"** %19 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA17constructZeroMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp87, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp90, i32 2)
- br label %switchend33
-
-case92: ; preds = %case30
- %this94 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %20 = bitcast i8* %this94 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp95 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %20 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags97 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %21 = bitcast i8* %frags97 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp98 = load %"tango.text.Regex.List!(TNFAFragment).List"** %21 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA17constructZeroMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp95, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp98, i32 3)
- br label %switchend33
-
-case100: ; preds = %case30
- %this102 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %22 = bitcast i8* %this102 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp103 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %22 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags105 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %23 = bitcast i8* %frags105 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp106 = load %"tango.text.Regex.List!(TNFAFragment).List"** %23 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructOneMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp103, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp106, i32 0)
- br label %switchend33
-
-case108: ; preds = %case30
- %this110 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %24 = bitcast i8* %this110 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp111 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %24 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags113 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %25 = bitcast i8* %frags113 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp114 = load %"tango.text.Regex.List!(TNFAFragment).List"** %25 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructOneMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp111, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp114, i32 2)
- br label %switchend33
-
-case116: ; preds = %case30
- %this118 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %26 = bitcast i8* %this118 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp119 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %26 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags121 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %27 = bitcast i8* %frags121 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp122 = load %"tango.text.Regex.List!(TNFAFragment).List"** %27 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructOneMoreMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp119, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp122, i32 3)
- br label %switchend33
-
-case124: ; preds = %case30
- %occurStack = getelementptr i8* %.nest_arg, i32 32 ; <i8*> [#uses=1]
- %tmp3.i389 = bitcast i8* %occurStack to i32* ; <i32*> [#uses=2]
- %tmp6.i390 = load i32* %tmp3.i389 ; <i32> [#uses=1]
- %tmp7.i391 = add i32 %tmp6.i390, -1 ; <i32> [#uses=2]
- store i32 %tmp7.i391, i32* %tmp3.i389
- %tmp8.i392 = getelementptr i8* %.nest_arg, i32 40 ; <i8*> [#uses=1]
- %28 = bitcast i8* %tmp8.i392 to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr.i393 = load %tango.net.Socket.timeval** %28 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp9.i394 = getelementptr %tango.net.Socket.timeval* %.ptr.i393, i32 %tmp7.i391 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1112.i = bitcast %tango.net.Socket.timeval* %tmp9.i394 to i64* ; <i64*> [#uses=1]
- %tmp.i = load i64* %tmp1112.i, align 1 ; <i64> [#uses=2]
- %sroa.store.elt456 = lshr i64 %tmp.i, 32 ; <i64> [#uses=1]
- %this129 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %29 = bitcast i8* %this129 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp130 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %29 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags132 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %30 = bitcast i8* %frags132 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp133 = load %"tango.text.Regex.List!(TNFAFragment).List"** %30 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- %tmp347 = trunc i64 %sroa.store.elt456 to i32 ; <i32> [#uses=1]
- %tmp344 = trunc i64 %tmp.i to i32 ; <i32> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructOccurMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListkkE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp130, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp133, i32 %tmp347, i32 %tmp344, i32 0)
- br label %switchend33
-
-case142: ; preds = %case30
- %occurStack145 = getelementptr i8* %.nest_arg, i32 32 ; <i8*> [#uses=1]
- %tmp3.i446 = bitcast i8* %occurStack145 to i32* ; <i32*> [#uses=2]
- %tmp6.i447 = load i32* %tmp3.i446 ; <i32> [#uses=1]
- %tmp7.i448 = add i32 %tmp6.i447, -1 ; <i32> [#uses=2]
- store i32 %tmp7.i448, i32* %tmp3.i446
- %tmp8.i449 = getelementptr i8* %.nest_arg, i32 40 ; <i8*> [#uses=1]
- %31 = bitcast i8* %tmp8.i449 to %tango.net.Socket.timeval** ; <%tango.net.Socket.timeval**> [#uses=1]
- %.ptr.i450 = load %tango.net.Socket.timeval** %31 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp9.i451 = getelementptr %tango.net.Socket.timeval* %.ptr.i450, i32 %tmp7.i448 ; <%tango.net.Socket.timeval*> [#uses=1]
- %tmp1112.i452 = bitcast %tango.net.Socket.timeval* %tmp9.i451 to i64* ; <i64*> [#uses=1]
- %tmp.i454 = load i64* %tmp1112.i452, align 1 ; <i64> [#uses=2]
- %sroa.store.elt = lshr i64 %tmp.i454, 32 ; <i64> [#uses=1]
- %this150 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %32 = bitcast i8* %this150 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp151 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %32 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags153 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %33 = bitcast i8* %frags153 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp154 = load %"tango.text.Regex.List!(TNFAFragment).List"** %33 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- %tmp342 = trunc i64 %sroa.store.elt to i32 ; <i32> [#uses=1]
- %tmp339 = trunc i64 %tmp.i454 to i32 ; <i32> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA14constructOccurMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListkkE5tango4text5Regex13PriorityClassZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp151, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp154, i32 %tmp342, i32 %tmp339, i32 2)
- br label %switchend33
-
-default163: ; preds = %case30
- %.newclass_gc_alloc = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc = bitcast i8* %.newclass_gc_alloc to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl = bitcast i8* %.newclass_gc_alloc to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl
- %monitor = getelementptr i8* %.newclass_gc_alloc, i32 4 ; <i8*> [#uses=1]
- %34 = bitcast i8* %monitor to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %34
- %tmp164 = getelementptr i8* %.newclass_gc_alloc, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp164, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %this169 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %35 = bitcast i8* %this169 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp170 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %35 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=3]
- %tmp172 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp170, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr173 = load i32** %tmp172 ; <i32*> [#uses=1]
- %tmp177 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp170, i32 0, i32 7 ; <i32*> [#uses=1]
- %tmp178 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp170, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len = load i32* %tmp178 ; <i32> [#uses=1]
- %tmp179 = load i32* %tmp177 ; <i32> [#uses=2]
- %tmp180 = getelementptr i32* %.ptr173, i32 %tmp179 ; <i32*> [#uses=1]
- %tmp181 = sub i32 %.len, %tmp179 ; <i32> [#uses=1]
- %tmp182 = insertvalue %"Act[]" undef, i32 %tmp181, 0 ; <%"Act[]"> [#uses=1]
- %tmp183 = insertvalue %"Act[]" %tmp182, i32* %tmp180, 1 ; <%"Act[]"> [#uses=1]
- %tmp184 = call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp183, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=2]
- %.len185 = extractvalue %"byte[]" %tmp184, 0 ; <i32> [#uses=4]
- %tmp186 = add i32 %.len185, 27 ; <i32> [#uses=3]
- %.nongc_mem = alloca i8, i32 %tmp186, align 1 ; <i8*> [#uses=3]
- %.ptr187 = extractvalue %"byte[]" %tmp184, 1 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %.nongc_mem, i8* getelementptr ([28 x i8]* @.str211, i32 0, i32 0), i32 27, i32 1)
- %tmp188 = getelementptr i8* %.nongc_mem, i32 27 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp188, i8* %.ptr187, i32 %.len185, i32 1)
- %tmp190 = add i32 %.len185, 28 ; <i32> [#uses=2]
- %.nongc_mem459 = alloca i8, i32 %tmp190, align 1 ; <i8*> [#uses=3]
- call void @llvm.memcpy.i32(i8* %.nongc_mem459, i8* %.nongc_mem, i32 %tmp186, i32 1)
- %tmp193 = getelementptr i8* %.nongc_mem459, i32 %tmp186 ; <i8*> [#uses=1]
- store i8 34, i8* %tmp193, align 1
- %tmp2.i438 = add i32 %.len185, 36 ; <i32> [#uses=2]
- %.gc_mem.i439 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i438) ; <i8*> [#uses=3]
- %.gc_mem12.i440 = bitcast i8* %.gc_mem.i439 to i64* ; <i64*> [#uses=1]
- %tmp.i441 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i441, i64* %.gc_mem12.i440, align 1
- %tmp4.i442 = getelementptr i8* %.gc_mem.i439, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i442, i8* %.nongc_mem459, i32 %tmp190, i32 1)
- %tmp6.i443 = insertvalue %"byte[]" undef, i32 %tmp2.i438, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i444 = insertvalue %"byte[]" %tmp6.i443, i8* %.gc_mem.i439, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i445 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc, %"byte[]" %tmp7.i444, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp197 = bitcast i8* %.newclass_gc_alloc to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp197)
- unreachable
-
-switchend33: ; preds = %case142, %case124, %case116, %case108, %case100, %case92, %case84, %case76, %case68, %case60, %case52, %case44, %case37
- %tmp6.i430 = load i32* %tmp3.i ; <i32> [#uses=1]
- %tmp7.i431 = add i32 %tmp6.i430, -1 ; <i32> [#uses=1]
- store i32 %tmp7.i431, i32* %tmp3.i
- %tmp202 = call fastcc i1 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv7performMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorbZb(i8* %.nest_arg, i32 %next_op_arg, i1 false) ; <i1> [#uses=0]
- ret i1 false
-
-case204: ; preds = %entry
- store i32 %tmp5.i, i32* %tmp3.i
- ret i1 false
-
-case209: ; preds = %entry
- %tmp213 = icmp eq i32 %tmp8.i, 3 ; <i1> [#uses=1]
- br i1 %tmp213, label %if214, label %else
-
-if214: ; preds = %case209
- %tagStack217 = getelementptr i8* %.nest_arg, i32 20 ; <i8*> [#uses=1]
- %tmp1.i409 = bitcast i8* %tagStack217 to i32* ; <i32*> [#uses=3]
- %tmp2.i410 = load i32* %tmp1.i409 ; <i32> [#uses=2]
- %tmp3.i411 = icmp eq i32 %tmp2.i410, 0 ; <i1> [#uses=1]
- br i1 %tmp3.i411, label %if219, label %endif220
-
-if219: ; preds = %if214
- %.newclass_gc_alloc221 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc222 = bitcast i8* %.newclass_gc_alloc221 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl223 = bitcast i8* %.newclass_gc_alloc221 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl223
- %monitor224 = getelementptr i8* %.newclass_gc_alloc221, i32 4 ; <i8*> [#uses=1]
- %36 = bitcast i8* %monitor224 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %36
- %tmp225 = getelementptr i8* %.newclass_gc_alloc221, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp225, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %layout = bitcast i8* %.nest_arg to %"tango.text.convert.Layout.Layout!(char).Layout"** ; <%"tango.text.convert.Layout.Layout!(char).Layout"**> [#uses=1]
- %tmp230 = load %"tango.text.convert.Layout.Layout!(char).Layout"** %layout ; <%"tango.text.convert.Layout.Layout!(char).Layout"*> [#uses=1]
- %tmp231 = getelementptr %35* %_argptr_storage, i32 0, i32 0 ; <i32*> [#uses=1]
- %this233 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %37 = bitcast i8* %this233 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp234 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %37 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=3]
- %tmp235 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp234, i32 0, i32 7 ; <i32*> [#uses=2]
- %tmp236 = load i32* %tmp235 ; <i32> [#uses=1]
- store i32 %tmp236, i32* %tmp231, align 8
- %tmp237 = getelementptr %35* %_argptr_storage, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp242 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp234, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr243 = load i32** %tmp242 ; <i32*> [#uses=1]
- %tmp248 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp234, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len249 = load i32* %tmp248 ; <i32> [#uses=1]
- %tmp250 = load i32* %tmp235 ; <i32> [#uses=2]
- %tmp251 = getelementptr i32* %.ptr243, i32 %tmp250 ; <i32*> [#uses=1]
- %tmp252 = sub i32 %.len249, %tmp250 ; <i32> [#uses=1]
- %tmp253 = insertvalue %"Act[]" undef, i32 %tmp252, 0 ; <%"Act[]"> [#uses=1]
- %tmp254 = insertvalue %"Act[]" %tmp253, i32* %tmp251, 1 ; <%"Act[]"> [#uses=1]
- %tmp255 = call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp254, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp255, %"byte[]"* %tmp237
- %tmp257 = bitcast %35* %_argptr_storage to i8* ; <i8*> [#uses=1]
- %tmp4.i408 = call fastcc %"byte[]" @_D5tango4text7convert6Layout13__T6LayoutTaZ6Layout7convertMFAC8TypeInfoPvAaZAa(%"tango.text.convert.Layout.Layout!(char).Layout"* %tmp230, %"TypeInfo[]" { i32 2, %object.TypeInfo** getelementptr ([2 x %object.TypeInfo*]* @._arguments.storage, i32 0, i32 0) }, i8* %tmp257, %"byte[]" { i32 67, i8* getelementptr ([68 x i8]* @.str213, i32 0, i32 0) }) ; <%"byte[]"> [#uses=2]
- %msg_arg10.i = extractvalue %"byte[]" %tmp4.i408, 0 ; <i32> [#uses=2]
- %msg_arg11.i = extractvalue %"byte[]" %tmp4.i408, 1 ; <i8*> [#uses=1]
- %tmp2.i = add i32 %msg_arg10.i, 8 ; <i32> [#uses=2]
- %.gc_mem.i402 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i) ; <i8*> [#uses=3]
- %.gc_mem12.i = bitcast i8* %.gc_mem.i402 to i64* ; <i64*> [#uses=1]
- %tmp.i403 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i403, i64* %.gc_mem12.i, align 1
- %tmp4.i404 = getelementptr i8* %.gc_mem.i402, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i404, i8* %msg_arg11.i, i32 %msg_arg10.i, i32 1)
- %tmp6.i405 = insertvalue %"byte[]" undef, i32 %tmp2.i, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i406 = insertvalue %"byte[]" %tmp6.i405, i8* %.gc_mem.i402, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i407 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc222, %"byte[]" %tmp7.i406, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp260 = bitcast i8* %.newclass_gc_alloc221 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp260)
- unreachable
-
-endif220: ; preds = %if214
- %this263 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %38 = bitcast i8* %this263 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp264 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %38 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags266 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %39 = bitcast i8* %frags266 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp267 = load %"tango.text.Regex.List!(TNFAFragment).List"** %39 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- %tmp5.i397 = add i32 %tmp2.i410, -1 ; <i32> [#uses=1]
- %tmp6.i398 = getelementptr i8* %.nest_arg, i32 28 ; <i8*> [#uses=1]
- %40 = bitcast i8* %tmp6.i398 to i32** ; <i32**> [#uses=1]
- %.ptr.i399 = load i32** %40 ; <i32*> [#uses=1]
- %tmp7.i400 = getelementptr i32* %.ptr.i399, i32 %tmp5.i397 ; <i32*> [#uses=1]
- %tmp8.i401 = load i32* %tmp7.i400 ; <i32> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructBracketMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListkZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp264, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp267, i32 %tmp8.i401)
- %tmp6.i383 = load i32* %tmp1.i409 ; <i32> [#uses=1]
- %tmp7.i384 = add i32 %tmp6.i383, -1 ; <i32> [#uses=1]
- store i32 %tmp7.i384, i32* %tmp1.i409
- br label %endif215
-
-else: ; preds = %case209
- %this275 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %41 = bitcast i8* %this275 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp276 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %41 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %frags278 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %42 = bitcast i8* %frags278 to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp279 = load %"tango.text.Regex.List!(TNFAFragment).List"** %42 ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- call fastcc void @_D5tango4text5Regex11__T4TNFATwZ4TNFA16constructBracketMFC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4ListkZv(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp276, %"tango.text.Regex.List!(TNFAFragment).List"* %tmp279, i32 0)
- br label %endif215
-
-endif215: ; preds = %else, %endif220
- %tmp6.i356 = load i32* %tmp3.i ; <i32> [#uses=1]
- %tmp7.i357 = add i32 %tmp6.i356, -1 ; <i32> [#uses=1]
- store i32 %tmp7.i357, i32* %tmp3.i
- ret i1 false
-
-case284: ; preds = %entry
- ret i1 true
-
-default286: ; preds = %entry
- %.newclass_gc_alloc287 = call noalias i8* @_d_allocclass(%object.ClassInfo* @_D5tango4text5Regex15RegExpException7__ClassZ) ; <i8*> [#uses=5]
- %.newclass_gc288 = bitcast i8* %.newclass_gc_alloc287 to %object.Exception* ; <%object.Exception*> [#uses=1]
- %vtbl289 = bitcast i8* %.newclass_gc_alloc287 to %object.Exception.__vtbl** ; <%object.Exception.__vtbl**> [#uses=1]
- store %object.Exception.__vtbl* @_D5tango4text5Regex15RegExpException6__vtblZ, %object.Exception.__vtbl** %vtbl289
- %monitor290 = getelementptr i8* %.newclass_gc_alloc287, i32 4 ; <i8*> [#uses=1]
- %43 = bitcast i8* %monitor290 to i8** ; <i8**> [#uses=1]
- store i8* null, i8** %43
- %tmp291 = getelementptr i8* %.newclass_gc_alloc287, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp291, i8* bitcast (%"byte[]"* getelementptr (%object.Exception* bitcast (%28* @_D5tango4text5Regex15RegExpException6__initZ to %object.Exception*), i32 0, i32 2) to i8*), i32 28, i32 1)
- %layout296 = bitcast i8* %.nest_arg to %"tango.text.convert.Layout.Layout!(char).Layout"** ; <%"tango.text.convert.Layout.Layout!(char).Layout"**> [#uses=1]
- %tmp297 = load %"tango.text.convert.Layout.Layout!(char).Layout"** %layout296 ; <%"tango.text.convert.Layout.Layout!(char).Layout"*> [#uses=1]
- %tmp299 = getelementptr %nest.parseListLine* %_argptr_storage298, i32 0, i32 0 ; <i32*> [#uses=1]
- %this301 = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %44 = bitcast i8* %this301 to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=2]
- %tmp302 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %44 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=3]
- %tmp303 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp302, i32 0, i32 7 ; <i32*> [#uses=2]
- %tmp304 = load i32* %tmp303 ; <i32> [#uses=1]
- store i32 %tmp304, i32* %tmp299, align 8
- %tmp305 = getelementptr %nest.parseListLine* %_argptr_storage298, i32 0, i32 1 ; <%"byte[]"*> [#uses=1]
- %tmp310 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp302, i32 0, i32 2, i32 1 ; <i32**> [#uses=1]
- %.ptr311 = load i32** %tmp310 ; <i32*> [#uses=1]
- %tmp316 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp302, i32 0, i32 2, i32 0 ; <i32*> [#uses=1]
- %.len317 = load i32* %tmp316 ; <i32> [#uses=1]
- %tmp318 = load i32* %tmp303 ; <i32> [#uses=2]
- %tmp319 = getelementptr i32* %.ptr311, i32 %tmp318 ; <i32*> [#uses=1]
- %tmp320 = sub i32 %.len317, %tmp318 ; <i32> [#uses=1]
- %tmp321 = insertvalue %"Act[]" undef, i32 %tmp320, 0 ; <%"Act[]"> [#uses=1]
- %tmp322 = insertvalue %"Act[]" %tmp321, i32* %tmp319, 1 ; <%"Act[]"> [#uses=1]
- %tmp323 = call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp322, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp323, %"byte[]"* %tmp305
- %tmp324 = getelementptr %nest.parseListLine* %_argptr_storage298, i32 0, i32 2 ; <%"byte[]"*> [#uses=1]
- %tmp327 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %44 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp328 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp327, i32 0, i32 2 ; <%"Act[]"*> [#uses=1]
- %tmp329 = load %"Act[]"* %tmp328 ; <%"Act[]"> [#uses=1]
- %tmp330 = call fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]" %tmp329, %"byte[]" zeroinitializer, i32* null) ; <%"byte[]"> [#uses=1]
- store %"byte[]" %tmp330, %"byte[]"* %tmp324
- %tmp332 = bitcast %nest.parseListLine* %_argptr_storage298 to i8* ; <i8*> [#uses=1]
- %tmp4.i354 = call fastcc %"byte[]" @_D5tango4text7convert6Layout13__T6LayoutTaZ6Layout7convertMFAC8TypeInfoPvAaZAa(%"tango.text.convert.Layout.Layout!(char).Layout"* %tmp297, %"TypeInfo[]" { i32 3, %object.TypeInfo** getelementptr ([3 x %object.TypeInfo*]* @._arguments.storage214, i32 0, i32 0) }, i8* %tmp332, %"byte[]" { i32 42, i8* getelementptr ([43 x i8]* @.str216, i32 0, i32 0) }) ; <%"byte[]"> [#uses=2]
- %msg_arg10.i419 = extractvalue %"byte[]" %tmp4.i354, 0 ; <i32> [#uses=2]
- %msg_arg11.i420 = extractvalue %"byte[]" %tmp4.i354, 1 ; <i8*> [#uses=1]
- %tmp2.i421 = add i32 %msg_arg10.i419, 8 ; <i32> [#uses=2]
- %.gc_mem.i422 = call noalias i8* @_d_newarrayvT(%object.TypeInfo* @_D11TypeInfo_Aa6__initZ, i32 %tmp2.i421) ; <i8*> [#uses=3]
- %.gc_mem12.i423 = bitcast i8* %.gc_mem.i422 to i64* ; <i64*> [#uses=1]
- %tmp.i424 = load i64* bitcast ([9 x i8]* @.str280 to i64*), align 8 ; <i64> [#uses=1]
- store i64 %tmp.i424, i64* %.gc_mem12.i423, align 1
- %tmp4.i425 = getelementptr i8* %.gc_mem.i422, i32 8 ; <i8*> [#uses=1]
- call void @llvm.memcpy.i32(i8* %tmp4.i425, i8* %msg_arg11.i420, i32 %msg_arg10.i419, i32 1)
- %tmp6.i426 = insertvalue %"byte[]" undef, i32 %tmp2.i421, 0 ; <%"byte[]"> [#uses=1]
- %tmp7.i427 = insertvalue %"byte[]" %tmp6.i426, i8* %.gc_mem.i422, 1 ; <%"byte[]"> [#uses=1]
- %tmp8.i428 = call fastcc %object.Exception* @_D6object9Exception5_ctorMFAaC9ExceptionZC9Exception(%object.Exception* %.newclass_gc288, %"byte[]" %tmp7.i427, %object.Exception* null) ; <%object.Exception*> [#uses=0]
- %tmp335 = bitcast i8* %.newclass_gc_alloc287 to %object.Object* ; <%object.Object*> [#uses=1]
- call void @_d_throw_exception(%object.Object* %tmp335)
- unreachable
-
-switchend: ; preds = %_D5tango4text5Regex56__T5StackTE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZ5Stack4pushMFE5tango4text5Regex11__T4TNFATwZ4TNFA8OperatorZv.exit
- ret i1 false
-}
-
-declare fastcc %"byte[]" @_D5tango4text7convert3Utf8toStringFAwAaPkZAa(%"Act[]", %"byte[]", i32*)
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv15__foreachbody44MFKC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %__applyArg0_arg ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=3]
- %tmp2 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp, i32 0, i32 0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"**> [#uses=2]
- %tmp3 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"f.setExit@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp3, i32 0, i32 6 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %f.setExit = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"f.setExit@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- %finish = getelementptr i8* %.nest_arg, i32 44 ; <i8*> [#uses=1]
- %0 = bitcast i8* %finish to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %0 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- tail call fastcc void %f.setExit(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp6)
- %tmp9 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"** %tmp2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"*> [#uses=1]
- %"f.setEntry@vtbl" = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment.__vtbl"* %tmp9, i32 0, i32 5 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)**> [#uses=1]
- %f.setEntry = load void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)** %"f.setEntry@vtbl", align 4 ; <void (%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*, %"tango.text.Regex.TNFAState!(dchar).TNFAState"*)*> [#uses=1]
- %this = getelementptr i8* %.nest_arg, i32 64 ; <i8*> [#uses=1]
- %1 = bitcast i8* %this to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp12 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %1 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp13 = getelementptr %"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp12, i32 0, i32 4 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp14 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp13 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- tail call fastcc void %f.setEntry(%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp, %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp14)
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv15__foreachbody45MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %todo = getelementptr i8* %.nest_arg, i32 48 ; <i8*> [#uses=1]
- %tmp1.i = bitcast i8* %todo to i32* ; <i32*> [#uses=4]
- %tmp4.i = getelementptr i8* %.nest_arg, i32 52 ; <i8*> [#uses=1]
- %0 = bitcast i8* %tmp4.i to i32* ; <i32*> [#uses=2]
- %.len.i = load i32* %0 ; <i32> [#uses=3]
- %tmp5.i = load i32* %tmp1.i ; <i32> [#uses=2]
- %tmp6.i = icmp ult i32 %tmp5.i, %.len.i ; <i1> [#uses=1]
- br i1 %tmp6.i, label %entry.endif_crit_edge.i, label %if.i
-
-entry.endif_crit_edge.i: ; preds = %entry
- %tmp26.pre.i = getelementptr i8* %.nest_arg, i32 56 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp26.pre.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=1]
- %.ptr27.i.pre = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %1 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- br label %_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack4pushMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZv.exit
-
-if.i: ; preds = %entry
- %tmp13.i = shl i32 %.len.i, 1 ; <i32> [#uses=1]
- %tmp1437.i = or i32 %tmp13.i, 1 ; <i32> [#uses=2]
- %tmp17.i = getelementptr i8* %.nest_arg, i32 56 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp17.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"***> [#uses=2]
- %.ptr.i = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp18.i = bitcast %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr.i to i8* ; <i8*> [#uses=1]
- %.gc_mem.i = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D68TypeInfo_AC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition6__initZ to %object.TypeInfo*), i32 %tmp1437.i, i32 %.len.i, i8* %tmp18.i) ; <i8*> [#uses=1]
- %.gc_mem19.i = bitcast i8* %.gc_mem.i to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=2]
- store i32 %tmp1437.i, i32* %0
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.gc_mem19.i, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*** %2
- %tmp28.pre.i = load i32* %tmp1.i ; <i32> [#uses=1]
- br label %_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack4pushMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZv.exit
-
-_D5tango4text5Regex69__T5StackTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ5Stack4pushMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZv.exit: ; preds = %if.i, %entry.endif_crit_edge.i
- %.ptr27.i = phi %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** [ %.ptr27.i.pre, %entry.endif_crit_edge.i ], [ %.gc_mem19.i, %if.i ] ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp28.i = phi i32 [ %tmp5.i, %entry.endif_crit_edge.i ], [ %tmp28.pre.i, %if.i ] ; <i32> [#uses=1]
- %tmp29.i = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %.ptr27.i, i32 %tmp28.i ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- store %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp29.i
- %tmp35.i = load i32* %tmp1.i ; <i32> [#uses=1]
- %tmp36.i = add i32 %tmp35.i, 1 ; <i32> [#uses=1]
- store i32 %tmp36.i, i32* %tmp1.i
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5parseMFbZv15__foreachbody46MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) nounwind {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp2 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp, i32 0, i32 4 ; <i32*> [#uses=1]
- %nextPrio = getelementptr i8* %.nest_arg, i32 60 ; <i8*> [#uses=1]
- %0 = bitcast i8* %nextPrio to i32* ; <i32*> [#uses=2]
- %tmp4 = load i32* %0 ; <i32> [#uses=2]
- %tmp5 = add i32 %tmp4, 1 ; <i32> [#uses=1]
- store i32 %tmp5, i32* %0
- store i32 %tmp4, i32* %tmp2
- ret i32 0
-}
-
-declare fastcc i32 @_D5tango4text5Regex6decodeFAwKkZw(%"Act[]", i32*)
-
-declare i8* @_d_arraysetlengthT(%object.TypeInfo*, i32, i32, i8*)
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZC5tango4text5Regex16__T9TNFAStateTwZ9TNFAState15__foreachbody47MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %s2 = bitcast i8* %.nest_arg to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %s2 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- %tmp3 = getelementptr %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp2, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp4, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"s2.transitions.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp6, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %s2.transitions.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"s2.transitions.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %this = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %this to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %0 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp11 = tail call fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp9, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp) ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp12 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %s2.transitions.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp4, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp11) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody48MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %f2 = bitcast i8* %.nest_arg to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %f2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp3 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp2, i32 0, i32 2 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp4, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f2.entries.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp6, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f2.entries.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f2.entries.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %this = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %this to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %0 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp11 = tail call fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp9, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp) ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp12 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f2.entries.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp4, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp11) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody49MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %f2 = bitcast i8* %.nest_arg to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %f2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp3 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp2, i32 0, i32 3 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp4, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f2.exits.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp6, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f2.exits.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f2.exits.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %this = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %this to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %0 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp11 = tail call fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp9, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp) ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp12 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f2.exits.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp4, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp11) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody50MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %f2 = bitcast i8* %.nest_arg to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %f2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp3 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp2, i32 0, i32 4 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp4, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f2.entry_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp6, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f2.entry_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f2.entry_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %this = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %this to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %0 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp11 = tail call fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp9, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp) ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp12 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f2.entry_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp4, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp11) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment15__foreachbody51MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %f2 = bitcast i8* %.nest_arg to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp2 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %f2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp3 = getelementptr %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp2, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.List!(TNFATransition).List"** %tmp3 ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp5 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp4, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp6 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp5 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"f2.exit_state.opCatAssign@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp6, i32 0, i32 5 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %f2.exit_state.opCatAssign = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"f2.exit_state.opCatAssign@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %this = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %this to %"tango.text.Regex.TNFA!(dchar).TNFA"** ; <%"tango.text.Regex.TNFA!(dchar).TNFA"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.TNFA!(dchar).TNFA"** %0 ; <%"tango.text.Regex.TNFA!(dchar).TNFA"*> [#uses=1]
- %tmp11 = tail call fastcc %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* @_D5tango4text5Regex11__T4TNFATwZ4TNFA5cloneMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransition(%"tango.text.Regex.TNFA!(dchar).TNFA"* %tmp9, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp) ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp12 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %f2.exit_state.opCatAssign(%"tango.text.Regex.List!(TNFATransition).List"* %tmp4, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp11) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=0]
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List11insertAfterMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List15__foreachbody52MFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZi(i8* nocapture %.nest_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %__applyArg0_arg ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp2 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp, i32 0, i32 2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %w = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %w to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp5 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %0 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp6 = icmp eq %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp4, %tmp5 ; <i1> [#uses=1]
- br i1 %tmp6, label %if, label %endif
-
-if: ; preds = %entry
- %__result = getelementptr i8* %.nest_arg, i32 12 ; <i8*> [#uses=1]
- %1 = bitcast i8* %__result to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %this = bitcast i8* %.nest_arg to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.List!(TNFATransition).List"** %this ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp9, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp11 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp10 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.insertAfter@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp11, i32 0, i32 7 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.insertAfter = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.insertAfter@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %v = getelementptr i8* %.nest_arg, i32 8 ; <i8*> [#uses=1]
- %2 = bitcast i8* %v to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp15 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp16 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.insertAfter(%"tango.text.Regex.List!(TNFATransition).List"* %tmp9, %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp15) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp16, %"tango.text.Regex.List!(TNFATransition).List"** %1
- ret i32 2
-
-endif: ; preds = %entry
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List12insertBeforeMFC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List15__foreachbody53MFKC5tango4text5Regex68__T4ListTC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZ4List7ElementZi(i8* nocapture %.nest_arg, %"tango.text.Regex.List!(TNFATransition).List.Element"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.List!(TNFATransition).List.Element"** %__applyArg0_arg ; <%"tango.text.Regex.List!(TNFATransition).List.Element"*> [#uses=2]
- %tmp2 = getelementptr %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp, i32 0, i32 2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %w = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %w to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %tmp2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp5 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %0 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp6 = icmp eq %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp4, %tmp5 ; <i1> [#uses=1]
- br i1 %tmp6, label %if, label %endif
-
-if: ; preds = %entry
- %__result = getelementptr i8* %.nest_arg, i32 12 ; <i8*> [#uses=1]
- %1 = bitcast i8* %__result to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %this = bitcast i8* %.nest_arg to %"tango.text.Regex.List!(TNFATransition).List"** ; <%"tango.text.Regex.List!(TNFATransition).List"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.List!(TNFATransition).List"** %this ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=2]
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFATransition).List"* %tmp9, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"**> [#uses=1]
- %tmp11 = load %"tango.text.Regex.List!(TNFATransition).List.__vtbl"** %tmp10 ; <%"tango.text.Regex.List!(TNFATransition).List.__vtbl"*> [#uses=1]
- %"this.insertBefore@vtbl" = getelementptr %"tango.text.Regex.List!(TNFATransition).List.__vtbl"* %tmp11, i32 0, i32 11 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)**> [#uses=1]
- %this.insertBefore = load %"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)** %"this.insertBefore@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFATransition).List"* (%"tango.text.Regex.List!(TNFATransition).List"*, %"tango.text.Regex.List!(TNFATransition).List.Element"*, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*)*> [#uses=1]
- %v = getelementptr i8* %.nest_arg, i32 8 ; <i8*> [#uses=1]
- %2 = bitcast i8* %v to %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"**> [#uses=1]
- %tmp15 = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %2 ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp16 = tail call fastcc %"tango.text.Regex.List!(TNFATransition).List"* %this.insertBefore(%"tango.text.Regex.List!(TNFATransition).List"* %tmp9, %"tango.text.Regex.List!(TNFATransition).List.Element"* %tmp, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp15) ; <%"tango.text.Regex.List!(TNFATransition).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFATransition).List"* %tmp16, %"tango.text.Regex.List!(TNFATransition).List"** %1
- ret i32 2
-
-endif: ; preds = %entry
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment8setEntryMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv15__foreachbody54MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) nounwind {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp2 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp, i32 0, i32 2 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %state = bitcast i8* %.nest_arg to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %state ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp4, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp2
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragment7setExitMFC5tango4text5Regex16__T9TNFAStateTwZ9TNFAStateZv15__foreachbody55MFKC5tango4text5Regex22__T14TNFATransitionTwZ14TNFATransitionZi(i8* nocapture %.nest_arg, %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** nocapture %__applyArg0_arg) nounwind {
-entry:
- %tmp = load %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"** %__applyArg0_arg ; <%"tango.text.Regex.TNFATransition!(dchar).TNFATransition"*> [#uses=1]
- %tmp2 = getelementptr %"tango.text.Regex.TNFATransition!(dchar).TNFATransition"* %tmp, i32 0, i32 2 ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %state = bitcast i8* %.nest_arg to %"tango.text.Regex.TNFAState!(dchar).TNFAState"** ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %state ; <%"tango.text.Regex.TNFAState!(dchar).TNFAState"*> [#uses=1]
- store %"tango.text.Regex.TNFAState!(dchar).TNFAState"* %tmp4, %"tango.text.Regex.TNFAState!(dchar).TNFAState"** %tmp2
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List11insertAfterMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List15__foreachbody56MFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZi(i8* nocapture %.nest_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %__applyArg0_arg ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp2 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %w = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %w to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp5 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp6 = icmp eq %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp4, %tmp5 ; <i1> [#uses=1]
- br i1 %tmp6, label %if, label %endif
-
-if: ; preds = %entry
- %__result = getelementptr i8* %.nest_arg, i32 12 ; <i8*> [#uses=1]
- %1 = bitcast i8* %__result to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %this = bitcast i8* %.nest_arg to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.List!(TNFAFragment).List"** %this ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp9, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp11 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp10 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"this.insertAfter@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp11, i32 0, i32 7 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %this.insertAfter = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"this.insertAfter@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %v = getelementptr i8* %.nest_arg, i32 8 ; <i8*> [#uses=1]
- %2 = bitcast i8* %v to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp15 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp16 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %this.insertAfter(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp9, %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp15) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %tmp16, %"tango.text.Regex.List!(TNFAFragment).List"** %1
- ret i32 2
-
-endif: ; preds = %entry
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List12insertBeforeMFC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List15__foreachbody57MFKC5tango4text5Regex64__T4ListTC5tango4text5Regex20__T12TNFAFragmentTwZ12TNFAFragmentZ4List7ElementZi(i8* nocapture %.nest_arg, %"tango.text.Regex.List!(TNFAFragment).List.Element"** nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"tango.text.Regex.List!(TNFAFragment).List.Element"** %__applyArg0_arg ; <%"tango.text.Regex.List!(TNFAFragment).List.Element"*> [#uses=2]
- %tmp2 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp, i32 0, i32 2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %w = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %w to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp4 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %tmp2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp5 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %0 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp6 = icmp eq %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp4, %tmp5 ; <i1> [#uses=1]
- br i1 %tmp6, label %if, label %endif
-
-if: ; preds = %entry
- %__result = getelementptr i8* %.nest_arg, i32 12 ; <i8*> [#uses=1]
- %1 = bitcast i8* %__result to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %this = bitcast i8* %.nest_arg to %"tango.text.Regex.List!(TNFAFragment).List"** ; <%"tango.text.Regex.List!(TNFAFragment).List"**> [#uses=1]
- %tmp9 = load %"tango.text.Regex.List!(TNFAFragment).List"** %this ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=2]
- %tmp10 = getelementptr %"tango.text.Regex.List!(TNFAFragment).List"* %tmp9, i32 0, i32 0 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"**> [#uses=1]
- %tmp11 = load %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"** %tmp10 ; <%"tango.text.Regex.List!(TNFAFragment).List.__vtbl"*> [#uses=1]
- %"this.insertBefore@vtbl" = getelementptr %"tango.text.Regex.List!(TNFAFragment).List.__vtbl"* %tmp11, i32 0, i32 11 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)**> [#uses=1]
- %this.insertBefore = load %"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)** %"this.insertBefore@vtbl", align 4 ; <%"tango.text.Regex.List!(TNFAFragment).List"* (%"tango.text.Regex.List!(TNFAFragment).List"*, %"tango.text.Regex.List!(TNFAFragment).List.Element"*, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*)*> [#uses=1]
- %v = getelementptr i8* %.nest_arg, i32 8 ; <i8*> [#uses=1]
- %2 = bitcast i8* %v to %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"**> [#uses=1]
- %tmp15 = load %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"** %2 ; <%"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"*> [#uses=1]
- %tmp16 = tail call fastcc %"tango.text.Regex.List!(TNFAFragment).List"* %this.insertBefore(%"tango.text.Regex.List!(TNFAFragment).List"* %tmp9, %"tango.text.Regex.List!(TNFAFragment).List.Element"* %tmp, %"tango.text.Regex.TNFAFragment!(dchar).TNFAFragment"* %tmp15) ; <%"tango.text.Regex.List!(TNFAFragment).List"*> [#uses=1]
- store %"tango.text.Regex.List!(TNFAFragment).List"* %tmp16, %"tango.text.Regex.List!(TNFAFragment).List"** %1
- ret i32 2
-
-endif: ; preds = %entry
- ret i32 0
-}
-
-define weak_odr fastcc i32 @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody41MFKAaZi(i8* nocapture %.nest_arg, %"byte[]"* nocapture %__applyArg0_arg) nounwind {
-entry:
- %count = bitcast i8* %.nest_arg to i32* ; <i32*> [#uses=2]
- %tmp4 = load i32* %count ; <i32> [#uses=1]
- %tmp5 = add i32 %tmp4, 1 ; <i32> [#uses=1]
- store i32 %tmp5, i32* %count
- ret i32 0
-}
-
-declare noalias i8* @_d_newarrayT(%object.TypeInfo*, i32)
-
-define weak_odr fastcc i32 @_D5tango4text4Util18__T10splitLinesTaZ10splitLinesFAaZAAa15__foreachbody42MFKAaZi(i8* nocapture %.nest_arg, %"byte[]"* nocapture %__applyArg0_arg) nounwind {
-entry:
- %tmp = load %"byte[]"* %__applyArg0_arg ; <%"byte[]"> [#uses=1]
- %count = bitcast i8* %.nest_arg to i32* ; <i32*> [#uses=2]
- %tmp3 = load i32* %count ; <i32> [#uses=2]
- %tmp4 = add i32 %tmp3, 1 ; <i32> [#uses=1]
- store i32 %tmp4, i32* %count
- %tmp5 = getelementptr i8* %.nest_arg, i32 8 ; <i8*> [#uses=1]
- %0 = bitcast i8* %tmp5 to %"byte[]"** ; <%"byte[]"**> [#uses=1]
- %.ptr = load %"byte[]"** %0 ; <%"byte[]"*> [#uses=1]
- %tmp6 = getelementptr %"byte[]"* %.ptr, i32 %tmp3 ; <%"byte[]"*> [#uses=1]
- store %"byte[]" %tmp, %"byte[]"* %tmp6
- ret i32 0
-}
-
-define weak_odr fastcc i1 @_D5tango4text7convert9TimeStamp14__T7dostimeTaZ7dostimeFAaKS5tango4time4Time4TimeZi2dtMFKPaZb(i8* nocapture %.nest_arg, i8** nocapture %p_arg) nounwind {
-entry:
- %tmp1 = getelementptr i8* %.nest_arg, i32 12 ; <i8*> [#uses=1]
- %0 = bitcast i8* %tmp1 to i32* ; <i32*> [#uses=1]
- %tmp.pre.i = load i8** %p_arg ; <i8*> [#uses=1]
- br label %whilecond.i
-
-whilecond.i: ; preds = %whilebody.i, %entry
- %tmp10.i = phi i8* [ %tmp11.i, %whilebody.i ], [ %tmp.pre.i, %entry ] ; <i8*> [#uses=3]
- %value.0.i = phi i32 [ 0, %entry ], [ %tmp15.i, %whilebody.i ] ; <i32> [#uses=3]
- %tmp1.i = load i8* %tmp10.i ; <i8> [#uses=1]
- %tmp1.i.off = add i8 %tmp1.i, -48 ; <i8> [#uses=1]
- %or.cond = icmp ult i8 %tmp1.i.off, 10 ; <i1> [#uses=1]
- br i1 %or.cond, label %whilebody.i, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit
-
-whilebody.i: ; preds = %whilecond.i
- %tmp9.i = mul i32 %value.0.i, 10 ; <i32> [#uses=1]
- %tmp11.i = getelementptr i8* %tmp10.i, i32 1 ; <i8*> [#uses=2]
- store i8* %tmp11.i, i8** %p_arg
- %tmp12.i = load i8* %tmp10.i ; <i8> [#uses=1]
- %tmp13.i = zext i8 %tmp12.i to i32 ; <i32> [#uses=1]
- %tmp14.i = add i32 %tmp9.i, %tmp13.i ; <i32> [#uses=1]
- %tmp15.i = add i32 %tmp14.i, -48 ; <i32> [#uses=1]
- br label %whilecond.i
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit: ; preds = %whilecond.i
- store i32 %value.0.i, i32* %0
- %tmp3 = icmp eq i32 %value.0.i, 0 ; <i1> [#uses=1]
- br i1 %tmp3, label %andandend10, label %andand
-
-andand: ; preds = %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit
- %tmp4 = load i8** %p_arg ; <i8*> [#uses=2]
- %tmp5 = getelementptr i8* %tmp4, i32 1 ; <i8*> [#uses=2]
- store i8* %tmp5, i8** %p_arg
- %tmp6 = load i8* %tmp4 ; <i8> [#uses=1]
- %tmp8 = icmp eq i8 %tmp6, 45 ; <i1> [#uses=1]
- br i1 %tmp8, label %andand9, label %andandend10
-
-andand9: ; preds = %andand
- %tmp13 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %1 = bitcast i8* %tmp13 to i32* ; <i32*> [#uses=1]
- br label %whilecond.i58
-
-whilecond.i58: ; preds = %whilebody.i65, %andand9
- %tmp10.i54 = phi i8* [ %tmp11.i60, %whilebody.i65 ], [ %tmp5, %andand9 ] ; <i8*> [#uses=3]
- %value.0.i55 = phi i32 [ 0, %andand9 ], [ %tmp15.i64, %whilebody.i65 ] ; <i32> [#uses=3]
- %tmp1.i56 = load i8* %tmp10.i54 ; <i8> [#uses=1]
- %tmp1.i56.off = add i8 %tmp1.i56, -48 ; <i8> [#uses=1]
- %or.cond72 = icmp ult i8 %tmp1.i56.off, 10 ; <i1> [#uses=1]
- br i1 %or.cond72, label %whilebody.i65, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70
-
-whilebody.i65: ; preds = %whilecond.i58
- %tmp9.i59 = mul i32 %value.0.i55, 10 ; <i32> [#uses=1]
- %tmp11.i60 = getelementptr i8* %tmp10.i54, i32 1 ; <i8*> [#uses=2]
- store i8* %tmp11.i60, i8** %p_arg
- %tmp12.i61 = load i8* %tmp10.i54 ; <i8> [#uses=1]
- %tmp13.i62 = zext i8 %tmp12.i61 to i32 ; <i32> [#uses=1]
- %tmp14.i63 = add i32 %tmp9.i59, %tmp13.i62 ; <i32> [#uses=1]
- %tmp15.i64 = add i32 %tmp14.i63, -48 ; <i32> [#uses=1]
- br label %whilecond.i58
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70: ; preds = %whilecond.i58
- store i32 %value.0.i55, i32* %1
- %tmp15 = icmp eq i32 %value.0.i55, 0 ; <i1> [#uses=1]
- br i1 %tmp15, label %andandend10, label %andand16
-
-andand16: ; preds = %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70
- %tmp18 = load i8** %p_arg ; <i8*> [#uses=2]
- %tmp19 = getelementptr i8* %tmp18, i32 1 ; <i8*> [#uses=2]
- store i8* %tmp19, i8** %p_arg
- %tmp20 = load i8* %tmp18 ; <i8> [#uses=1]
- %tmp22 = icmp eq i8 %tmp20, 45 ; <i1> [#uses=1]
- br i1 %tmp22, label %andand23, label %andandend10
-
-andand23: ; preds = %andand16
- %tmp27 = getelementptr i8* %.nest_arg, i32 8 ; <i8*> [#uses=1]
- %2 = bitcast i8* %tmp27 to i32* ; <i32*> [#uses=1]
- br label %whilecond.i39
-
-whilecond.i39: ; preds = %whilebody.i46, %andand23
- %tmp10.i35 = phi i8* [ %tmp11.i41, %whilebody.i46 ], [ %tmp19, %andand23 ] ; <i8*> [#uses=3]
- %value.0.i36 = phi i32 [ 0, %andand23 ], [ %tmp15.i45, %whilebody.i46 ] ; <i32> [#uses=3]
- %tmp1.i37 = load i8* %tmp10.i35 ; <i8> [#uses=1]
- %tmp1.i37.off = add i8 %tmp1.i37, -48 ; <i8> [#uses=1]
- %or.cond73 = icmp ult i8 %tmp1.i37.off, 10 ; <i1> [#uses=1]
- br i1 %or.cond73, label %whilebody.i46, label %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit51
-
-whilebody.i46: ; preds = %whilecond.i39
- %tmp9.i40 = mul i32 %value.0.i36, 10 ; <i32> [#uses=1]
- %tmp11.i41 = getelementptr i8* %tmp10.i35, i32 1 ; <i8*> [#uses=2]
- store i8* %tmp11.i41, i8** %p_arg
- %tmp12.i42 = load i8* %tmp10.i35 ; <i8> [#uses=1]
- %tmp13.i43 = zext i8 %tmp12.i42 to i32 ; <i32> [#uses=1]
- %tmp14.i44 = add i32 %tmp9.i40, %tmp13.i43 ; <i32> [#uses=1]
- %tmp15.i45 = add i32 %tmp14.i44, -48 ; <i32> [#uses=1]
- br label %whilecond.i39
-
-_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit51: ; preds = %whilecond.i39
- store i32 %value.0.i36, i32* %2
- %tmp29 = icmp ne i32 %value.0.i36, 0 ; <i1> [#uses=1]
- ret i1 %tmp29
-
-andandend10: ; preds = %andand16, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit70, %andand, %_D5tango4text7convert9TimeStamp15__T8parseIntTaZ8parseIntFKPaZi.exit
- ret i1 false
-}
+forbody.i: ; preds = %forcond.i
+ %t106.i = add i32 %storemerge.i, 1 ; <i32> [#uses=2]
+ %phit3 = icmp ugt i32 %t106.i, 3 ; <i1> [#uses=1]
+ br label %forcond.i
-define weak_odr fastcc i32 @_D5tango4text4Util14__T7delimitTaZ7delimitFAaAaZAAa15__foreachbody43MFKAaZi(i8* nocapture %.nest_arg, %"byte[]"* nocapture %__applyArg0_arg) {
-entry:
- %tmp = load %"byte[]"* %__applyArg0_arg ; <%"byte[]"> [#uses=1]
- %tmp2 = bitcast i8* %.nest_arg to i32* ; <i32*> [#uses=2]
- %.len = load i32* %tmp2 ; <i32> [#uses=3]
- %tmp3 = add i32 %.len, 1 ; <i32> [#uses=2]
- %tmp6 = getelementptr i8* %.nest_arg, i32 4 ; <i8*> [#uses=1]
- %0 = bitcast i8* %tmp6 to %"byte[]"** ; <%"byte[]"**> [#uses=2]
- %.ptr = load %"byte[]"** %0 ; <%"byte[]"*> [#uses=1]
- %tmp7 = bitcast %"byte[]"* %.ptr to i8* ; <i8*> [#uses=1]
- %.gc_mem = tail call i8* @_d_arraysetlengthT(%object.TypeInfo* bitcast (%object.TypeInfo_Array* @_D12TypeInfo_AAa6__initZ to %object.TypeInfo*), i32 %tmp3, i32 %.len, i8* %tmp7) ; <i8*> [#uses=1]
- %.gc_mem8 = bitcast i8* %.gc_mem to %"byte[]"* ; <%"byte[]"*> [#uses=2]
- %tmp9 = getelementptr %"byte[]"* %.gc_mem8, i32 %.len ; <%"byte[]"*> [#uses=1]
- store %"byte[]" %tmp, %"byte[]"* %tmp9
- store i32 %tmp3, i32* %tmp2
- store %"byte[]"* %.gc_mem8, %"byte[]"** %0
- ret i32 0
-}
+forcond.i295: ; preds = %forbody.i301, %forcond.i
+ %storemerge.i292 = phi i32 [ %t106.i325, %forbody.i301 ], [ 4, %forcond.i ] ; <i32> [#uses=1]
+ %t77.i293 = phi i1 [ %phit2, %forbody.i301 ], [ false, %forcond.i ] ; <i1> [#uses=1]
+ br i1 %t77.i293, label %forcond.i332, label %forbody.i301
-declare fastcc %"tango.text.Regex.RegExpT!(char).RegExpT"* @_D5tango4text5Regex14__T7RegExpTTaZ7RegExpT5_ctorMFAabbbZC5tango4text5Regex14__T7RegExpTTaZ7RegExpT(%"tango.text.Regex.RegExpT!(char).RegExpT"*, %"byte[]", i1, i1, i1)
+forbody.i301: ; preds = %forcond.i295
+ %t106.i325 = add i32 %storemerge.i292, 1 ; <i32> [#uses=2]
+ %phit2 = icmp ugt i32 %t106.i325, 6 ; <i1> [#uses=1]
+ br label %forcond.i295
-declare fastcc %"byte[]" @_D5tango4text7convert6Layout13__T6LayoutTaZ6Layout7convertMFAC8TypeInfoPvAaZAa(%"tango.text.convert.Layout.Layout!(char).Layout"*, %"TypeInfo[]", i8*, %"byte[]")
+forcond.i332: ; preds = %forbody.i338, %forcond.i295
+ %storemerge.i329 = phi i32 [ %t106.i362, %forbody.i338 ], [ 7, %forcond.i295 ] ; <i32> [#uses=3]
+ %t77.i330 = phi i1 [ %phit1, %forbody.i338 ], [ false, %forcond.i295 ] ; <i1> [#uses=1]
+ br i1 %t77.i330, label %wcond.i370, label %forbody.i338
-declare i32 @strncasecmp(i8*, i8*, i32)
+forbody.i338: ; preds = %forcond.i332
+ %t106.i362 = add i32 %storemerge.i329, 1 ; <i32> [#uses=2]
+ %phit1 = icmp ugt i32 %t106.i362, 9 ; <i1> [#uses=1]
+ br label %forcond.i332
-define internal void @_D5tango3net3ftp9FtpClient16__moduleinfoCtorZ() nounwind {
-moduleinfoCtorEntry:
- %current = load %ModuleReference** @_Dmodule_ref ; <%ModuleReference*> [#uses=1]
- store %ModuleReference* %current, %ModuleReference** getelementptr (%ModuleReference* @_D5tango3net3ftp9FtpClient11__moduleRefZ, i32 0, i32 0), align 8
- store %ModuleReference* @_D5tango3net3ftp9FtpClient11__moduleRefZ, %ModuleReference** @_Dmodule_ref
- ret void
+wcond.i370: ; preds = %wbody.i372, %forcond.i332
+ %.frame.0.11 = phi i32 [ %t18.i371.c, %wbody.i372 ], [ %storemerge.i329, %forcond.i332 ] ; <i32> [#uses=2]
+ %t3.i368 = phi i32 [ %t18.i371.c, %wbody.i372 ], [ %storemerge.i329, %forcond.i332 ] ; <i32> [#uses=5]
+ %t4.i369 = icmp ult i32 %t3.i368, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t4.i369, label %andand.i378, label %wcond22.i383
+
+wbody.i372: ; preds = %andand.i378
+ %t18.i371.c = add i32 %t3.i368, 1 ; <i32> [#uses=2]
+ br label %wcond.i370
+
+andand.i378: ; preds = %wcond.i370
+ %t11.i375 = getelementptr i8* %line_arg831, i32 %t3.i368 ; <i8*> [#uses=1]
+ %t12.i376 = load i8* %t11.i375 ; <i8> [#uses=1]
+ %t14.i377 = icmp eq i8 %t12.i376, 32 ; <i1> [#uses=1]
+ br i1 %t14.i377, label %wbody.i372, label %wcond22.i383
+
+wcond22.i383: ; preds = %wbody23.i385, %andand.i378, %wcond.i370
+ %.frame.0.10 = phi i32 [ %t50.i384, %wbody23.i385 ], [ %.frame.0.11, %wcond.i370 ], [ %.frame.0.11, %andand.i378 ] ; <i32> [#uses=2]
+ %t49.i381 = phi i32 [ %t50.i384, %wbody23.i385 ], [ %t3.i368, %wcond.i370 ], [ %t3.i368, %andand.i378 ] ; <i32> [#uses=5]
+ %t32.i382 = icmp ult i32 %t49.i381, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t32.i382, label %andand33.i391, label %wcond54.i396
+
+wbody23.i385: ; preds = %andand33.i391
+ %t50.i384 = add i32 %t49.i381, 1 ; <i32> [#uses=2]
+ br label %wcond22.i383
+
+andand33.i391: ; preds = %wcond22.i383
+ %t42.i388 = getelementptr i8* %line_arg831, i32 %t49.i381 ; <i8*> [#uses=1]
+ %t43.i389 = load i8* %t42.i388 ; <i8> [#uses=1]
+ %t45.i390 = icmp eq i8 %t43.i389, 32 ; <i1> [#uses=1]
+ br i1 %t45.i390, label %wcond54.i396, label %wbody23.i385
+
+wcond54.i396: ; preds = %wbody55.i401, %andand33.i391, %wcond22.i383
+ %.frame.0.9 = phi i32 [ %t82.i400, %wbody55.i401 ], [ %.frame.0.10, %wcond22.i383 ], [ %.frame.0.10, %andand33.i391 ] ; <i32> [#uses=2]
+ %t81.i394 = phi i32 [ %t82.i400, %wbody55.i401 ], [ %t49.i381, %wcond22.i383 ], [ %t49.i381, %andand33.i391 ] ; <i32> [#uses=3]
+ %t64.i395 = icmp ult i32 %t81.i394, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t64.i395, label %andand65.i407, label %wcond.i716
+
+wbody55.i401: ; preds = %andand65.i407
+ %t82.i400 = add i32 %t81.i394, 1 ; <i32> [#uses=2]
+ br label %wcond54.i396
+
+andand65.i407: ; preds = %wcond54.i396
+ %t74.i404 = getelementptr i8* %line_arg831, i32 %t81.i394 ; <i8*> [#uses=1]
+ %t75.i405 = load i8* %t74.i404 ; <i8> [#uses=1]
+ %t77.i406 = icmp eq i8 %t75.i405, 32 ; <i1> [#uses=1]
+ br i1 %t77.i406, label %wbody55.i401, label %wcond.i716
+
+wcond.i716: ; preds = %wbody.i717, %andand65.i407, %wcond54.i396
+ %.frame.0.0 = phi i32 [ %t18.i.c829, %wbody.i717 ], [ %.frame.0.9, %wcond54.i396 ], [ %.frame.0.9, %andand65.i407 ] ; <i32> [#uses=7]
+ %t4.i715 = icmp ult i32 %.frame.0.0, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t4.i715, label %andand.i721, label %wcond22.i724
+
+wbody.i717: ; preds = %andand.i721
+ %t18.i.c829 = add i32 %.frame.0.0, 1 ; <i32> [#uses=1]
+ br label %wcond.i716
+
+andand.i721: ; preds = %wcond.i716
+ %t11.i718 = getelementptr i8* %line_arg831, i32 %.frame.0.0 ; <i8*> [#uses=1]
+ %t12.i719 = load i8* %t11.i718 ; <i8> [#uses=1]
+ %t14.i720 = icmp eq i8 %t12.i719, 32 ; <i1> [#uses=1]
+ br i1 %t14.i720, label %wbody.i717, label %wcond22.i724
+
+wcond22.i724: ; preds = %wbody23.i726, %andand.i721, %wcond.i716
+ %.frame.0.1 = phi i32 [ %t50.i725, %wbody23.i726 ], [ %.frame.0.0, %wcond.i716 ], [ %.frame.0.0, %andand.i721 ] ; <i32> [#uses=2]
+ %t49.i722 = phi i32 [ %t50.i725, %wbody23.i726 ], [ %.frame.0.0, %wcond.i716 ], [ %.frame.0.0, %andand.i721 ] ; <i32> [#uses=5]
+ %t32.i723 = icmp ult i32 %t49.i722, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t32.i723, label %andand33.i731, label %wcond54.i734
+
+wbody23.i726: ; preds = %andand33.i731
+ %t50.i725 = add i32 %t49.i722, 1 ; <i32> [#uses=2]
+ br label %wcond22.i724
+
+andand33.i731: ; preds = %wcond22.i724
+ %t42.i728 = getelementptr i8* %line_arg831, i32 %t49.i722 ; <i8*> [#uses=1]
+ %t43.i729 = load i8* %t42.i728 ; <i8> [#uses=1]
+ %t45.i730 = icmp eq i8 %t43.i729, 32 ; <i1> [#uses=1]
+ br i1 %t45.i730, label %wcond54.i734, label %wbody23.i726
+
+wcond54.i734: ; preds = %wbody55.i736, %andand33.i731, %wcond22.i724
+ %.frame.0.2 = phi i32 [ %t82.i735, %wbody55.i736 ], [ %.frame.0.1, %wcond22.i724 ], [ %.frame.0.1, %andand33.i731 ] ; <i32> [#uses=2]
+ %t81.i732 = phi i32 [ %t82.i735, %wbody55.i736 ], [ %t49.i722, %wcond22.i724 ], [ %t49.i722, %andand33.i731 ] ; <i32> [#uses=3]
+ %t64.i733 = icmp ult i32 %t81.i732, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t64.i733, label %andand65.i740, label %wcond.i750
+
+wbody55.i736: ; preds = %andand65.i740
+ %t82.i735 = add i32 %t81.i732, 1 ; <i32> [#uses=2]
+ br label %wcond54.i734
+
+andand65.i740: ; preds = %wcond54.i734
+ %t74.i737 = getelementptr i8* %line_arg831, i32 %t81.i732 ; <i8*> [#uses=1]
+ %t75.i738 = load i8* %t74.i737 ; <i8> [#uses=1]
+ %t77.i739 = icmp eq i8 %t75.i738, 32 ; <i1> [#uses=1]
+ br i1 %t77.i739, label %wbody55.i736, label %wcond.i750
+
+wcond.i750: ; preds = %wbody.i752, %andand65.i740, %wcond54.i734
+ %.frame.0.3 = phi i32 [ %t18.i751.c, %wbody.i752 ], [ %.frame.0.2, %wcond54.i734 ], [ %.frame.0.2, %andand65.i740 ] ; <i32> [#uses=11]
+ %t4.i749 = icmp ult i32 %.frame.0.3, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t4.i749, label %andand.i758, label %wcond22.i761
+
+wbody.i752: ; preds = %andand.i758
+ %t18.i751.c = add i32 %.frame.0.3, 1 ; <i32> [#uses=1]
+ br label %wcond.i750
+
+andand.i758: ; preds = %wcond.i750
+ %t11.i755 = getelementptr i8* %line_arg831, i32 %.frame.0.3 ; <i8*> [#uses=1]
+ %t12.i756 = load i8* %t11.i755 ; <i8> [#uses=1]
+ %t14.i757 = icmp eq i8 %t12.i756, 32 ; <i1> [#uses=1]
+ br i1 %t14.i757, label %wbody.i752, label %wcond22.i761
+
+wcond22.i761: ; preds = %wbody23.i763, %andand.i758, %wcond.i750
+ %.frame.0.4 = phi i32 [ %t50.i762, %wbody23.i763 ], [ %.frame.0.3, %wcond.i750 ], [ %.frame.0.3, %andand.i758 ] ; <i32> [#uses=2]
+ %t49.i759 = phi i32 [ %t50.i762, %wbody23.i763 ], [ %.frame.0.3, %wcond.i750 ], [ %.frame.0.3, %andand.i758 ] ; <i32> [#uses=7]
+ %t32.i760 = icmp ult i32 %t49.i759, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t32.i760, label %andand33.i769, label %wcond54.i773
+
+wbody23.i763: ; preds = %andand33.i769
+ %t50.i762 = add i32 %t49.i759, 1 ; <i32> [#uses=2]
+ br label %wcond22.i761
+
+andand33.i769: ; preds = %wcond22.i761
+ %t42.i766 = getelementptr i8* %line_arg831, i32 %t49.i759 ; <i8*> [#uses=1]
+ %t43.i767 = load i8* %t42.i766 ; <i8> [#uses=1]
+ %t45.i768 = icmp eq i8 %t43.i767, 32 ; <i1> [#uses=1]
+ br i1 %t45.i768, label %wcond54.i773, label %wbody23.i763
+
+wcond54.i773: ; preds = %wbody55.i775, %andand33.i769, %wcond22.i761
+ %.frame.0.5 = phi i32 [ %t82.i774, %wbody55.i775 ], [ %.frame.0.4, %wcond22.i761 ], [ %.frame.0.4, %andand33.i769 ] ; <i32> [#uses=1]
+ %t81.i770 = phi i32 [ %t82.i774, %wbody55.i775 ], [ %t49.i759, %wcond22.i761 ], [ %t49.i759, %andand33.i769 ] ; <i32> [#uses=3]
+ %t64.i771 = icmp ult i32 %t81.i770, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t64.i771, label %andand65.i780, label %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit786
+
+wbody55.i775: ; preds = %andand65.i780
+ %t82.i774 = add i32 %t81.i770, 1 ; <i32> [#uses=2]
+ br label %wcond54.i773
+
+andand65.i780: ; preds = %wcond54.i773
+ %t74.i777 = getelementptr i8* %line_arg831, i32 %t81.i770 ; <i8*> [#uses=1]
+ %t75.i778 = load i8* %t74.i777 ; <i8> [#uses=1]
+ %t77.i779 = icmp eq i8 %t75.i778, 32 ; <i1> [#uses=1]
+ br i1 %t77.i779, label %wbody55.i775, label %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit786
+
+Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit786: ; preds = %andand65.i780, %wcond54.i773
+ %t89.i782 = getelementptr i8* %line_arg831, i32 %.frame.0.3 ; <i8*> [#uses=4]
+ %t90.i783 = sub i32 %t49.i759, %.frame.0.3 ; <i32> [#uses=2]
+ br label %wcond.i792
+
+wcond.i792: ; preds = %wbody.i794, %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit786
+ %.frame.0.6 = phi i32 [ %.frame.0.5, %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit786 ], [ %t18.i793.c, %wbody.i794 ] ; <i32> [#uses=9]
+ %t4.i791 = icmp ult i32 %.frame.0.6, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t4.i791, label %andand.i800, label %wcond22.i803
+
+wbody.i794: ; preds = %andand.i800
+ %t18.i793.c = add i32 %.frame.0.6, 1 ; <i32> [#uses=1]
+ br label %wcond.i792
+
+andand.i800: ; preds = %wcond.i792
+ %t11.i797 = getelementptr i8* %line_arg831, i32 %.frame.0.6 ; <i8*> [#uses=1]
+ %t12.i798 = load i8* %t11.i797 ; <i8> [#uses=1]
+ %t14.i799 = icmp eq i8 %t12.i798, 32 ; <i1> [#uses=1]
+ br i1 %t14.i799, label %wbody.i794, label %wcond22.i803
+
+wcond22.i803: ; preds = %wbody23.i805, %andand.i800, %wcond.i792
+ %t49.i801 = phi i32 [ %t50.i804, %wbody23.i805 ], [ %.frame.0.6, %wcond.i792 ], [ %.frame.0.6, %andand.i800 ] ; <i32> [#uses=7]
+ %t32.i802 = icmp ult i32 %t49.i801, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t32.i802, label %andand33.i811, label %wcond54.i815
+
+wbody23.i805: ; preds = %andand33.i811
+ %t50.i804 = add i32 %t49.i801, 1 ; <i32> [#uses=1]
+ br label %wcond22.i803
+
+andand33.i811: ; preds = %wcond22.i803
+ %t42.i808 = getelementptr i8* %line_arg831, i32 %t49.i801 ; <i8*> [#uses=1]
+ %t43.i809 = load i8* %t42.i808 ; <i8> [#uses=1]
+ %t45.i810 = icmp eq i8 %t43.i809, 32 ; <i1> [#uses=1]
+ br i1 %t45.i810, label %wcond54.i815, label %wbody23.i805
+
+wcond54.i815: ; preds = %wbody55.i817, %andand33.i811, %wcond22.i803
+ %t81.i812 = phi i32 [ %t82.i816, %wbody55.i817 ], [ %t49.i801, %wcond22.i803 ], [ %t49.i801, %andand33.i811 ] ; <i32> [#uses=3]
+ %t64.i813 = icmp ult i32 %t81.i812, %line_arg830 ; <i1> [#uses=1]
+ br i1 %t64.i813, label %andand65.i822, label %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit828
+
+wbody55.i817: ; preds = %andand65.i822
+ %t82.i816 = add i32 %t81.i812, 1 ; <i32> [#uses=1]
+ br label %wcond54.i815
+
+andand65.i822: ; preds = %wcond54.i815
+ %t74.i819 = getelementptr i8* %line_arg831, i32 %t81.i812 ; <i8*> [#uses=1]
+ %t75.i820 = load i8* %t74.i819 ; <i8> [#uses=1]
+ %t77.i821 = icmp eq i8 %t75.i820, 32 ; <i1> [#uses=1]
+ br i1 %t77.i821, label %wbody55.i817, label %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit828
+
+Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit828: ; preds = %andand65.i822, %wcond54.i815
+ %t89.i824 = getelementptr i8* %line_arg831, i32 %.frame.0.6 ; <i8*> [#uses=4]
+ %t90.i825 = sub i32 %t49.i801, %.frame.0.6 ; <i32> [#uses=2]
+ %t63 = load i8* %t89.i824 ; <i8> [#uses=2]
+ br label %forcondi622
+
+forcondi622: ; preds = %forbodyi626, %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit828
+ %l.0i618 = phi i32 [ 10, %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit828 ], [ %t4i620, %forbodyi626 ] ; <i32> [#uses=2]
+ %p.0i619 = phi i8* [ getelementptr ([11 x i8]* @.str170, i32 0, i32 -1), %Dt3net3ftp9FClient13FConnection13pListLineMFAaZS5t3net3ftp9FClient11FFileInfo10p_wordMFZAa.exit828 ], [ %t7i623, %forbodyi626 ] ; <i8*> [#uses=1]
+ %t4i620 = add i32 %l.0i618, -1 ; <i32> [#uses=1]
+ %t5i621 = icmp eq i32 %l.0i618, 0 ; <i1> [#uses=1]
+ br i1 %t5i621, label %if65, label %forbodyi626
+
+forbodyi626: ; preds = %forcondi622
+ %t7i623 = getelementptr i8* %p.0i619, i32 1 ; <i8*> [#uses=3]
+ %t8i624 = load i8* %t7i623 ; <i8> [#uses=1]
+ %t12i625 = icmp eq i8 %t8i624, %t63 ; <i1> [#uses=1]
+ br i1 %t12i625, label %ifi630, label %forcondi622
+
+ifi630: ; preds = %forbodyi626
+ %t15i627 = ptrtoint i8* %t7i623 to i32 ; <i32> [#uses=1]
+ %t17i629 = sub i32 %t15i627, ptrtoint ([11 x i8]* @.str170 to i32) ; <i32> [#uses=1]
+ %phit636 = icmp eq i32 %t17i629, 10 ; <i1> [#uses=1]
+ br i1 %phit636, label %if65, label %e67
+
+if65: ; preds = %ifi630, %forcondi622
+ %t4i532 = icmp eq i32 %t49.i759, %.frame.0.3 ; <i1> [#uses=1]
+ br i1 %t4i532, label %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i576, label %forcondi539
+
+forcondi539: ; preds = %zi546, %if65
+ %sign.1.i533 = phi i1 [ %sign.0.i543, %zi546 ], [ false, %if65 ] ; <i1> [#uses=2]
+ %l.0i534 = phi i32 [ %t33i545, %zi546 ], [ %t90.i783, %if65 ] ; <i32> [#uses=3]
+ %p.0i535 = phi i8* [ %t30i544, %zi546 ], [ %t89.i782, %if65 ] ; <i8*> [#uses=6]
+ %c.0.ini536 = phi i8* [ %t30i544, %zi546 ], [ %t89.i782, %if65 ] ; <i8*> [#uses=1]
+ %c.0i537 = load i8* %c.0.ini536 ; <i8> [#uses=2]
+ %t8i538 = icmp eq i32 %l.0i534, 0 ; <i1> [#uses=1]
+ br i1 %t8i538, label %endfori550, label %forbodyi540
+
+forbodyi540: ; preds = %forcondi539
+ switch i8 %c.0i537, label %endfori550 [
+ i8 32, label %zi546
+ i8 9, label %zi546
+ i8 45, label %if20i541
+ i8 43, label %if26i542
+ ]
+
+if20i541: ; preds = %forbodyi540
+ br label %zi546
+
+if26i542: ; preds = %forbodyi540
+ br label %zi546
+
+zi546: ; preds = %if26i542, %if20i541, %forbodyi540, %forbodyi540
+ %sign.0.i543 = phi i1 [ false, %if26i542 ], [ true, %if20i541 ], [ %sign.1.i533, %forbodyi540 ], [ %sign.1.i533, %forbodyi540 ] ; <i1> [#uses=1]
+ %t30i544 = getelementptr i8* %p.0i535, i32 1 ; <i8*> [#uses=2]
+ %t33i545 = add i32 %l.0i534, -1 ; <i32> [#uses=1]
+ br label %forcondi539
+
+endfori550: ; preds = %forbodyi540, %forcondi539
+ %t37i547 = icmp eq i8 %c.0i537, 48 ; <i1> [#uses=1]
+ %t39i548 = icmp sgt i32 %l.0i534, 1 ; <i1> [#uses=1]
+ %or.condi549 = and i1 %t37i547, %t39i548 ; <i1> [#uses=1]
+ br i1 %or.condi549, label %if40i554, label %endif41i564
+
+if40i554: ; preds = %endfori550
+ %t43i551 = getelementptr i8* %p.0i535, i32 1 ; <i8*> [#uses=2]
+ %t44i552 = load i8* %t43i551 ; <i8> [#uses=1]
+ %t45i553 = zext i8 %t44i552 to i32 ; <i32> [#uses=1]
+ switch i32 %t45i553, label %endif41i564 [
+ i32 120, label %case46i556
+ i32 88, label %case46i556
+ i32 98, label %case51i558
+ i32 66, label %case51i558
+ i32 111, label %case56i560
+ i32 79, label %case56i560
+ ]
+
+case46i556: ; preds = %if40i554, %if40i554
+ %t48i555 = getelementptr i8* %p.0i535, i32 2 ; <i8*> [#uses=1]
+ br label %endif41i564
+
+case51i558: ; preds = %if40i554, %if40i554
+ %t53i557 = getelementptr i8* %p.0i535, i32 2 ; <i8*> [#uses=1]
+ br label %endif41i564
+
+case56i560: ; preds = %if40i554, %if40i554
+ %t58i559 = getelementptr i8* %p.0i535, i32 2 ; <i8*> [#uses=1]
+ br label %endif41i564
+
+endif41i564: ; preds = %case56i560, %case51i558, %case46i556, %if40i554, %endfori550
+ %r.0i561 = phi i32 [ 0, %if40i554 ], [ 8, %case56i560 ], [ 2, %case51i558 ], [ 16, %case46i556 ], [ 0, %endfori550 ] ; <i32> [#uses=2]
+ %p.2i562 = phi i8* [ %t43i551, %if40i554 ], [ %t58i559, %case56i560 ], [ %t53i557, %case51i558 ], [ %t48i555, %case46i556 ], [ %p.0i535, %endfori550 ] ; <i8*> [#uses=2]
+ %t63i563 = icmp eq i32 %r.0i561, 0 ; <i1> [#uses=1]
+ br i1 %t63i563, label %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i576, label %if70i568
+
+if70i568: ; preds = %endif41i564
+ br label %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i576
+
+Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i576: ; preds = %if70i568, %endif41i564, %if65
+ %radix.0.i570 = phi i32 [ 0, %if65 ], [ %r.0i561, %if70i568 ], [ 10, %endif41i564 ] ; <i32> [#uses=2]
+ %p.1i571 = phi i8* [ %p.2i562, %if70i568 ], [ %t89.i782, %if65 ], [ %p.2i562, %endif41i564 ] ; <i8*> [#uses=1]
+ %t84i572 = ptrtoint i8* %p.1i571 to i32 ; <i32> [#uses=1]
+ %t85i573 = ptrtoint i8* %t89.i782 to i32 ; <i32> [#uses=1]
+ %t86i574 = sub i32 %t84i572, %t85i573 ; <i32> [#uses=2]
+ %t6.i575 = sub i32 %t90.i783, %t86i574 ; <i32> [#uses=1]
+ %t59i604 = zext i32 %radix.0.i570 to i64 ; <i64> [#uses=1]
+ br label %fcondi581
+
+fcondi581: ; preds = %if55i610, %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i576
+ %value.0i577 = phi i64 [ 0, %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i576 ], [ %t65i607, %if55i610 ] ; <i64> [#uses=1]
+ %fkey.0i579 = phi i32 [ 0, %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i576 ], [ %t70i609, %if55i610 ] ; <i32> [#uses=3]
+ %t3i580 = icmp ult i32 %fkey.0i579, %t6.i575 ; <i1> [#uses=1]
+ br i1 %t3i580, label %fbodyi587, label %wcond.i422
+
+fbodyi587: ; preds = %fcondi581
+ %t5.s.i582 = add i32 %t86i574, %fkey.0i579 ; <i32> [#uses=1]
+ %t89.i782.s = add i32 %.frame.0.3, %t5.s.i582 ; <i32> [#uses=1]
+ %t5i583 = getelementptr i8* %line_arg831, i32 %t89.i782.s ; <i8*> [#uses=1]
+ %t6i584 = load i8* %t5i583 ; <i8> [#uses=6]
+ %t6.off84i585 = add i8 %t6i584, -48 ; <i8> [#uses=1]
+ %or.cond.i28.i586 = icmp ugt i8 %t6.off84i585, 9 ; <i1> [#uses=1]
+ br i1 %or.cond.i28.i586, label %ei590, label %endifi603
+
+ei590: ; preds = %fbodyi587
+ %t6.off83i588 = add i8 %t6i584, -97 ; <i8> [#uses=1]
+ %or.cond81i589 = icmp ugt i8 %t6.off83i588, 25 ; <i1> [#uses=1]
+ br i1 %or.cond81i589, label %e24i595, label %if22i592
+
+if22i592: ; preds = %ei590
+ %t27i591 = add i8 %t6i584, -39 ; <i8> [#uses=1]
+ br label %endifi603
+
+e24i595: ; preds = %ei590
+ %t6.offi593 = add i8 %t6i584, -65 ; <i8> [#uses=1]
+ %or.cond82i594 = icmp ugt i8 %t6.offi593, 25 ; <i1> [#uses=1]
+ br i1 %or.cond82i594, label %wcond.i422, label %if39i597
+
+if39i597: ; preds = %e24i595
+ %t44.i29.i596 = add i8 %t6i584, -7 ; <i8> [#uses=1]
+ br label %endifi603
+
+endifi603: ; preds = %if39i597, %if22i592, %fbodyi587
+ %c.0.i30.i598 = phi i8 [ %t27i591, %if22i592 ], [ %t44.i29.i596, %if39i597 ], [ %t6i584, %fbodyi587 ] ; <i8> [#uses=1]
+ %t48.i31.i599 = zext i8 %c.0.i30.i598 to i32 ; <i32> [#uses=1]
+ %t49i600 = add i32 %t48.i31.i599, 208 ; <i32> [#uses=1]
+ %t52i601 = and i32 %t49i600, 255 ; <i32> [#uses=2]
+ %t54i602 = icmp ult i32 %t52i601, %radix.0.i570 ; <i1> [#uses=1]
+ br i1 %t54i602, label %if55i610, label %wcond.i422
+
+if55i610: ; preds = %endifi603
+ %t61i605 = mul i64 %value.0i577, %t59i604 ; <i64> [#uses=1]
+ %t64i606 = zext i32 %t52i601 to i64 ; <i64> [#uses=1]
+ %t65i607 = add i64 %t61i605, %t64i606 ; <i64> [#uses=1]
+ %t70i609 = add i32 %fkey.0i579, 1 ; <i32> [#uses=1]
+ br label %fcondi581
+
+e67: ; preds = %ifi630
+ %t4i447 = icmp eq i32 %t49.i801, %.frame.0.6 ; <i1> [#uses=1]
+ br i1 %t4i447, label %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i491, label %forcondi454
+
+forcondi454: ; preds = %zi461, %e67
+ %c.0i452 = phi i8 [ %c.0i452.pre, %zi461 ], [ %t63, %e67 ] ; <i8> [#uses=2]
+ %sign.1.i448 = phi i1 [ %sign.0.i458, %zi461 ], [ false, %e67 ] ; <i1> [#uses=2]
+ %l.0i449 = phi i32 [ %t33i460, %zi461 ], [ %t90.i825, %e67 ] ; <i32> [#uses=3]
+ %p.0i450 = phi i8* [ %t30i459, %zi461 ], [ %t89.i824, %e67 ] ; <i8*> [#uses=5]
+ %t8i453 = icmp eq i32 %l.0i449, 0 ; <i1> [#uses=1]
+ br i1 %t8i453, label %endfori465, label %forbodyi455
+
+forbodyi455: ; preds = %forcondi454
+ switch i8 %c.0i452, label %endfori465 [
+ i8 32, label %zi461
+ i8 9, label %zi461
+ i8 45, label %if20i456
+ i8 43, label %if26i457
+ ]
+
+if20i456: ; preds = %forbodyi455
+ br label %zi461
+
+if26i457: ; preds = %forbodyi455
+ br label %zi461
+
+zi461: ; preds = %if26i457, %if20i456, %forbodyi455, %forbodyi455
+ %sign.0.i458 = phi i1 [ false, %if26i457 ], [ true, %if20i456 ], [ %sign.1.i448, %forbodyi455 ], [ %sign.1.i448, %forbodyi455 ] ; <i1> [#uses=1]
+ %t30i459 = getelementptr i8* %p.0i450, i32 1 ; <i8*> [#uses=2]
+ %t33i460 = add i32 %l.0i449, -1 ; <i32> [#uses=1]
+ %c.0i452.pre = load i8* %t30i459 ; <i8> [#uses=1]
+ br label %forcondi454
+
+endfori465: ; preds = %forbodyi455, %forcondi454
+ %t37i462 = icmp eq i8 %c.0i452, 48 ; <i1> [#uses=1]
+ %t39i463 = icmp sgt i32 %l.0i449, 1 ; <i1> [#uses=1]
+ %or.condi464 = and i1 %t37i462, %t39i463 ; <i1> [#uses=1]
+ br i1 %or.condi464, label %if40i469, label %endif41i479
+
+if40i469: ; preds = %endfori465
+ %t43i466 = getelementptr i8* %p.0i450, i32 1 ; <i8*> [#uses=2]
+ %t44i467 = load i8* %t43i466 ; <i8> [#uses=1]
+ %t45i468 = zext i8 %t44i467 to i32 ; <i32> [#uses=1]
+ switch i32 %t45i468, label %endif41i479 [
+ i32 120, label %case46i471
+ i32 111, label %case56i475
+ ]
+
+case46i471: ; preds = %if40i469
+ %t48i470 = getelementptr i8* %p.0i450, i32 2 ; <i8*> [#uses=1]
+ br label %endif41i479
+
+case56i475: ; preds = %if40i469
+ %t58i474 = getelementptr i8* %p.0i450, i32 2 ; <i8*> [#uses=1]
+ br label %endif41i479
+
+endif41i479: ; preds = %case56i475, %case46i471, %if40i469, %endfori465
+ %r.0i476 = phi i32 [ 0, %if40i469 ], [ 8, %case56i475 ], [ 16, %case46i471 ], [ 0, %endfori465 ] ; <i32> [#uses=2]
+ %p.2i477 = phi i8* [ %t43i466, %if40i469 ], [ %t58i474, %case56i475 ], [ %t48i470, %case46i471 ], [ %p.0i450, %endfori465 ] ; <i8*> [#uses=2]
+ %t63i478 = icmp eq i32 %r.0i476, 0 ; <i1> [#uses=1]
+ br i1 %t63i478, label %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i491, label %if70i483
+
+if70i483: ; preds = %endif41i479
+ br label %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i491
+
+Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i491: ; preds = %if70i483, %endif41i479, %e67
+ %radix.0.i485 = phi i32 [ 0, %e67 ], [ %r.0i476, %if70i483 ], [ 10, %endif41i479 ] ; <i32> [#uses=2]
+ %p.1i486 = phi i8* [ %p.2i477, %if70i483 ], [ %t89.i824, %e67 ], [ %p.2i477, %endif41i479 ] ; <i8*> [#uses=1]
+ %t84i487 = ptrtoint i8* %p.1i486 to i32 ; <i32> [#uses=1]
+ %t85i488 = ptrtoint i8* %t89.i824 to i32 ; <i32> [#uses=1]
+ %t86i489 = sub i32 %t84i487, %t85i488 ; <i32> [#uses=2]
+ %ttt = sub i32 %t90.i825, %t86i489 ; <i32> [#uses=1]
+ %t59i519 = zext i32 %radix.0.i485 to i64 ; <i64> [#uses=1]
+ br label %fcondi496
+
+fcondi496: ; preds = %if55i525, %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i491
+ %value.0i492 = phi i64 [ 0, %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i491 ], [ %t65i522, %if55i525 ] ; <i64> [#uses=1]
+ %fkey.0i494 = phi i32 [ 0, %Dt4x7c7I11V4tTaZ4tFAaKbKkZk.exit.i491 ], [ %t70i524, %if55i525 ] ; <i32> [#uses=3]
+ %t3i495 = icmp ult i32 %fkey.0i494, %ttt ; <i1> [#uses=1]
+ br i1 %t3i495, label %fbodyi502, label %wcond.i422
+
+fbodyi502: ; preds = %fcondi496
+ %t5.s.i497 = add i32 %t86i489, %fkey.0i494 ; <i32> [#uses=1]
+ %t89.i824.s = add i32 %.frame.0.6, %t5.s.i497 ; <i32> [#uses=1]
+ %t5i498 = getelementptr i8* %line_arg831, i32 %t89.i824.s ; <i8*> [#uses=1]
+ %t6i499 = load i8* %t5i498 ; <i8> [#uses=6]
+ %t6.off84i500 = add i8 %t6i499, -48 ; <i8> [#uses=1]
+ %or.cond.i28.i501 = icmp ugt i8 %t6.off84i500, 9 ; <i1> [#uses=1]
+ br i1 %or.cond.i28.i501, label %ei505, label %endifi518
+
+ei505: ; preds = %fbodyi502
+ %t6.off83i503 = add i8 %t6i499, -97 ; <i8> [#uses=1]
+ %or.cond81i504 = icmp ugt i8 %t6.off83i503, 25 ; <i1> [#uses=1]
+ br i1 %or.cond81i504, label %e24i510, label %if22i507
+
+if22i507: ; preds = %ei505
+ %t27i506 = add i8 %t6i499, -39 ; <i8> [#uses=1]
+ br label %endifi518
+
+e24i510: ; preds = %ei505
+ %t6.offi508 = add i8 %t6i499, -65 ; <i8> [#uses=1]
+ %or.cond82i509 = icmp ugt i8 %t6.offi508, 25 ; <i1> [#uses=1]
+ br i1 %or.cond82i509, label %wcond.i422, label %if39i512
+
+if39i512: ; preds = %e24i510
+ %t44.i29.i511 = add i8 %t6i499, -7 ; <i8> [#uses=1]
+ br label %endifi518
+
+endifi518: ; preds = %if39i512, %if22i507, %fbodyi502
+ %c.0.i30.i513 = phi i8 [ %t27i506, %if22i507 ], [ %t44.i29.i511, %if39i512 ], [ %t6i499, %fbodyi502 ] ; <i8> [#uses=1]
+ %t48.i31.i514 = zext i8 %c.0.i30.i513 to i32 ; <i32> [#uses=1]
+ %t49i515 = add i32 %t48.i31.i514, 208 ; <i32> [#uses=1]
+ %t52i516 = and i32 %t49i515, 255 ; <i32> [#uses=2]
+ %t54i517 = icmp ult i32 %t52i516, %radix.0.i485 ; <i1> [#uses=1]
+ br i1 %t54i517, label %if55i525, label %wcond.i422
+
+if55i525: ; preds = %endifi518
+ %t61i520 = mul i64 %value.0i492, %t59i519 ; <i64> [#uses=1]
+ %t64i521 = zext i32 %t52i516 to i64 ; <i64> [#uses=1]
+ %t65i522 = add i64 %t61i520, %t64i521 ; <i64> [#uses=1]
+ %t70i524 = add i32 %fkey.0i494, 1 ; <i32> [#uses=1]
+ br label %fcondi496
+
+wcond.i422: ; preds = %e40.i, %endifi518, %e24i510, %fcondi496, %endifi603, %e24i595, %fcondi581
+ %sarg60.pn.i = phi i8* [ %p.0.i, %e40.i ], [ undef, %fcondi496 ], [ undef, %e24i510 ], [ undef, %endifi518 ], [ undef, %endifi603 ], [ undef, %e24i595 ], [ undef, %fcondi581 ] ; <i8*> [#uses=3]
+ %start_arg.pn.i = phi i32 [ %t49.i443, %e40.i ], [ 0, %fcondi496 ], [ 0, %e24i510 ], [ 0, %endifi518 ], [ 0, %endifi603 ], [ 0, %e24i595 ], [ 0, %fcondi581 ] ; <i32> [#uses=3]
+ %extent.0.i = phi i32 [ %t51.i, %e40.i ], [ undef, %fcondi496 ], [ undef, %e24i510 ], [ undef, %endifi518 ], [ undef, %endifi603 ], [ undef, %e24i595 ], [ undef, %fcondi581 ] ; <i32> [#uses=3]
+ %p.0.i = getelementptr i8* %sarg60.pn.i, i32 %start_arg.pn.i ; <i8*> [#uses=2]
+ %p.0.s63.i = add i32 %start_arg.pn.i, -1 ; <i32> [#uses=1]
+ %t2i424 = getelementptr i8* %sarg60.pn.i, i32 %p.0.s63.i ; <i8*> [#uses=1]
+ br label %forcondi430
+
+forcondi430: ; preds = %forbodyi434, %wcond.i422
+ %l.0i426 = phi i32 [ %extent.0.i, %wcond.i422 ], [ %t4i428, %forbodyi434 ] ; <i32> [#uses=2]
+ %p.0i427 = phi i8* [ %t2i424, %wcond.i422 ], [ %t7i431, %forbodyi434 ] ; <i8*> [#uses=1]
+ %t4i428 = add i32 %l.0i426, -1 ; <i32> [#uses=1]
+ %t5i429 = icmp eq i32 %l.0i426, 0 ; <i1> [#uses=1]
+ br i1 %t5i429, label %e.i441, label %forbodyi434
+
+forbodyi434: ; preds = %forcondi430
+ %t7i431 = getelementptr i8* %p.0i427, i32 1 ; <i8*> [#uses=3]
+ %t8i432 = load i8* %t7i431 ; <i8> [#uses=1]
+ %t12i433 = icmp eq i8 %t8i432, 32 ; <i1> [#uses=1]
+ br i1 %t12i433, label %ifi438, label %forcondi430
+
+ifi438: ; preds = %forbodyi434
+ %t15i435 = ptrtoint i8* %t7i431 to i32 ; <i32> [#uses=1]
+ %t16i436 = ptrtoint i8* %p.0.i to i32 ; <i32> [#uses=1]
+ %t17i437 = sub i32 %t15i435, %t16i436 ; <i32> [#uses=1]
+ br label %e.i441
+
+e.i441: ; preds = %ifi438, %forcondi430
+ %t2561.i = phi i32 [ %t17i437, %ifi438 ], [ %extent.0.i, %forcondi430 ] ; <i32> [#uses=2]
+ %p.0.s.i = add i32 %start_arg.pn.i, %t2561.i ; <i32> [#uses=1]
+ %t32.s.i = add i32 %p.0.s.i, -1 ; <i32> [#uses=1]
+ %t2i.i = getelementptr i8* %sarg60.pn.i, i32 %t32.s.i ; <i8*> [#uses=1]
+ br label %forbodyi.i
+
+forbodyi.i: ; preds = %forbodyi.i, %e.i441
+ %p.0i.i = phi i8* [ %t2i.i, %e.i441 ], [ %t7i.i, %forbodyi.i ] ; <i8*> [#uses=1]
+ %s2.0i.i = phi i8* [ getelementptr ([5 x i8]* @.str171, i32 0, i32 0), %e.i441 ], [ %t11i.i, %forbodyi.i ] ; <i8*> [#uses=2]
+ %t7i.i = getelementptr i8* %p.0i.i, i32 1 ; <i8*> [#uses=2]
+ %t8i.i = load i8* %t7i.i ; <i8> [#uses=1]
+ %t11i.i = getelementptr i8* %s2.0i.i, i32 1 ; <i8*> [#uses=1]
+ %t12i.i = load i8* %s2.0i.i ; <i8> [#uses=1]
+ %t14i.i = icmp eq i8 %t8i.i, %t12i.i ; <i1> [#uses=1]
+ br i1 %t14i.i, label %forbodyi.i, label %e40.i
+
+e40.i: ; preds = %forbodyi.i
+ %t49.i443 = add i32 %t2561.i, 1 ; <i32> [#uses=2]
+ %t51.i = sub i32 %extent.0.i, %t49.i443 ; <i32> [#uses=1]
+ br label %wcond.i422
}