Compiler projects using llvm
template<typename T>
T abs(T x) {
  if (x < 0) {
    return -x;
  }
  return x;
}