Wolfgang Thallerbinutils 2.39f485e124 years agoHistory
1954 lines · 70.0 KB · Text
RawDownload
2020-09-23  H.J. Lu  <hongjiu.lu@intel.com> 	PR libctf/26934	* ctf-dump.c (ctf_dump_objts): Pass format argument to asprintf. 2020-11-23  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-impl.h (ctf_dict_t) <ctf_symtab_little_endian>: New.	(struct ctf_archive_internal) <ctfi_symsect_little_endian>: Likewise.	* ctf-create.c (ctf_serialize): Adjust for new field.	* ctf-open.c (init_symtab): Note the semantics of repeated calls.	(ctf_symsect_endianness): New.	(ctf_bufopen_internal): Set ctf_symtab_little_endian suitably for	the native endianness.	(_Static_assert): Moved...	(swap_thing): ... with this...	* swap.h: ... to here.	* ctf-util.c (ctf_elf32_to_link_sym): Use it, byteswapping the	Elf32_Sym if the ctf_symtab_little_endian demands it.	(ctf_elf64_to_link_sym): Likewise swap the Elf64_Sym if needed.	* ctf-archive.c (ctf_arc_symsect_endianness): New, set the	endianness of the symtab used by the dicts in an archive.	(ctf_archive_iter_internal): Initialize to unknown (assumed native,	do not call ctf_symsect_endianness).	(ctf_dict_open_by_offset): Call ctf_symsect_endianness if need be.	(ctf_dict_open_internal): Propagate the endianness down.	(ctf_dict_open_sections): Likewise.	* ctf-open-bfd.c (ctf_bfdopen_ctfsect): Get the endianness from the	struct bfd and pass it down to the archive.	* libctf.ver: Add ctf_symsect_endianness and	ctf_arc_symsect_endianness. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-link.c (ctf_link_deduplicating): Clean up the ctf_link_outputs	hash on error. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-create.c (ctf_dtd_insert): Set ENOMEM on the dict if out of memory.	(ctf_dvd_insert): Likewise.	(ctf_add_function): Report ECTF_RDONLY if this dict is not writable.	* ctf-subr.c (ctf_err_warn): Only debug-dump passed-in warnings if	the passed-in error code is nonzero: the error on the dict for	warnings may relate to a previous error. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-open.c (ctf_getsymsect): New.	(ctf_getstrsect): Likewise.	* libctf.ver: Add them. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-impl.h (struct ctf_archive_internal) <ctfi_dicts>: New, dicts	the archive machinery has opened and cached.	<ctfi_symdicts>: New, cache of dicts containing symbols looked up.	<ctfi_syms>: New, cache of types of symbols looked up.	* ctf-archive.c (ctf_arc_close): Free them on close.	(enosym): New, flag entry for 'symbol not present'.	(ctf_arc_import_parent): New, automatically import the parent from	".ctf" if this is a child in an archive and ".ctf" is present.	(ctf_dict_open_sections): Use it.	(ctf_archive_iter_internal): Likewise.	(ctf_cached_dict_close): New, thunk around ctf_dict_close.	(ctf_dict_open_cached): New, open and cache a dict.	(ctf_arc_flush_caches): New, flush the caches.	(ctf_arc_lookup_symbol): New, look up a symbol in (all members of)	an archive, and cache the lookup.	(ctf_archive_iter): Note the new caching behaviour.	(ctf_archive_next): Use ctf_dict_open_cached.	* libctf.ver: Add ctf_arc_lookup_symbol and ctf_arc_flush_caches. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-dedup.c (ctf_dedup_rhash_type): Null out the names of nameless	type kinds, just in case the input has named them. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-dump.c (ctf_dump_header): Dump the new flags bits and the index	section lengths.	(ctf_dump_objts): Report indexed sections.  Also dump functions.  Use	ctf_symbol_next, not manual looping.	(ctf_dump_funcs): Delete.	(ctf_dump): Use ctf_dump_objts, not ctf_dump_funcs. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-impl.h (CTF_INDEX_PAD_THRESHOLD): New.	(_libctf_nonnull_): Likewise.	(ctf_in_flight_dynsym_t): New.	(ctf_dict_t) <ctf_funcidx_names>: Likewise.	<ctf_objtidx_names>: Likewise.	<ctf_nfuncidx>: Likewise.	<ctf_nobjtidx>: Likewise.	<ctf_funcidx_sxlate>: Likewise.	<ctf_objtidx_sxlate>: Likewise.	<ctf_objthash>: Likewise.	<ctf_funchash>: Likewise.	<ctf_dynsyms>: Likewise.	<ctf_dynsymidx>: Likewise.	<ctf_dynsymmax>: Likewise.	<ctf_in_flight_dynsym>: Likewise.	(struct ctf_next) <u.ctn_next>: Likewise.	(ctf_symtab_skippable): New prototype.	(ctf_add_funcobjt_sym): Likewise.	(ctf_dynhash_sort_by_name): Likewise.	(ctf_sym_to_elf64): Rename to...	(ctf_elf32_to_link_sym): ... this, and...	(ctf_elf64_to_link_sym): ... this.	* ctf-open.c (init_symtab): Check for lack of CTF_F_NEWFUNCINFO	flag, and presence of index sections.  Refactor out	ctf_symtab_skippable and ctf_elf*_to_link_sym, and use them.  Use	ctf_link_sym_t, not Elf64_Sym.  Skip initializing objt or func	sxlate sections if corresponding index section is present.  Adjust	for new func info section format.	(ctf_bufopen_internal): Add ctf_err_warn to corrupt-file error	handling.  Report incorrect-length index sections.  Always do an	init_symtab, even if there is no symtab section (there may be index	sections still).	(flip_objts): Adjust comment: func and objt sections are actually	identical in structure now, no need to caveat.	(ctf_dict_close):  Free newly-added data structures.	* ctf-create.c (ctf_create): Initialize them.	(ctf_symtab_skippable): New, refactored out of	init_symtab, with st_nameidx_set check added.	(ctf_add_funcobjt_sym): New, add a function or object symbol to the	ctf_objthash or ctf_funchash, by name.	(ctf_add_objt_sym): Call it.	(ctf_add_func_sym): Likewise.	(symtypetab_delete_nonstatic_vars): New, delete vars also present as	data objects.	(CTF_SYMTYPETAB_EMIT_FUNCTION): New flag to symtypetab emitters:	this is a function emission, not a data object emission.	(CTF_SYMTYPETAB_EMIT_PAD): New flag to symtypetab emitters: emit	pads for symbols with no type (only set for unindexed sections).	(CTF_SYMTYPETAB_FORCE_INDEXED): New flag to symtypetab emitters:	always emit indexed.	(symtypetab_density): New, figure out section sizes.	(emit_symtypetab): New, emit a symtypetab.	(emit_symtypetab_index): New, emit a symtypetab index.	(ctf_serialize): Call them, emitting suitably sorted symtypetab	sections and indexes.  Set suitable header flags.  Copy over new	fields.	* ctf-hash.c (ctf_dynhash_sort_by_name): New, used to impose an	order on symtypetab index sections.	* ctf-link.c (ctf_add_type_mapping): Delete erroneous comment	relating to code that was never committed.	(ctf_link_one_variable): Improve variable name.	(check_sym): New, symtypetab analogue of check_variable.	(ctf_link_deduplicating_one_symtypetab): New.	(ctf_link_deduplicating_syms): Likewise.	(ctf_link_deduplicating): Call them.	(ctf_link_deduplicating_per_cu): Note that we don't call them in	this case (yet).	(ctf_link_add_strtab): Set the error on the fp correctly.	(ctf_link_add_linker_symbol): New (no longer a do-nothing stub), add	a linker symbol to the in-flight list.	(ctf_link_shuffle_syms): New (no longer a do-nothing stub), turn the	in-flight list into a mapping we can use, now its names are	resolvable in the external strtab.	* ctf-string.c (ctf_str_rollback_atom): Don't roll back atoms with	external strtab offsets.	(ctf_str_rollback): Adjust comment.	(ctf_str_write_strtab): Migrate ctf_syn_ext_strtab population from	writeout time...	(ctf_str_add_external): ... to string addition time.	* ctf-lookup.c (ctf_lookup_var_key_t): Rename to...	(ctf_lookup_idx_key_t): ... this, now we use it for syms too.	<clik_names>: New member, a name table.	(ctf_lookup_var): Adjust accordingly.	(ctf_lookup_variable): Likewise.	(ctf_lookup_by_id): Shuffle further up in the file.	(ctf_symidx_sort_arg_cb): New, callback for...	(sort_symidx_by_name): ... this new function to sort a symidx	found to be unsorted (likely originating from the compiler).	(ctf_symidx_sort): New, sort a symidx.	(ctf_lookup_symbol_name): Support dynamic symbols with indexes	provided by the linker.  Use ctf_link_sym_t, not Elf64_Sym.	Check the parent if a child lookup fails.	(ctf_lookup_by_symbol): Likewise.  Work for function symbols too.	(ctf_symbol_next): New, iterate over symbols with types (without	sorting).	(ctf_lookup_idx_name): New, bsearch for symbol names in indexes.	(ctf_try_lookup_indexed): New, attempt an indexed lookup.	(ctf_func_info): Reimplement in terms of ctf_lookup_by_symbol.	(ctf_func_args): Likewise.	(ctf_get_dict): Move...	* ctf-types.c (ctf_get_dict): ... here.	* ctf-util.c (ctf_sym_to_elf64): Re-express as...	(ctf_elf64_to_link_sym): ... this.  Add new st_symidx field, and	st_nameidx_set (always 0, so st_nameidx can be ignored).  Look in	the ELF strtab for names.	(ctf_elf32_to_link_sym): Likewise, for Elf32_Sym.	(ctf_next_destroy): Destroy ctf_next_t.u.ctn_next if need be.	* libctf.ver: Add ctf_symbol_next, ctf_add_objt_sym and	ctf_add_func_sym. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-link.c (ctf_link_shuffle_syms): Adjust.	(ctf_link_add_linker_symbol): New, unimplemented stub.	* libctf.ver: Add it.	* ctf-create.c (ctf_serialize): Set CTF_F_DYNSTR on newly-serialized	dicts.	* ctf-open-bfd.c (ctf_bfdopen_ctfsect): Check for the flag: open the	symtab/strtab if not present, dynsym/dynstr otherwise.	* ctf-archive.c (ctf_arc_bufpreamble): New, get the preamble from	some arbitrary member of a CTF archive.	* ctf-impl.h (ctf_arc_bufpreamble): Declare it. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-archive.c (ctf_arc_open_by_offset): Rename to...	(ctf_dict_open_by_offset): ... this.  Adjust callers.	(ctf_arc_open_by_name_internal): Rename to...	(ctf_dict_open_internal): ... this.  Adjust callers.	(ctf_arc_open_by_name_sections): Rename to...	(ctf_dict_open_sections): ... this, keeping compatibility function.	(ctf_arc_open_by_name): Rename to...	(ctf_dict_open): ... this, keeping compatibility function.	* libctf.ver: New functions added.	* ctf-link.c (ctf_link_one_input_archive): Adjusted accordingly.	(ctf_link_deduplicating_open_inputs): Likewise. 2020-11-20  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-impl.h: Rename ctf_file_t to ctf_dict_t: all declarations	adjusted.	(ctf_fileops): Rename to...	(ctf_dictops): ... this.	(ctf_dedup_t) <cd_id_to_file_t>: Rename to...	<cd_id_to_dict_t>: ... this.	(ctf_file_t): Fix outdated comment.	<ctf_fileops>: Rename to...	<ctf_dictops>: ... this.	(struct ctf_archive_internal) <ctfi_file>: Rename to...	<ctfi_dict>: ... this.	* ctf-archive.c: Rename ctf_file_t to ctf_dict_t.	Rename ctf_archive.ctfa_nfiles to ctfa_ndicts.	Rename ctf_file_close to ctf_dict_close.  All users adjusted.	* ctf-create.c: Likewise.  Refer to CTF dicts, not CTF containers.	(ctf_bundle_t) <ctb_file>: Rename to...	<ctb_dict): ... this.	* ctf-decl.c: Rename ctf_file_t to ctf_dict_t.	* ctf-dedup.c: Likewise.  Rename ctf_file_close to	ctf_dict_close. Refer to CTF dicts, not CTF containers.	* ctf-dump.c: Likewise.	* ctf-error.c: Likewise.	* ctf-hash.c: Likewise.	* ctf-inlines.h: Likewise.	* ctf-labels.c: Likewise.	* ctf-link.c: Likewise.	* ctf-lookup.c: Likewise.	* ctf-open-bfd.c: Likewise.	* ctf-string.c: Likewise.	* ctf-subr.c: Likewise.	* ctf-types.c: Likewise.	* ctf-util.c: Likewise.	* ctf-open.c: Likewise.	(ctf_file_close): Rename to...	(ctf_dict_close): ...this.	(ctf_file_close): New trivial wrapper around ctf_dict_close, for	compatibility.	(ctf_parent_file): Rename to...	(ctf_parent_dict): ... this.	(ctf_parent_file): New trivial wrapper around ctf_parent_dict, for	compatibility.	* libctf.ver: Add ctf_dict_close and ctf_parent_dict. 2020-10-21  Tom Tromey  <tromey@adacore.com> 	* mkerrors.sed: Remove.	* ctf-error.c (_CTF_FIRST): New define.	(_CTF_ITEM): Define this, not _CTF_STR.	(_ctf_errlist, _ctf_erridx): Use _CTF_ERRORS.	(ERRSTRFIELD): Rewrite.	(ERRSTRFIELD1): Remove.	* Makefile.in: Rebuild.	* Makefile.am (BUILT_SOURCES): Remove.	(ctf-error.h): Remove. 2020-08-27  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-subr.c (open_errors): New list.	(ctf_err_warn): Calls with NULL fp append to open_errors.  Add err	parameter, and use it to decorate the debug stream with errmsgs.	(ctf_err_warn_to_open): Splice errors from a CTF dict into the	open_errors.	(ctf_errwarning_next): Calls with NULL fp report from open_errors.	New err param to report iteration errors (including end-of-iteration)	when fp is NULL.	(ctf_assert_fail_internal): Adjust ctf_err_warn call for new err	parameter: gettextize.	* ctf-impl.h (ctfo_get_vbytes): Add ctf_file_t parameter.	(LCTF_VBYTES): Adjust.	(ctf_err_warn_to_open): New.	(ctf_err_warn): Adjust.	(ctf_bundle): Used in only one place: move...	* ctf-create.c: ... here.	(enumcmp): Use ctf_err_warn, not ctf_dprintf, passing the err number	down as needed.  Don't emit the errmsg.  Gettextize.	(membcmp): Likewise.	(ctf_add_type_internal): Likewise.	(ctf_write_mem): Likewise.	(ctf_compress_write): Likewise.  Report errors writing the header or	body.	(ctf_write): Likewise.	* ctf-archive.c (ctf_arc_write_fd): Use ctf_err_warn, not	ctf_dprintf, and gettextize, as above.	(ctf_arc_write): Likewise.	(ctf_arc_bufopen): Likewise.	(ctf_arc_open_internal): Likewise.	* ctf-labels.c (ctf_label_iter): Likewise.	* ctf-open-bfd.c (ctf_bfdclose): Likewise.	(ctf_bfdopen): Likewise.	(ctf_bfdopen_ctfsect): Likewise.	(ctf_fdopen): Likewise.	* ctf-string.c (ctf_str_write_strtab): Likewise.	* ctf-types.c (ctf_type_resolve): Likewise.	* ctf-open.c (get_vbytes_common): Likewise. Pass down the ctf dict.	(get_vbytes_v1): Pass down the ctf dict.	(get_vbytes_v2): Likewise.	(flip_ctf): Likewise.	(flip_types): Likewise. Use ctf_err_warn, not ctf_dprintf, and	gettextize, as above.	(upgrade_types_v1): Adjust calls.	(init_types): Use ctf_err_warn, not ctf_dprintf, as above.	(ctf_bufopen_internal): Likewise. Adjust calls. Transplant errors	emitted into individual dicts into the open errors if this turns	out to be a failed open in the end.	* ctf-dump.c (ctf_dump_format_type): Adjust ctf_err_warn for new err	argument.  Gettextize.  Don't emit the errmsg.	(ctf_dump_funcs): Likewise.  Collapse err label into its only case.	(ctf_dump_type): Likewise.	* ctf-link.c (ctf_create_per_cu): Adjust ctf_err_warn for new err	argument.  Gettextize.  Don't emit the errmsg.	(ctf_link_one_type): Likewise.	(ctf_link_lazy_open): Likewise.	(ctf_link_one_input_archive): Likewise.	(ctf_link_deduplicating_count_inputs): Likewise.	(ctf_link_deduplicating_open_inputs): Likewise.	(ctf_link_deduplicating_close_inputs): Likewise.	(ctf_link_deduplicating): Likewise.	(ctf_link): Likewise.	(ctf_link_deduplicating_per_cu): Likewise. Add some missed	ctf_set_errnos to obscure error cases.	* ctf-dedup.c (ctf_dedup_rhash_type): Adjust ctf_err_warn for new	err argument.  Gettextize.  Don't emit the errmsg.	(ctf_dedup_populate_mappings): Likewise.	(ctf_dedup_detect_name_ambiguity): Likewise.	(ctf_dedup_init): Likewise.	(ctf_dedup_multiple_input_dicts): Likewise.	(ctf_dedup_conflictify_unshared): Likewise.	(ctf_dedup): Likewise.	(ctf_dedup_rwalk_one_output_mapping): Likewise.	(ctf_dedup_id_to_target): Likewise.	(ctf_dedup_emit_type): Likewise.	(ctf_dedup_emit_struct_members): Likewise.	(ctf_dedup_populate_type_mapping): Likewise.	(ctf_dedup_populate_type_mappings): Likewise.	(ctf_dedup_emit): Likewise.	(ctf_dedup_hash_type): Likewise. Fix a bit of messed-up error	status setting.	(ctf_dedup_rwalk_one_output_mapping): Likewise. Don't hide	unknown-type-kind messages (which signify file corruption). 2020-08-27  Nick Alcock  <nick.alcock@oracle.com> 	* configure.ac: Adjust package name to simply 'libctf': arbitrarily	declare this to be version 1.2.0.	* Makefile.am (AM_CPPFLAGS): Add @INCINTL@.	* Makefile.in: Regenerated.	* configure: Regenerated.	* ctf-intl.h: New file, lightly modified from opcodes/opintl.h.	* ctf-impl.h: Include it.	* ctf-error.r (_ctf_errlist_t): Mark strings as noop-translatable.	(ctf_errmsg): Actually translate them. 2020-07-26  Eli Zaretskii  <eliz@gnu.org> 	PR binutils/25155:	* ctf-create.c (EOVERFLOW): If not defined by system header,	redirect to ERANGE as a poor man's substitute.	* ctf-subr.c (ENOTSUP): If not defined, use ENOSYS instead. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-create.c (ctf_dtd_insert): Add uintptr_t casts.	(ctf_dtd_delete): Likewise.	(ctf_dtd_lookup): Likewise.	(ctf_rollback): Likewise.	* ctf-hash.c (ctf_hash_lookup_type): Likewise.	* ctf-types.c (ctf_lookup_by_rawhash): Likewise. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-lookup.c (ctf_lookup_by_name): Adjust. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-archive.c (ctf_arc_bufopen): Endian-swap the archive magic	number if needed. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-impl.h (ctf_list_splice): New.	* ctf-util.h (ctf_list_splice): Likewise.	* ctf-link.c (link_sort_inputs_cb_arg_t): Likewise.	(ctf_link_sort_inputs): Likewise.	(ctf_link_deduplicating_count_inputs): Likewise.	(ctf_link_deduplicating_open_inputs): Likewise.	(ctf_link_deduplicating_close_inputs): Likewise.	(ctf_link_deduplicating_variables): Likewise.	(ctf_link_deduplicating_per_cu): Likewise.	(ctf_link_deduplicating): Likewise.	(ctf_link): Call it. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-link.c (ctf_link_one_input_archive_member): Check	CTF_LINK_OMIT_VARIABLES_SECTION. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-impl.h (ctf_type_id_key): New, the key in the	cd_id_to_file_t.	(ctf_dedup): New, core deduplicator state.	(ctf_file_t) <ctf_dedup>: New.	<ctf_dedup_atoms>: New.	<ctf_dedup_atoms_alloc>: New.	(ctf_hash_type_id_key): New prototype.	(ctf_hash_eq_type_id_key): Likewise.	(ctf_dedup_atoms_init): Likewise.	* ctf-hash.c (ctf_hash_eq_type_id_key): New.	(ctf_dedup_atoms_init): Likewise.	* ctf-create.c (ctf_serialize): Adjusted.	(ctf_add_encoded): No longer static.	(ctf_add_reftype): Likewise.	* ctf-open.c (ctf_file_close): Destroy the	ctf_dedup_atoms_alloc.	* ctf-dedup.c: New file.        * ctf-decls.h [!HAVE_DECL_STPCPY]: Add prototype.	* configure.ac: Check for stpcpy.	* Makefile.am: Add it.	* Makefile.in: Regenerate.        * config.h.in: Regenerate.        * configure: Regenerate. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* configure.ac: Add --enable-libctf-hash-debugging.	* aclocal.m4: Pull in enable.m4, for GCC_ENABLE.	* Makefile.in: Regenerated.	* configure: Likewise.	* config.h.in: Likewise.	* ctf-impl.h [ENABLE_LIBCTF_HASH_DEBUGGING]	(ctf_assert): Define to assert. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-sha1.h: New, inline wrappers around sha1_init_ctx and	sha1_process_bytes.	* ctf-impl.h: Include it.	(ctf_sha1_init): New.	(ctf_sha1_add): Likewise.	(ctf_sha1_fini): Likewise.	* ctf-sha1.c: New, non-inline wrapper around sha1_finish_ctx	producing strings.	* Makefile.am: Add file.	* Makefile.in: Regenerate. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* libctf.ver (ctf_link_set_variable_filter): Add.	* ctf-impl.h (ctf_file_t) <ctf_link_variable_filter>: New.	<ctf_link_variable_filter_arg>: Likewise.	* ctf-create.c (ctf_serialize): Adjust.	* ctf-link.c (ctf_link_set_variable_filter): New, set it.	(ctf_link_one_variable): Call it if set. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-link.c (ctf_link_one_variable): Check the dst_type for	conflicts, not the source type. 2020-07-22  Nick Alcock  <nick.alcock@oracle.com> 	* ctf-impl.h (ctf_file_t): Improve comments.	<ctf_link_cu_mapping>: Split into...	<ctf_link_in_cu_mapping>: ... this...	<ctf_link_out_cu_mapping>: ... and this.	* ctf-create.c (ctf_serialize): Adjust.	* ctf-open.c (ctf_file_close): Likewise.	* ctf-link.c (ctf_create_per_cu): Look things up in the	in_cu_mapping instead of the cu_mapping.	(ctf_link_add_cu_mapping): The deduplicating link will define	what happens if many FROMs share a TO.	(ctf_link_add_cu_mapping): Create in_cu_mapping and

Lines 1–500 of 1954.

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t