Lines Matching +defs:buffer +defs:substring

89     "array-constructor-initial-buffer-size",
91 "set the incremental array construction buffer size (default=32)"),
1395 /// Reference to a substring.
1410 "StaticDataObject::Pointer substring with kind > 1");
1429 "array substring should be handled in array expression");
1432 fir::emitFatalError(getLoc(), "substring base is not a CharBox");
1436 /// The value of a substring.
1438 // FIXME: why is the value of a substring being lowered the same as the
1439 // address of a substring?
3216 // Update the LEN to the substring's LEN.
3575 /// Lower the expression \p expr into a buffer that is created on demand. The
3576 /// variable containing the pointer to the buffer is \p var and the variable
3577 /// containing the shape of the buffer is \p shapeBuffer.
3586 // following continuation creates the buffer as needed.
3612 // to the lazy allocated buffer.
3966 const Fortran::evaluate::Substring *substring) {
3967 if (!substring)
3969 bounds.push_back(fir::getBase(asScalar(substring->lower())));
3970 if (auto upper = substring->upper())
4035 CC defaultStoreToDestination(const Fortran::evaluate::Substring *substring) {
4053 populateBounds(substringBounds, substring);
4094 : defaultStoreToDestination(/*substring=*/nullptr);
4218 /// Rebind the lazy buffer variable, etc. as we go.
4297 // Allocate the mask buffer lazily.
4316 // Set buffer from the header.
4321 // Index into the ragged buffer to retrieve cached results.
4337 // Address of ragged buffer data.
4356 // Construct shape of buffer.
4460 // Recover the cached condition from the mask buffer.
5739 if (isBoxValue() && components.substring) {
5740 // Append the substring operator to emboxing Op as it will become an
5744 populateBounds(substringBounds, components.substring);
5762 // Convert the lower bound to 0-based substring.
5809 if (components.substring) {
5810 // Adjust char length to substring size.
5856 populateBounds(substringBounds, components.substring);
5894 : defaultStoreToDestination(components.substring);
5959 populateBounds(substringBounds, components.substring);
6116 TODO(getLoc(), "substring of static object inside FORALL");
6121 components.substring = &x;
6200 // Construct code to check for a buffer overrun and realloc the buffer when
6213 // Not enough space, resize the buffer.
6231 // Otherwise, just forward the buffer.
6299 // Grow the buffer as needed.
6303 // Copy the elements to the buffer.
6313 // Save the incremented buffer position.
6317 // Copy a trivial scalar value into the buffer.
6319 // Increment the buffer position.
6322 // Grow the buffer as needed.
6325 // Store the element in the buffer.
6345 auto buffer = v.getBuffer();
6346 if (fir::isa_char(buffer.getType())) {
6349 // Increment the buffer position.
6352 // Grow the buffer as needed.
6355 // Store the element in the buffer.
6461 // determine that all the buffer overrun tests are false when the
6480 // creating the buffer until after the expression is evaluated.
6502 // Populate the buffer with the elements, growing as necessary.
6872 if (components.substring)
6873 populateBounds(result, components.substring);
7118 return components.substring ? genAsScalar(*components.substring)