# To display the perf.data header info, please use --header/--header-only options. # # # Total Lost Samples: 0 # # Samples: 1K of event 'cpu-clock:ppp' # Event count (approx.): 123300000 # # Overhead Samples Command Shared Object Symbol # ........ ............ ....... .................... ....................................................................................................................................................................................................................................................... # 6.89% 85 osh oils-for-unix [.] MarkSweepHeap::Allocate(unsigned long, int*, int*) 3.16% 39 osh oils-for-unix [.] BigStr::hash(unsigned int (*)(char const*, int)) 2.84% 35 osh oils-for-unix [.] Dict::hash_and_probe(BigStr*) const 2.76% 34 osh oils-for-unix [.] state::Mem::_ResolveNameOrRef(BigStr*, runtime_asdl::scope_e, List*) 2.68% 33 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 2.51% 31 osh oils-for-unix [.] MarkSweepHeap::Sweep() 2.43% 30 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::Eval(syntax_asdl::arith_expr_t*) 2.11% 26 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_Execute(syntax_asdl::command_t*) 1.95% 24 osh oils-for-unix [.] state::Mem::_ResolveNameOnly(BigStr*, runtime_asdl::scope_e) 1.87% 23 osh oils-for-unix [.] MarkSweepHeap::TraceChildren() 1.70% 21 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalWordFrame(List*, List*) 1.62% 20 osh oils-for-unix [.] split::IfsSplitter::Split(BigStr*, bool) 1.46% 18 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_DoShAssignment(syntax_asdl::command__ShAssignment*, runtime_asdl::CommandStatus*) 1.46% 18 osh oils-for-unix [.] state::Mem::GetValue(BigStr*, runtime_asdl::scope_e) 1.46% 18 osh oils-for-unix [.] trap_osh::TrapState::GetPendingTraps() 1.38% 17 osh oils-for-unix [.] Dict::find_kv_index(BigStr*) const 1.30% 16 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_Dispatch(syntax_asdl::command_t*, runtime_asdl::CommandStatus*) 1.22% 15 osh oils-for-unix [.] MarkSweepHeap::MaybeMarkAndPush(RawObject*) 1.22% 15 osh oils-for-unix [.] word_::FastStrEval(syntax_asdl::CompoundWord*) 1.14% 14 osh oils-for-unix [.] dev::Tracer::_ShTraceBegin() 1.14% 14 osh oils-for-unix [.] state::Mem::SetValue(value_asdl::sh_lvalue_t*, value_asdl::value_t*, runtime_asdl::scope_e, int) 1.14% 14 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalWordPart(syntax_asdl::word_part_t*, List*, int) 1.14% 14 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_PartValsToString(List*, syntax_asdl::CompoundWord*, int, List*) 1.05% 13 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 1.05% 13 osh oils-for-unix [.] cmd_eval::CommandEvaluator::RunPendingTraps() 1.05% 13 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::EvalWordToString(syntax_asdl::word_t*, int) 0.97% 12 osh oils-for-unix [.] keys_equal(BigStr*, BigStr*) 0.97% 12 osh oils-for-unix [.] state::Mem::SetNamed(value_asdl::LeftName*, value_asdl::value_t*, runtime_asdl::scope_e, int) 0.97% 12 osh oils-for-unix [.] word_eval::_ValueToPartValue(value_asdl::value_t*, bool, syntax_asdl::word_part_t*) 0.89% 11 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.89% 11 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::_StringToBigInt(BigStr*, syntax_asdl::loc_t*) 0.89% 11 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalSimpleVarSub(syntax_asdl::SimpleVarSub*, List*, bool) 0.81% 10 osh oils-for-unix [.] executor::ShellExecutor::PopProcessSub(runtime_asdl::StatusArray*) 0.81% 10 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::EvalToBigInt(syntax_asdl::arith_expr_t*) 0.81% 10 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::_ValToIntOrError(value_asdl::value_t*, syntax_asdl::arith_expr_t*) 0.81% 10 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::EvalRhsWord(syntax_asdl::rhs_word_t*) 0.73% 9 osh oils-for-unix [.] BigStr::replace(BigStr*, BigStr*, int) 0.73% 9 osh oils-for-unix [.] executor::ShellExecutor::RunSimpleCommand(runtime_asdl::cmd_value__Argv*, runtime_asdl::CommandStatus*, int) 0.73% 9 osh oils-for-unix [.] sh_expr_eval::ArithEvaluator::EvalShellLhs(syntax_asdl::sh_lhs_t*, runtime_asdl::scope_e) 0.73% 9 osh oils-for-unix [.] split::_SpansToParts(BigStr*, List*>*) 0.73% 9 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::EvalWordSequence2(List*, bool, bool) 0.73% 9 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EvalWordToParts(syntax_asdl::CompoundWord*, List*, int) 0.65% 8 osh oils-for-unix [.] Dict::at(BigStr*) const 0.65% 8 osh oils-for-unix [.] match::BracketBinary(BigStr*) 0.65% 8 osh oils-for-unix [.] runtime_asdl::VarSubState* Alloc(bool&&, bool&&, bool&&) 0.57% 7 osh oils-for-unix [.] consts::IfsEdge(int, int) 0.57% 7 osh oils-for-unix [.] lexer::LazyStr(syntax_asdl::Token*) 0.57% 7 osh oils-for-unix [.] value_asdl::value__Str* Alloc(BigStr*&&) 0.57% 7 osh oils-for-unix [.] word_eval::_MakeWordFrames(List*) 0.49% 6 osh libc.so.6 [.] 0x0000000000199d83 0.49% 6 osh oils-for-unix [.] BigStr::join(List*) 0.49% 6 osh oils-for-unix [.] BigStr::startswith(BigStr*) 0.49% 6 osh oils-for-unix [.] List::append(executor::_ProcessSubFrame*) 0.49% 6 osh oils-for-unix [.] bracket_osh::Test::Run(runtime_asdl::cmd_value__Argv*) 0.49% 6 osh oils-for-unix [.] executor::ShellExecutor::PushProcessSub() 0.49% 6 osh oils-for-unix [.] hash_key(int) 0.49% 6 osh oils-for-unix [.] state::Mem::ScopesForReading() 0.49% 6 osh oils-for-unix [.] word_eval::AbstractWordEvaluator::_EmptyStrOrError(value_asdl::value_t*, syntax_asdl::Token*) 0.41% 5 osh [kernel.kallsyms] [k] 0xffffffff9e8ae7a3 0.41% 5 osh libc.so.6 [.] malloc 0.41% 5 osh libc.so.6 [.] 0x0000000000199324 0.41% 5 osh oils-for-unix [.] List* Alloc>() 0.41% 5 osh oils-for-unix [.] List*>::append(Tuple2*) 0.41% 5 osh oils-for-unix [.] List::pop() 0.41% 5 osh oils-for-unix [.] bracket_osh::_StringWordEmitter::ReadWord(types_asdl::lex_mode_e) 0.41% 5 osh oils-for-unix [.] dev::Tracer::OnShAssignment(value_asdl::sh_lvalue_t*, syntax_asdl::assign_op_e, value_asdl::value_t*, int, runtime_asdl::scope_e) 0.41% 5 osh oils-for-unix [.] hash_key(BigStr*) 0.41% 5 osh oils-for-unix [.] runtime_asdl::Piece* Alloc(BigStr*&, bool&, bool&&) 0.41% 5 osh oils-for-unix [.] split::SplitContext::_GetSplitter(BigStr*) 0.32% 4 osh libc.so.6 [.] _IO_fflush 0.32% 4 osh libc.so.6 [.] 0x0000000000047594 0.32% 4 osh libc.so.6 [.] 0x0000000000199a80 0.32% 4 osh oils-for-unix [.] List::append(mylib::BufWriter*) 0.32% 4 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.32% 4 osh oils-for-unix [.] List* Alloc>() 0.32% 4 osh oils-for-unix [.] StringToInt64(char const*, int, int, long*) 0.32% 4 osh oils-for-unix [.] braces::BraceExpandWords(List*) 0.32% 4 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_CheckStatus(int, runtime_asdl::CommandStatus*, syntax_asdl::command_t*, syntax_asdl::loc_t*) 0.32% 4 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_MaybeRunDebugTrap() 0.32% 4 osh oils-for-unix [.] dev::Tracer::OnBuiltin(int, List*) 0.32% 4 osh oils-for-unix [.] runtime_asdl::Piece* Alloc(BigStr*&&, bool&, bool&&) 0.32% 4 osh oils-for-unix [.] trap_osh::TrapState::GetHook(BigStr*) 0.32% 4 osh oils-for-unix [.] value_asdl::LeftName* Alloc(BigStr*&, syntax_asdl::Token*&) 0.24% 3 osh libc.so.6 [.] _IO_setb 0.24% 3 osh libc.so.6 [.] __errno_location 0.24% 3 osh oils-for-unix [.] List::at(int) 0.24% 3 osh oils-for-unix [.] MarkSweepHeap::MaybeCollect() 0.24% 3 osh oils-for-unix [.] bracket_osh::_WordEvaluator::EvalWordToString(syntax_asdl::word_t*, int) 0.24% 3 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_DoWhileUntil(syntax_asdl::command__WhileUntil*) 0.24% 3 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_ExecuteList(List*) 0.24% 3 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_StrictErrExitList(List*) 0.24% 3 osh oils-for-unix [.] consts::LookupNormalBuiltin(BigStr*) 0.24% 3 osh oils-for-unix [.] executor::ShellExecutor::RunBuiltin(int, runtime_asdl::cmd_value__Argv*) 0.24% 3 osh oils-for-unix [.] glob_::LooksLikeGlob(BigStr*) 0.24% 3 osh oils-for-unix [.] match::BracketOther(BigStr*) 0.24% 3 osh oils-for-unix [.] match::BracketUnary(BigStr*) 0.24% 3 osh oils-for-unix [.] mylib::split_once(BigStr*, BigStr*) 0.24% 3 osh oils-for-unix [.] sh_expr_eval::BoolEvaluator::EvalB(syntax_asdl::bool_expr_t*) 0.24% 3 osh oils-for-unix [.] sh_expr_eval::BoolEvaluator::_StringToBigIntOrError(BigStr*, syntax_asdl::word_t*) 0.16% 2 osh libc.so.6 [.] _IO_default_xsputn 0.16% 2 osh libc.so.6 [.] cfree 0.16% 2 osh libc.so.6 [.] 0x0000000000047561 0.16% 2 osh libc.so.6 [.] 0x000000000004765d 0.16% 2 osh libc.so.6 [.] 0x0000000000047674 0.16% 2 osh libc.so.6 [.] 0x00000000000476b3 0.16% 2 osh libc.so.6 [.] 0x00000000000477e0 0.16% 2 osh libc.so.6 [.] 0x000000000005a2ef 0.16% 2 osh libc.so.6 [.] 0x0000000000075078 0.16% 2 osh libc.so.6 [.] 0x00000000000759e4 0.16% 2 osh libc.so.6 [.] 0x000000000008fa46 0.16% 2 osh libc.so.6 [.] 0x00000000000a2a29 0.16% 2 osh libc.so.6 [.] 0x00000000000a48b0 0.16% 2 osh libc.so.6 [.] 0x00000000001992e4 0.16% 2 osh libc.so.6 [.] 0x000000000019d43c 0.16% 2 osh libc.so.6 [.] 0x00000000001a0faa 0.16% 2 osh oils-for-unix [.] BigStr::slice(int, int) 0.16% 2 osh oils-for-unix [.] Dict::hash_and_probe(BigStr*) const 0.16% 2 osh oils-for-unix [.] Dict::hash_and_probe(int) const 0.16% 2 osh oils-for-unix [.] List*>::at(int) 0.16% 2 osh oils-for-unix [.] List*>::reserve(int) [clone .part.0] 0.16% 2 osh oils-for-unix [.] List::pop() 0.16% 2 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.16% 2 osh oils-for-unix [.] List* Alloc>() 0.16% 2 osh oils-for-unix [.] List::at(int) 0.16% 2 osh oils-for-unix [.] List::reserve(int) [clone .part.0] 0.16% 2 osh oils-for-unix [.] List::append(runtime_asdl::StatusArray*) 0.16% 2 osh oils-for-unix [.] List::extend(List*) 0.16% 2 osh oils-for-unix [.] List::at(int) 0.16% 2 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_DoSimple(syntax_asdl::command__Simple*, runtime_asdl::CommandStatus*) 0.16% 2 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_RunSimpleCommand(runtime_asdl::cmd_value_t*, runtime_asdl::CommandStatus*, int) 0.16% 2 osh oils-for-unix [.] consts::LookupAssignBuiltin(BigStr*) 0.16% 2 osh oils-for-unix [.] glob_::GlobUnescape(BigStr*) 0.16% 2 osh oils-for-unix [.] mops::FromStr(BigStr*, int) 0.16% 2 osh oils-for-unix [.] mylib::BufWriter::getvalue() 0.16% 2 osh oils-for-unix [.] pyos::FlushStdout() 0.16% 2 osh oils-for-unix [.] sh_expr_eval::BoolEvaluator::_EvalCompoundWord(syntax_asdl::word_t*, int) 0.16% 2 osh oils-for-unix [.] state::Mem::SetTokenForLine(syntax_asdl::Token*) 0.16% 2 osh oils-for-unix [.] syntax_asdl::loc__Arith* Alloc(syntax_asdl::arith_expr_t*&) 0.16% 2 osh oils-for-unix [.] value_asdl::value__Int* Alloc(long&) 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9e8ae82d 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9e8b0cae 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9e9b0b9d 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb4c2b8 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb4dc6f 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb4dca9 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb4ecea 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb588b6 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb58a0a 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb98d9b 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eb9938f 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eba6599 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eba6687 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eba69b1 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ebad12a 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ebad17e 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ebb818e 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ebba133 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ebd4b1e 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ebe1ef9 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec12196 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec121be 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec12d06 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec12d82 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec14a52 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec15252 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec5e096 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec828e5 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ec871e9 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ecb1d06 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ecb4046 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ed4eb0a 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ed50a8d 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ed556a4 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9edaaa40 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9edaaca5 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9edab84b 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9edac2ff 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ee97475 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9eecbb76 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9ef10745 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9f749105 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9f7696c7 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9f7d718c 0.08% 1 osh [kernel.kallsyms] [k] 0xffffffff9f7ebce0 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b4e1 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b4e5 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000b791 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000000c14e 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x0000000000011429 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x0000000000018408 0.08% 1 osh ld-linux-x86-64.so.2 [.] 0x000000000002818f 0.08% 1 osh libc.so.6 [.] _IO_file_fopen 0.08% 1 osh libc.so.6 [.] _IO_file_sync 0.08% 1 osh libc.so.6 [.] __snprintf_chk 0.08% 1 osh libc.so.6 [.] 0x0000000000047550 0.08% 1 osh libc.so.6 [.] 0x000000000004758f 0.08% 1 osh libc.so.6 [.] 0x0000000000047665 0.08% 1 osh libc.so.6 [.] 0x0000000000047667 0.08% 1 osh libc.so.6 [.] 0x0000000000047693 0.08% 1 osh libc.so.6 [.] 0x00000000000476be 0.08% 1 osh libc.so.6 [.] 0x000000000005a2e5 0.08% 1 osh libc.so.6 [.] 0x0000000000075093 0.08% 1 osh libc.so.6 [.] 0x00000000000750a8 0.08% 1 osh libc.so.6 [.] 0x0000000000075247 0.08% 1 osh libc.so.6 [.] 0x0000000000075251 0.08% 1 osh libc.so.6 [.] 0x0000000000075a66 0.08% 1 osh libc.so.6 [.] 0x0000000000075f8e 0.08% 1 osh libc.so.6 [.] 0x0000000000076ad0 0.08% 1 osh libc.so.6 [.] 0x0000000000088454 0.08% 1 osh libc.so.6 [.] 0x0000000000088461 0.08% 1 osh libc.so.6 [.] 0x00000000000884a4 0.08% 1 osh libc.so.6 [.] 0x00000000000884ce 0.08% 1 osh libc.so.6 [.] 0x000000000008f9b6 0.08% 1 osh libc.so.6 [.] 0x00000000000a27e8 0.08% 1 osh libc.so.6 [.] 0x00000000000a2a2d 0.08% 1 osh libc.so.6 [.] 0x00000000000a425e 0.08% 1 osh libc.so.6 [.] 0x0000000000199328 0.08% 1 osh libc.so.6 [.] 0x0000000000199a88 0.08% 1 osh libc.so.6 [.] 0x0000000000199b64 0.08% 1 osh libc.so.6 [.] 0x0000000000199b68 0.08% 1 osh libc.so.6 [.] 0x0000000000199d73 0.08% 1 osh libc.so.6 [.] 0x0000000000199da3 0.08% 1 osh libc.so.6 [.] 0x0000000000199db1 0.08% 1 osh libc.so.6 [.] 0x0000000000199dd7 0.08% 1 osh libc.so.6 [.] 0x0000000000199de2 0.08% 1 osh libc.so.6 [.] 0x0000000000199de5 0.08% 1 osh libc.so.6 [.] 0x000000000019d428 0.08% 1 osh libc.so.6 [.] 0x00000000001a0f80 0.08% 1 osh libc.so.6 [.] 0x00000000001a0f84 0.08% 1 osh libc.so.6 [.] 0x00000000001a0fa4 0.08% 1 osh oils-for-unix [.] Dict::find_kv_index(BigStr*) const 0.08% 1 osh oils-for-unix [.] Dict* Alloc>() 0.08% 1 osh oils-for-unix [.] Dict::at(BigStr*) const 0.08% 1 osh oils-for-unix [.] Dict::set(BigStr*, value_asdl::value_t*) 0.08% 1 osh oils-for-unix [.] Dict::at(int) const 0.08% 1 osh oils-for-unix [.] List* Alloc>() 0.08% 1 osh oils-for-unix [.] List* Alloc>() 0.08% 1 osh oils-for-unix [.] List* Alloc>() 0.08% 1 osh oils-for-unix [.] Tuple2* Alloc, runtime_asdl::span_e, int&>(runtime_asdl::span_e&&, int&) 0.08% 1 osh oils-for-unix [.] bracket_osh::_ThreeArgs(bracket_osh::_StringWordEmitter*) 0.08% 1 osh oils-for-unix [.] cmd_eval::CommandEvaluator::_EvalCondition(syntax_asdl::condition_t*, syntax_asdl::Token*) 0.08% 1 osh oils-for-unix [.] dev::Tracer::OnSimpleCommand(List*) 0.08% 1 osh oils-for-unix [.] fnv1(char const*, int) 0.08% 1 osh oils-for-unix [.] io_osh::Echo::Run(runtime_asdl::cmd_value__Argv*) 0.08% 1 osh oils-for-unix [.] memchr@plt 0.08% 1 osh oils-for-unix [.] mylib::BufWriter::EnsureMoreSpace(int) 0.08% 1 osh oils-for-unix [.] mylib::BufWriter::write(BigStr*) 0.08% 1 osh oils-for-unix [.] runtime_asdl::cmd_value__Argv* Alloc*&, List*&, bool&, decltype(nullptr)>(List*&, List*&, bool&, decltype(nullptr)&&) [clone .isra.0] 0.08% 1 osh oils-for-unix [.] shell::Main(BigStr*, args::Reader*, Dict*, bool, pyutil::_ResourceLoader*, py_readline::Readline*) 0.08% 1 osh oils-for-unix [.] state::MutableOpts::Push(int, bool) 0.08% 1 osh oils-for-unix [.] ui::ctx_Location::~ctx_Location() # # (Cannot load tips.txt file, please install perf!) #