@@ -214,23 +214,28 @@ abstract class IndirectReadOpcode extends IndirectMemoryAccessOpcode {
214214}
215215
216216/**
217- * An opcode that accesses a memory buffer of unknown size .
217+ * An opcode that accesses a memory buffer.
218218 */
219219abstract class BufferAccessOpcode extends Opcode {
220220 final override predicate hasAddressOperand ( ) { any ( ) }
221221}
222222
223+ /**
224+ * An opcode that accesses a memory buffer of unknown size.
225+ */
226+ abstract class UnsizedBufferAccessOpcode extends BufferAccessOpcode { }
227+
223228/**
224229 * An opcode that writes to a memory buffer of unknown size.
225230 */
226- abstract class BufferWriteOpcode extends BufferAccessOpcode {
231+ abstract class UnsizedBufferWriteOpcode extends UnsizedBufferAccessOpcode {
227232 final override MemoryAccessKind getWriteMemoryAccess ( ) { result instanceof BufferMemoryAccess }
228233}
229234
230235/**
231236 * An opcode that reads from a memory buffer of unknown size.
232237 */
233- abstract class BufferReadOpcode extends BufferAccessOpcode {
238+ abstract class UnsizedBufferReadOpcode extends UnsizedBufferAccessOpcode {
234239 final override MemoryAccessKind getReadMemoryAccess ( ) { result instanceof BufferMemoryAccess }
235240}
236241
@@ -262,9 +267,7 @@ abstract class EntireAllocationReadOpcode extends EntireAllocationAccessOpcode {
262267/**
263268 * An opcode that accesses a memory buffer whose size is determined by a `BufferSizeOperand`.
264269 */
265- abstract class SizedBufferAccessOpcode extends Opcode {
266- final override predicate hasAddressOperand ( ) { any ( ) }
267-
270+ abstract class SizedBufferAccessOpcode extends BufferAccessOpcode {
268271 final override predicate hasBufferSizeOperand ( ) { any ( ) }
269272}
270273
@@ -667,17 +670,18 @@ module Opcode {
667670 final override string toString ( ) { result = "IndirectMayWriteSideEffect" }
668671 }
669672
670- class BufferReadSideEffect extends ReadSideEffectOpcode , BufferReadOpcode , TBufferReadSideEffect {
673+ class BufferReadSideEffect extends ReadSideEffectOpcode , UnsizedBufferReadOpcode ,
674+ TBufferReadSideEffect {
671675 final override string toString ( ) { result = "BufferReadSideEffect" }
672676 }
673677
674- class BufferMustWriteSideEffect extends WriteSideEffectOpcode , BufferWriteOpcode ,
678+ class BufferMustWriteSideEffect extends WriteSideEffectOpcode , UnsizedBufferWriteOpcode ,
675679 TBufferMustWriteSideEffect {
676680 final override string toString ( ) { result = "BufferMustWriteSideEffect" }
677681 }
678682
679- class BufferMayWriteSideEffect extends WriteSideEffectOpcode , BufferWriteOpcode , MayWriteOpcode ,
680- TBufferMayWriteSideEffect {
683+ class BufferMayWriteSideEffect extends WriteSideEffectOpcode , UnsizedBufferWriteOpcode ,
684+ MayWriteOpcode , TBufferMayWriteSideEffect {
681685 final override string toString ( ) { result = "BufferMayWriteSideEffect" }
682686 }
683687
0 commit comments