Code unreachable, could someone look into it I am not sure what went wrong

function addx(x){

let y= x.toString();

  let z= y.split('');

  let u= z.map(Number);

  return sum= u.reduce((pre,cur)=>{

      return pre+cur})

      if (sum.toString().lenght>1){

        sums=sum.toString().split('');

        sum2= sums.map(Number);

        return sum2.reduce((per,cur)=>{

          return per+cur;

        })

      }

      else sum

}

the code after return is unrachable, and console says illegal return