| 529 | } |
| 530 | |
| 531 | void AccessContext::UpdateAccessState(const vvl::Buffer& buffer, SyncAccessIndex current_usage, const AccessRange& range, |
| 532 | ResourceUsageTagEx tag_ex, SyncFlags flags) { |
| 533 | assert(range.valid()); |
| 534 | assert(!finalized_); |
| 535 | |
| 536 | if (current_usage == SYNC_ACCESS_INDEX_NONE) { |
| 537 | return; |
| 538 | } |
| 539 | if (!SimpleBinding(buffer)) { |
| 540 | return; |
| 541 | } |
| 542 | if (range.empty()) { |
| 543 | return; |
| 544 | } |
| 545 | |
| 546 | const VkDeviceSize base_address = ResourceBaseAddress(buffer); |
| 547 | const AccessRange buffer_range = range + base_address; |
| 548 | |
| 549 | auto pos = access_state_map_.LowerBound(buffer_range.begin); |
| 550 | DoUpdateAccessState(pos, buffer_range, current_usage, AttachmentAccess::NonAttachment(), tag_ex, flags); |
| 551 | } |
| 552 | |
| 553 | void AccessContext::UpdateAccessState(ImageRangeGen& range_gen, SyncAccessIndex current_usage, ResourceUsageTagEx tag_ex, |
| 554 | SyncFlags flags) { |
no test coverage detected