Beispiel #1
0
        /// <summary cref="IValueVisitor.Visit(SizeOfValue)"/>
        public void Visit(SizeOfValue value)
        {
            var target = Allocate(value);
            var size   = ABI.GetSizeOf(value.TargetType);

            using (var statement = BeginStatement(target))
            {
                statement.AppendConstant(size);
            }
        }
Beispiel #2
0
        /// <summary cref="IValueVisitor.Visit(SizeOfValue)"/>
        public void Visit(SizeOfValue value)
        {
            var register = AllocatePrimitive(value);
            var size     = ABI.GetSizeOf(value.TargetType);

            using (var command = BeginMove())
            {
                command.AppendSuffix(BasicValueType.Int32);
                command.AppendArgument(register);
                command.AppendConstant(size);
            }
        }
Beispiel #3
0
 public void Visit(SizeOfValue value)
 {
 }
Beispiel #4
0
 /// <summary cref="IValueVisitor.Visit(SizeOfValue)"/>
 public void Visit(SizeOfValue value) => throw new InvalidCodeGenerationException();