Esempio n. 1
0
static ILRegister * load_worker(AvsILAssemblerContext *ctx, AvsRunnable *robj, AvsCompilerArgument *arg)
{
	ILRegister *reg = avs_il_register_create();
	
	reg->type = ILRegisterTypeConstant;
	convert_argument(arg, reg);
	return reg;
}
Esempio n. 2
0
void cpp_typecheckt::convert_arguments(
  const irep_idt &mode,
  code_typet &function_type)
{
  code_typet::argumentst &arguments=
    function_type.arguments();

  for(code_typet::argumentst::iterator
      it=arguments.begin();
      it!=arguments.end();
      it++)
    convert_argument(mode, *it);
}
Esempio n. 3
0
static ILRegister * load_identifier(AvsILAssemblerContext *ctx, AvsRunnable *robj, AvsCompilerArgument *arg)
{
	ILRegister *reg = avs_il_register_create();
	AvsRunnableVariable *var;
	
	/* Lookup variable */
	var = avs_runnable_variable_find(robj->variable_manager, arg->value.identifier);
	if (var == NULL) {
		/* Variable not found, auto-create one */
		var = avs_runnable_variable_create(robj->variable_manager, arg->value.identifier, 0);
	}

	avs_debug(print("ILR: Variable name: %s", var->name));

	reg->type = ILRegisterTypeVariable;
	reg->value.variable = var;

	/* Convert argument */
	convert_argument(arg, reg);
	return reg;
}