Right now, llvm-cov doesn't support relative path and -path-equivalence is
only used for search source files. If the file path embedded in the binary is a
relative path and we use llvm-cov show -path-equivalence=from,to, the location
of generated coverage report files will be relative to current working direcotry.
If ../../test.cpp is embedded, coverage report files will be generated outside
the directory specified by -o.
This patch let llvm-cov construct output directory with the to part of
-path-equivalence=from,to as prefix. For example, if we have /tmp/src/a.cpp
embedded in the binary, llvm-cov show -path-equivalence=/tmp/src/,/cov ...
will generate output direcotry like this: coverage/cov/a.cpp.
But if -path-equivalence is not given and ../../a.cpp is embedded in the
binary, llvm-cov may still generate report files outside report directory when
source files are found. Maybe we should give a warning/error to let user use
-path-equivalence when relative path is present?