Example #1
0
File: ft_print.c Project: jdG-/nm
void		final_print_32_cigam(uint64_t size, uint64_t addr, char *text)
{
	uint64_t		i;
	int				j;

	i = 0;
	while (i < size)
	{
		j = 0;
		print_addr(get_len(addr, BASE_HEX), addr, 32);
		while (j < 16 && i < size)
		{
			if ((text[i] >= 0 && get_len(text[i], BASE_HEX) == 1)
				|| (text[i] < 0 && get_len(text[i] + 256, BASE_HEX) == 1))
				ft_putnbr(0);
			if (text[i] < 0)
				put_base(text[i] + 256, BASE_HEX);
			else
				put_base(text[i], BASE_HEX);
			if ((j + 1) % 4 == 0)
				ft_putchar(' ');
			++j;
			++i;
			addr++;
		}
		ft_putstr("\n");
	}
}
Example #2
0
File: ft_print.c Project: jdG-/nm
static void	print_addr(int len, uint64_t addr, int opt)
{
	int		i;

	if (opt == 64)
		i = 16 - len;
	else
		i = 8 - len;
	while (--i >= 0)
		ft_putchar('0');
	put_base(addr, BASE_HEX);
	ft_putchar(' ');
}
Example #3
0
int read_prob()
{
    int            k,l,lcuts,cont;
    CONSTRAINT     **stack = NULL;
    long           offset;
    struct BRANCH  *ptr;
    VARIABLE       *col;
    FILE           *pfile;
//    float          t1;

    do{
        if( tree==NULL ) return(0);
        offset = tree->file;
        lowerb = tree->val;
        ptr    = tree->next;
        free(tree);
        tree   = ptr;
    }while( ceil(lowerb-ZERO)+ZERO > upperb );
#ifdef STAMP
    std::cout << "  >>>>>>>>>>>>> reading problem " << (float)lowerb << std::endl;
#endif
 //   t1 = seconds();
    pfile = fopen(fbranch,"r");
    if(pfile==NULL){          
          std::cout << "ERROR: not possible to write on " << fbranch << std::endl;
          CSPexit(EXIT_ERROR); //exit(1);
    }
    fseek(pfile,offset,SEEK_SET);

    for(k=0;k<ncols;k++)
         columns[k].stat = FIX_LB;
    fscanf(pfile,"%d",&cont);
    for(k=0;k<cont;k++){
         fscanf(pfile,"%p %d",&col,&l);
         col->stat = l;
    }
    fscanf(pfile,"%d",&lcuts);

    if(lcuts){
         stack = (CONSTRAINT **)malloc( lcuts * sizeof( CONSTRAINT *) );
         if( stack==NULL ){              
              std::cout << "ERROR: not enought memory for STACK" << std::endl;
              CSPexit(EXIT_MEMO); //exit(1);
         }
         for(k=0;k<lcuts;k++){
              fscanf(pfile,"%p",stack+k);
              stack[k]->stat = 0;
         }
    }
    fclose(pfile);

    load_lp();
    if(lcuts){
        add_rows(lcuts,stack);
        free( (void *)stack );
        stack = NULL; /*PWOF*/
    }
    put_base();
    setup_lp();
    get_solution();
    return(1);
}