Lines Matching full:adjustment

288     // No adjustment needed.  in ComputeReturnAdjustmentBaseOffset()
311 // No adjustment needed. in ComputeReturnAdjustmentBaseOffset()
840 /// (Used for computing 'this' pointer adjustment thunks.
903 /// ComputeReturnAdjustment - Compute the return adjustment given a return
904 /// adjustment base offset.
912 /// ComputeThisAdjustment - Compute the 'this' pointer adjustment for the
936 /// adjustment is required and no thunk is generated. However, inside D
1132 // Check if we need an adjustment at all. in ComputeThisAdjustments()
1135 // virtual base, gcc uses a virtual 'this' adjustment as well. in ComputeThisAdjustments()
1151 // If a this pointer adjustment is required, record the method that in ComputeThisAdjustments()
1168 // the method in the entry requires adjustment. in ComputeThisAdjustments()
1171 // can happen when covariant return adjustment is required too. in ComputeThisAdjustments()
1183 // Add an adjustment for the deleting destructor as well. in ComputeThisAdjustments()
1222 ReturnAdjustment Adjustment; in ComputeReturnAdjustment() local
1229 Adjustment.Virtual.Itanium.VBaseOffsetOffset = in ComputeReturnAdjustment()
1232 Adjustment.Virtual.Itanium.VBaseOffsetOffset = in ComputeReturnAdjustment()
1238 Adjustment.NonVirtual = Offset.NonVirtualOffset.getQuantity(); in ComputeReturnAdjustment()
1241 return Adjustment; in ComputeReturnAdjustment()
1303 // Compute the adjustment offset. in ComputeThisAdjustment()
1309 ThisAdjustment Adjustment; in ComputeThisAdjustment() local
1329 Adjustment.Virtual.Itanium.VCallOffsetOffset = in ComputeThisAdjustment()
1333 // Set the non-virtual part of the adjustment. in ComputeThisAdjustment()
1334 Adjustment.NonVirtual = Offset.NonVirtualOffset.getQuantity(); in ComputeThisAdjustment()
1336 return Adjustment; in ComputeThisAdjustment()
1343 "Destructor can't have return adjustment!"); in AddMethod()
1349 // Add the return adjustment if necessary. in AddMethod()
1481 // between their return types does not require an adjustment. in AddMethods()
1536 // base. If this is the case, and the return type doesn't require adjustment in AddMethods()
1564 // Compute the this adjustment. in AddMethods()
1572 // There's no return adjustment from OverriddenMD and MD, in AddMethods()
1640 // Check if this overrider needs a return adjustment. in AddMethods()
1651 // If a return adjustment is required, record the method that created the in AddMethods()
1654 // method in the entry requires adjustment. in AddMethods()
2032 // If this function pointer has a return adjustment, dump it. in dumpLayout()
2034 Out << "\n [return adjustment: "; in dumpLayout()
2046 // If this function pointer has a 'this' pointer adjustment, dump it. in dumpLayout()
2048 Out << "\n [this adjustment: "; in dumpLayout()
2082 // If this destructor has a 'this' pointer adjustment, dump it. in dumpLayout()
2084 Out << "\n [this adjustment: "; in dumpLayout()
2204 // If this function pointer has a return pointer adjustment, dump it. in dumpLayout()
2206 Out << "return adjustment: " << Thunk.Return.NonVirtual; in dumpLayout()
2217 // If this function pointer has a 'this' pointer adjustment, dump it. in dumpLayout()
2219 Out << "this adjustment: "; in dumpLayout()
2487 // covariant-return adjustment.
2495 // object), the vf-table may require a this-adjustment thunk.
2498 // this-adjustment. Together with #3, this keeps vf-tables smaller and
2499 // eliminates the need for this-adjustment thunks in many cases, at the cost
2546 /// (Used for computing 'this' pointer adjustment thunks.
2620 "Destructor can't have return adjustment!"); in AddMethod()
2743 // performed as a *static* adjustment.
2822 // The final overrider will use a static adjustment equal to the offset in ComputeThisOffset()
2861 // Things are getting even more complex when the "this" adjustment has to
2917 // incorrect, unless an extra adjustment is done. This adjustment is called
2918 // "vtordisp adjustment". Vtordisp basically holds the difference between the
2923 // [i.e. vtordisp is a dynamic adjustment for a static adjustment, which is an
2924 // estimation of a dynamic adjustment]
2931 // An extra adjustment is needed, so we emit a thunk into the B vftable.
2958 // and one extra static adjustment to calculate the expected value of C+8.
2969 // as the initial declaration, we don't need any vtordisp adjustment. in CalculateVtordispAdjustment()
2987 // in order to get "this" adjustment right. in CalculateVtordispAdjustment()
3082 // don't require return adjustment; calculating This adjustment if needed. in AddMethods()
3085 // - adding new slots for methods that require Return adjustment. in AddMethods()
3131 // No return adjustment needed - just replace the overridden method info in AddMethods()
3142 // In case we need a return adjustment, we'll add a new slot for in AddMethods()
3147 // unless the method is the final overrider without this adjustment. in AddMethods()
3159 // it requires return adjustment. Insert the method info for this method. in AddMethods()
3168 // Check if this overrider needs a return adjustment. in AddMethods()
3213 Out << "[return adjustment (to type '" in dumpMicrosoftThunkAdjustment()
3227 Out << "[this adjustment: "; in dumpMicrosoftThunkAdjustment()
3296 "No return adjustment needed for destructors!"); in dumpLayout()
3437 // Keep track of the full adjustment from the MDC to this vtable. The in computeVTablePaths()
3438 // adjustment is captured by an optional vbase and a non-virtual offset. in computeVTablePaths()
3619 // Only overriders which have a return adjustment introduce problematic in selectBestPath()