{"name": "_ZNK4llvm21BranchProbabilityInfo13getEdgeWeightEPKNS_10BasicBlockES3_", "code": "__int64 __fastcall llvm BranchProbabilityInfo getEdgeWeight ( llvm BranchProbabilityInfo * @@this@@ , const llvm BasicBlock * @@a2@@ , const llvm BasicBlock * @@a3@@ ) { __int64 @@v4@@ ; __int64 v5 ; int @@v6@@ ; unsigned __int64 v7 ; unsigned __int64 v8 ; unsigned __int64 v9 ; unsigned int i ; const llvm BasicBlock * * v11 ; __int64 @@v12@@ ; __int64 v13 ; __int64 result ; __int64 @@v15@@ [ Number ] ; @@v4@@ = * ( ( unsigned int * ) @@this@@ + Number ) ; v5 = * ( ( _QWORD * ) @@this@@ + Number ) ; if ( ! ( _DWORD ) @@v4@@ ) { LABEL_14 : llvm DenseMapIterator < std pair < llvm BasicBlock const * , llvm BasicBlock const * > , unsigned int , llvm DenseMapInfo < std pair < llvm BasicBlock const * , llvm BasicBlock const * >> , true > DenseMapIterator ( @@v15@@ , v5 + Number * @@v4@@ , v5 + Number * @@v4@@ , Number L ) ; @@v12@@ = @@v15@@ [ Number ] ; goto LABEL_11 ; } if ( @@a2@@ == ( const llvm BasicBlock * ) Number ) { if ( @@a3@@ != ( const llvm BasicBlock * ) Number ) goto LABEL_5 ; LABEL_16 : _assert_fail ( String String , String , Number , String String String String String ) ; } if ( @@a3@@ == ( const llvm BasicBlock * ) Number && @@a2@@ == ( const llvm BasicBlock * ) Number ) goto LABEL_16 ; LABEL_5 : @@v6@@ = Number ; v7 = ( ( unsigned int ) @@a3@@ >> Number ) ^ ( ( unsigned int ) @@a3@@ >> Number ) | ( ( unsigned __int64 ) ( ( ( unsigned int ) @@a2@@ >> Number ) ^ ( ( unsigned int ) @@a2@@ >> Number ) ) << Number ) ; v8 = ( ( v7 - Number - ( v7 << Number ) ) >> Number ) ^ ( v7 - Number - ( v7 << Number ) ) ; v9 = ( ( Number * ( ( ( v8 - Number - ( v8 << Number ) ) >> Number ) ^ ( v8 - Number - ( v8 << Number ) ) ) ) >> Number ) ^ ( Number * ( ( ( v8 - Number - ( v8 << Number ) ) >> Number ) ^ ( v8 - Number - ( v8 << Number ) ) ) ) ; for ( i = ( ( v9 - Number - ( v9 << Number ) ) >> Number ) ^ ( v9 - Number - ( ( _DWORD ) v9 << Number ) ) ; ; i += @@v6@@ ++ ) { v11 = ( const llvm BasicBlock * * ) ( v5 + Number L * ( ( ( _DWORD ) @@v4@@ - Number ) & i ) ) ; if ( @@a2@@ == * v11 && @@a3@@ == v11 [ Number ] ) break ; if ( * v11 == ( const llvm BasicBlock * ) Number && v11 [ Number ] == ( const llvm BasicBlock * ) Number ) goto LABEL_14 ; } llvm DenseMapIterator < std pair < llvm BasicBlock const * , llvm BasicBlock const * > , unsigned int , llvm DenseMapInfo < std pair < llvm BasicBlock const * , llvm BasicBlock const * >> , true > DenseMapIterator ( @@v15@@ , v11 , v5 + Number * @@v4@@ , Number L ) ; @@v12@@ = @@v15@@ [ Number ] ; LABEL_11 : v13 = * ( ( _QWORD * ) @@this@@ + Number ) + Number L * * ( ( unsigned int * ) @@this@@ + Number ) ; llvm DenseMapIterator < std pair < llvm BasicBlock const * , llvm BasicBlock const * > , unsigned int , llvm DenseMapInfo < std pair < llvm BasicBlock const * , llvm BasicBlock const * >> , true > DenseMapIterator ( @@v15@@ , v13 , v13 , Number L ) ; if ( @@v15@@ [ Number ] == @@v12@@ ) result = Number L ; else result = * ( unsigned int * ) ( @@v12@@ + Number ) ; return result ; }", "source": [{"n": "v12", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r104"}, {"n": "a3", "t": {"T": 3, "t": "const llvm::BasicBlock"}, "location": "r16"}, {"n": "v4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r24"}, {"n": "this", "t": {"T": 3, "t": "llvm::BranchProbabilityInfo"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "const llvm::BasicBlock"}, "location": "r64"}, {"n": "v6", "t": {"T": 1, "n": "int", "s": 4}, "location": "r80"}, {"n": "v15", "t": {"T": 2, "n": 5, "s": 8, "t": "__int64"}, "location": "s40"}]}