Advanced loop parallelization : dependence uniformization and trapezoid self-scheduling