[lld] r226225 - Simplify.
Jean-Daniel Dupas
dev at xenonium.com
Fri Jan 16 03:02:47 PST 2015
Just a question not directly related to that change, but similar. Is there something that prevent the use of vector.emplace_back() in the lld code base (compiler or supported c++ library issue) ?
There is some places where we just create a new object and push it back in a vector and could simplify them using emplace_back() instead.
> Le 16 janv. 2015 à 00:15, Rui Ueyama <ruiu at google.com> a écrit :
>
> Author: ruiu
> Date: Thu Jan 15 17:15:09 2015
> New Revision: 226225
>
> URL: http://llvm.org/viewvc/llvm-project?rev=226225&view=rev
> Log:
> Simplify.
>
> Modified:
> lld/trunk/lib/Driver/CoreDriver.cpp
> lld/trunk/lib/Driver/GnuLdDriver.cpp
> lld/trunk/lib/Driver/WinLinkDriver.cpp
>
> Modified: lld/trunk/lib/Driver/CoreDriver.cpp
> URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/CoreDriver.cpp?rev=226225&r1=226224&r2=226225&view=diff
> ==============================================================================
> --- lld/trunk/lib/Driver/CoreDriver.cpp (original)
> +++ lld/trunk/lib/Driver/CoreDriver.cpp Thu Jan 15 17:15:09 2015
> @@ -150,10 +150,8 @@ bool CoreDriver::parse(int argc, const c
> case OPT_INPUT: {
> std::vector<std::unique_ptr<File>> files
> = loadFile(ctx, inputArg->getValue(), false);
> - for (std::unique_ptr<File> &file : files) {
> - ctx.getNodes().push_back(std::unique_ptr<Node>(
> - new FileNode(std::move(file))));
> - }
> + for (std::unique_ptr<File> &file : files)
> + ctx.getNodes().push_back(llvm::make_unique<FileNode>(std::move(file)));
> break;
> }
>
>
> Modified: lld/trunk/lib/Driver/GnuLdDriver.cpp
> URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/GnuLdDriver.cpp?rev=226225&r1=226224&r2=226225&view=diff
> ==============================================================================
> --- lld/trunk/lib/Driver/GnuLdDriver.cpp (original)
> +++ lld/trunk/lib/Driver/GnuLdDriver.cpp Thu Jan 15 17:15:09 2015
> @@ -273,8 +273,7 @@ evaluateLinkerScript(ELFLinkingContext &
> for (std::unique_ptr<File> &file : files) {
> if (ctx.logInputFiles())
> diag << file->path() << "\n";
> - ctx.getNodes().push_back(
> - std::unique_ptr<Node>(new FileNode(std::move(file))));
> + ctx.getNodes().push_back(llvm::make_unique<FileNode>(std::move(file)));
> ++numfiles;
> }
> }
> @@ -590,8 +589,7 @@ bool GnuLdDriver::parse(int argc, const
> ErrorOr<StringRef> pathOrErr = findFile(*ctx, path, dashL);
> if (std::error_code ec = pathOrErr.getError()) {
> auto file = llvm::make_unique<ErrorFile>(path, ec);
> - ctx->getNodes().push_back(
> - std::unique_ptr<FileNode>(new FileNode(std::move(file))));
> + ctx->getNodes().push_back(llvm::make_unique<FileNode>(std::move(file)));
> break;
> }
> std::string realpath = pathOrErr.get();
> @@ -614,8 +612,7 @@ bool GnuLdDriver::parse(int argc, const
> for (std::unique_ptr<File> &file : files) {
> if (ctx->logInputFiles())
> diagnostics << file->path() << "\n";
> - ctx->getNodes().push_back(
> - std::unique_ptr<Node>(new FileNode(std::move(file))));
> + ctx->getNodes().push_back(llvm::make_unique<FileNode>(std::move(file)));
> }
> numfiles += files.size();
> break;
>
> Modified: lld/trunk/lib/Driver/WinLinkDriver.cpp
> URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/WinLinkDriver.cpp?rev=226225&r1=226224&r2=226225&view=diff
> ==============================================================================
> --- lld/trunk/lib/Driver/WinLinkDriver.cpp (original)
> +++ lld/trunk/lib/Driver/WinLinkDriver.cpp Thu Jan 15 17:15:09 2015
> @@ -1414,8 +1414,7 @@ bool WinLinkDriver::parse(int argc, cons
> if (file->parse())
> return false;
> ctx.getResolvableSymsFile()->add(file.get());
> - ctx.getNodes().push_back(
> - std::unique_ptr<Node>(new FileNode(std::move(file))));
> + ctx.getNodes().push_back(llvm::make_unique<FileNode>(std::move(file)));
> }
>
> // Add the library group to the input graph.
> @@ -1431,8 +1430,7 @@ bool WinLinkDriver::parse(int argc, cons
> if (file->parse())
> return false;
> ctx.getResolvableSymsFile()->add(file.get());
> - ctx.addLibraryFile(
> - std::unique_ptr<FileNode>(new FileNode(std::move(file))));
> + ctx.addLibraryFile(llvm::make_unique<FileNode>(std::move(file)));
> }
> }
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list