compile with O3 optimization flags