Go to file
Pavel Labath aa51e6a683 Refactor user/group name resolving code
Summary:
This creates an abstract base class called "UserIDResolver", which can
be implemented to provide user/group ID resolution capabilities for
various objects. Posix host implement a PosixUserIDResolver, which does
that using posix apis (getpwuid and friends).  PlatformGDBRemote
forwards queries over the gdb-remote link, etc. ProcessInstanceInfo
class is refactored to make use of this interface instead of taking a
platform pointer as an argument. The base resolver class already
implements caching and thread-safety, so implementations don't have to
worry about that.

The main motivating factor for this was to remove external dependencies
from the ProcessInstanceInfo class (so it can be put next to
ProcessLaunchInfo and friends), but it has other benefits too:
- ability to test the user name caching code
- ability to test ProcessInstanceInfo dumping code
- consistent interface for user/group resolution between Platform and
  Host classes.

Reviewers: zturner, clayborg, jingham

Subscribers: mgorny, lldb-commits

Differential Revision: https://reviews.llvm.org/D58167

llvm-svn: 355323
2019-03-04 18:48:00 +00:00
clang Enable _rotl, _lrotl, _rotr, _lrotr on all platforms. 2019-03-04 18:47:21 +00:00
clang-tools-extra [clangd] Enable SuggestMissingIncludes by default. 2019-03-01 14:17:55 +00:00
compiler-rt Revert "[sanitizer] Fix return type of __bzero and __aeabi_mem* interceptors." 2019-03-02 01:33:52 +00:00
debuginfo-tests Set config.lit_tools_dir, which is needed by lit.llvm.initialize. 2018-11-06 21:54:27 +00:00
libclc Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
libcxx [libc++] decoupling Freestanding atomic<T> from libatomic.a 2019-03-04 15:26:27 +00:00
libcxxabi [libc++abi] Specify unwind lib before other system libraries when linking 2019-03-01 22:55:15 +00:00
libunwind [CMake][libunwind] Define add_target_flags which is missing 2019-02-28 21:38:59 +00:00
lld [LLD] add test for line number info related to differrent .text sections 2019-03-04 10:42:54 +00:00
lldb Refactor user/group name resolving code 2019-03-04 18:48:00 +00:00
llgo Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
llvm [WebAssembly] Add support for data sections in the assembler. 2019-03-04 17:18:04 +00:00
openmp [OPENMP] Deal with additional store inserted by Clang under -fno-PIC for PowerPC. 2019-03-01 21:16:45 +00:00
parallel-libs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
polly [opaque pointer types] Update calls to CreateCall to pass the function 2019-02-08 19:30:46 +00:00
pstl [pstl] Fix missing parallel policy guards 2019-03-01 01:26:35 +00:00
.arcconfig Update monorepo .arcconfig with new project callsign. 2019-01-31 14:34:59 +00:00
.clang-format Add .clang-tidy and .clang-format files to the toplevel of the 2019-01-29 16:43:16 +00:00
.clang-tidy Disable tidy checks with too many hits 2019-02-01 11:20:13 +00:00
README.md

README.md

The LLVM Compiler Infrastructure

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.