@@ -637,7 +637,7 @@ private Type getTypeImpl(Type t, int indirectionIndex) {
637637 * A node that represents the indirect value of an operand in the IR
638638 * after `index` number of loads.
639639 */
640- private class RawIndirectOperand extends Node , TRawIndirectOperand {
640+ class RawIndirectOperand extends Node , TRawIndirectOperand {
641641 Operand operand ;
642642 int indirectionIndex ;
643643
@@ -666,46 +666,6 @@ private class RawIndirectOperand extends Node, TRawIndirectOperand {
666666 }
667667}
668668
669- /**
670- * INTERNAL: Do not use.
671- *
672- * A node that represents the indirect value of an operand in the IR
673- * after `index` number of loads.
674- *
675- * Note: Unlike `RawIndirectOperand`, a value of type `IndirectOperand` may
676- * be an `OperandNode`.
677- */
678- class IndirectOperand extends Node {
679- Operand operand ;
680- int indirectionIndex ;
681-
682- IndirectOperand ( ) {
683- this .( RawIndirectOperand ) .getOperand ( ) = operand and
684- this .( RawIndirectOperand ) .getIndirectionIndex ( ) = indirectionIndex
685- or
686- this .( OperandNode ) .getOperand ( ) =
687- Ssa:: getIRRepresentationOfIndirectOperand ( operand , indirectionIndex )
688- }
689-
690- /** Gets the underlying operand. */
691- Operand getOperand ( ) { result = operand }
692-
693- /** Gets the underlying indirection index. */
694- int getIndirectionIndex ( ) { result = indirectionIndex }
695-
696- /**
697- * Holds if this `IndirectOperand` is represented directly in the IR instead of
698- * a `RawIndirectionOperand` with operand `op` and indirection index `index`.
699- */
700- predicate isIRRepresentationOf ( Operand op , int index ) {
701- this instanceof OperandNode and
702- (
703- op = operand and
704- index = indirectionIndex
705- )
706- }
707- }
708-
709669/**
710670 * The value of an uninitialized local variable, viewed as a node in a data
711671 * flow graph.
@@ -731,7 +691,7 @@ class UninitializedNode extends Node {
731691 * A node that represents the indirect value of an instruction in the IR
732692 * after `index` number of loads.
733693 */
734- private class RawIndirectInstruction extends Node , TRawIndirectInstruction {
694+ class RawIndirectInstruction extends Node , TRawIndirectInstruction {
735695 Instruction instr ;
736696 int indirectionIndex ;
737697
@@ -760,46 +720,6 @@ private class RawIndirectInstruction extends Node, TRawIndirectInstruction {
760720 }
761721}
762722
763- /**
764- * INTERNAL: Do not use.
765- *
766- * A node that represents the indirect value of an instruction in the IR
767- * after `index` number of loads.
768- *
769- * Note: Unlike `RawIndirectInstruction`, a value of type `IndirectInstruction` may
770- * be an `InstructionNode`.
771- */
772- class IndirectInstruction extends Node {
773- Instruction instr ;
774- int indirectionIndex ;
775-
776- IndirectInstruction ( ) {
777- this .( RawIndirectInstruction ) .getInstruction ( ) = instr and
778- this .( RawIndirectInstruction ) .getIndirectionIndex ( ) = indirectionIndex
779- or
780- this .( InstructionNode ) .getInstruction ( ) =
781- Ssa:: getIRRepresentationOfIndirectInstruction ( instr , indirectionIndex )
782- }
783-
784- /** Gets the underlying instruction. */
785- Instruction getInstruction ( ) { result = instr }
786-
787- /** Gets the underlying indirection index. */
788- int getIndirectionIndex ( ) { result = indirectionIndex }
789-
790- /**
791- * Holds if this `IndirectInstruction` is represented directly in the IR instead of
792- * a `RawIndirectionInstruction` with instruction `i` and indirection index `index`.
793- */
794- predicate isIRRepresentationOf ( Instruction i , int index ) {
795- this instanceof InstructionNode and
796- (
797- i = instr and
798- index = indirectionIndex
799- )
800- }
801- }
802-
803723private predicate isFullyConvertedArgument ( Expr e ) {
804724 exists ( Call call |
805725 e = call .getAnArgument ( ) .getFullyConverted ( )
0 commit comments