head 1.1; branch 1.1.1; access; symbols binutils-2-46:1.1.1.2 binutils-2-45:1.1.1.1 FSF:1.1.1; locks; strict; comment @# @; 1.1 date 2025.08.25.14.43.14; author christos; state Exp; branches 1.1.1.1; next ; commitid aUBKFf4jmEzPv78G; 1.1.1.1 date 2025.08.25.14.43.14; author christos; state Exp; branches; next 1.1.1.2; commitid aUBKFf4jmEzPv78G; 1.1.1.2 date 2026.02.11.19.50.17; author christos; state Exp; branches; next ; commitid vybCSY05tblOMZtG; desc @@ 1.1 log @Initial revision @ text @@@c ---------------------------------------------------------------------------- @@c This is the Texinfo source file for the gprofng-display-html man page. @@c @@c Author: Ruud van der Pas @@c ---------------------------------------------------------------------------- @@ifset man \input texinfo @@c -*-texinfo-*- @@setfilename gprofng-display-html @@settitle Generate an HTML based directory structure to browse the profiles @@include gp-macros.texi @@end ifset @@c ---------------------------------------------------------------------------- @@c This is from the man-pages(7) man page @@c @@c "The list below shows conventional or suggested sections. Most manual pages @@c should include at least the highlighted sections. Arrange a new manual @@c page so that sections are placed in the order shown in the list." @@c @@c NAME @@c SYNOPSIS @@c CONFIGURATION [Normally only in Section 4] @@c DESCRIPTION @@c OPTIONS [Normally only in Sections 1, 8] @@c EXIT STATUS [Normally only in Sections 1, 8] @@c RETURN VALUE [Normally only in Sections 2, 3] @@c ERRORS [Typically only in Sections 2, 3] @@c ENVIRONMENT @@c FILES @@c VERSIONS [Normally only in Sections 2, 3] @@c ATTRIBUTES [Normally only in Sections 2, 3] @@c CONFORMING TO @@c NOTES @@c BUGS @@c EXAMPLES @@c AUTHORS [Discouraged] @@c REPORTING BUGS [Not used in man-pages] @@c COPYRIGHT [Not used in man-pages] @@c SEE ALSO @@c @@c This is what the texi2pod.pl tool recognizes: @@c @@c for $sect (qw(NAME SYNOPSIS TARGET DESCRIPTION OPTIONS ENVIRONMENT FILES @@c BUGS NOTES FOOTNOTES SEEALSO AUTHOR COPYRIGHT)) { @@c @@c What is interesting is that it places "SEE ALSO" before "COPYRIGHT", which @@c makes sense and adhered to for the other formats. @@c ---------------------------------------------------------------------------- @@c ---------------------------------------------------------------------------- @@c NAME section @@c ---------------------------------------------------------------------------- @@ManPageStart{NAME} @@c man begin NAME gprofng-display-html - Generate an HTML based directory structure to browse the profiles @@c man end @@ManPageEnd{} @@c ---------------------------------------------------------------------------- @@c SYNOPSIS section @@c ---------------------------------------------------------------------------- @@ManPageStart{SYNOPSIS} @@c man begin SYNOPSIS @@command{gprofng display html} [@@var{option(s)}] @@var{experiment(s)} @@c man end @@ManPageEnd{} @@c ---------------------------------------------------------------------------- @@c DESCRIPTION section @@c ---------------------------------------------------------------------------- @@ManPageStart{DESCRIPTION} @@c man begin DESCRIPTION Process one or more experiments to generate a directory containing the @@file{index.html} file that may be used to browse the experiment data. @@c man end @@ManPageEnd{} @@c ---------------------------------------------------------------------------- @@c OPTIONS section @@c ---------------------------------------------------------------------------- @@ManPageStart{OPTIONS} @@c man begin OPTIONS @@table @@gcctabopt @@item --version @@ifclear man @@IndexSubentry{Options, @@code{--version}} @@end ifclear Print the version number and exit. @@item --help @@ifclear man @@IndexSubentry{Options, @@code{--help}} @@end ifclear Print usage information and exit. @@item --verbose @@ifclear man @@IndexSubentry{Options, @@code{--verbose}} @@end ifclear Enable verbose mode to show diagnostic messages about the processing of the data. By default verbose mode is disabled. @@item -d [@@var{db-vol-size}], --debug[=@@var{db-vol-size}] @@ifclear man @@IndexSubentry{Options, @@code{-d}} @@IndexSubentry{Options, @@code{--debug}} @@end ifclear Control the printing of run time debug information to assist with the troubleshooting, or further development of this tool. The @@var{db-vol-size} parameter controls the output volume and is one from the list @@samp{s}, @@samp{S}, @@samp{m}, @@samp{M}, @@samp{l}, @@samp{L}, @@samp{xl}, or @@samp{XL}. If @@var{db-vol-size} is not set, a modest amount of information is printed. This is equivalent to select @@samp{s}, or @@samp{S}. The volume of data goes up as the size increases. Note that currently @@samp{l/L} is equivalent to @@samp{xl/XL}, but this is expected to change in future updates. By default debug mode is disabled. @@item --highlight-percentage=@@var{value} @@ifclear man @@IndexSubentry{Options, @@code{--highlight-percentage}} @@end ifclear Set a percentage value in the interval [0,100] to select and color code source lines, as well as instructions, that are within this percentage of the maximum metric value(s). The default is 90 (%). A value of zero disables this feature. @@item -o @@var{dirname}, --output=@@var{dirname} @@ifclear man @@IndexSubentry{Options, @@code{-o}} @@IndexSubentry{Options, @@code{--output}} @@end ifclear Use @@var{dirname} as the directory name to store the results in. In absence of this option, the default name is @@samp{display..html}. This directory is created in the current directory. The number @@var{} is the first positive integer number not in use in this naming scheme. An existing directory with the same name is not overwritten. In case the directory exists already, an error message is printed and the tool terminates. @@item -O @@var{dirname}, --overwrite=@@var{dirname} @@ifclear man @@IndexSubentry{Options, @@code{-O}} @@IndexSubentry{Options, @@code{--overwrite}} @@end ifclear Use @@var{dirname} as the directory name to store the results in. In absence of this option, the default name is @@samp{display..html}. This directory is created in the current directory. The number @@var{} is the first positive integer number not in use in this naming scheme. An existing directory with the same name is silently overwritten. @@item -q, --quiet @@ifclear man @@IndexSubentry{Options, @@code{-q}} @@IndexSubentry{Options, @@code{--quiet}} @@end ifclear Disable the display of all warning, debug, verbose and any other messages. If enabled, the settings for verbose and debug are accepted, but ignored. With this option, there is no screen output, other than errors. By default quiet mode is disabled. @@item --nowarnings @@ifclear man @@IndexSubentry{Options, @@code{--nowarnings}} @@end ifclear Disable the printing of warning messages on stdout. By default warning messages are printed. @@end table @@c man end @@ManPageEnd{} @@c ---------------------------------------------------------------------------- @@c NOTES section @@c ---------------------------------------------------------------------------- @@ManPageStart{NOTES} @@c man begin NOTES @@itemize @@minus @@item The options and values are case sensitive. @@item In this release, the option syntax has changed to be more compliant with other tools and commands. The options that used to have an @@samp{on} or @@samp{off} value only, now act as a switch. The option negates the default setting. For example, by default, verbose mode is disabled. It is enabled by using the @@samp{--verbose} option. The long options, those starting with @@code{--}, that require a value, expect the @@code{=} sign between the option and the value. While the previous syntax and choices are accepted still, we strongly recommend to change the usage of the options according to the new syntax and values. At some point, these legacy settings may no longer be accepted. To assist with the transition, a warning message is shown if the legacy syntax, or value, or both, are used. @@item The @@samp{-hp} option is still accepted, but it will be deprecated in a future release. Use the @@samp{--highlight-percentage} option instead. @@item When setting a directory name for the HTML files to be stored in, make sure that umask is set to the correct access permissions. @@item Regardless of the setting for the warning messages, if there are warnings, they are accessible through the main @@file{index.html} page. @@item The tool tries to accumulate as many warnings and errors as possible, before taking action. In this way, it is easier to address multiple issues at once. As a result of this approach, it may be that the messages do not show immediately. In particular, warnings are shown towards the end of the execution, but one or more errors will terminate execution before the processing begins. @@end itemize @@c man end @@ManPageEnd{} @@c ---------------------------------------------------------------------------- @@c SEEALSO section @@c ---------------------------------------------------------------------------- @@ManPageStart{SEE ALSO} @@c man begin SEEALSO gprofng(1), gprofng-archive(1), gprofng-collect-app(1), @@c -- gprofng-display-gui(1), gprofng-display-src(1), gprofng-display-text(1) @@iftex @@vspace{1} @@end iftex The user guide for gprofng is maintained as a Texinfo manual. If the @@command{info} and @@command{gprofng} programs are correctly installed, the command @@command{info gprofng} should give access to this document. @@c man end @@ManPageEnd{} @@c ---------------------------------------------------------------------------- @@c COPYRIGHT section @@c ---------------------------------------------------------------------------- @@ManPageStart{COPYRIGHT} @@c man begin COPYRIGHT Copyright @@copyright{} 2022-2025 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''. @@c man end @@ManPageEnd{} @@c ---------------------------------------------------------------------------- @@c If this text is used for a man page, exit. Otherwise we need to continue. @@c ---------------------------------------------------------------------------- @@ifset man @@bye @@end ifset @ 1.1.1.1 log @Import binutils 2.45 (previous was 2.42) 2.45 Release Notes ------------------ Assembler: All sframe information generated by the assembler is now in compliance with the SFrame V2 specification. The assembler now supports .errif and .warnif directives, permitting user-controlled diagnostics with conditionals that are evaluated only at the end of assembly. The assembler predefines the symbol "GAS(version)". The assembler now supports the generation of SFrame stack trace information (.sframe) from CFI directives on s390 64-bit (s390x). For RISC-V, the ".option arch, -ext" format is deprecated due to its controversial use. For RISC-V, stop generating mapping symbols $x and replace with $x. The $x was defined to have the same ISA as previous $x, but now is defined to have the same ISA as elf architecture attribute. Once both used .option arch/rvc/norvc/push/pop directives (some code have different architectures with file attribute) and data directives in text, then the file need to be rebuilt since 2.45. The assembler supports the latest architecture extensions for the RISC-V, LoongArch and AArch64 architectures. Linker: The linker's --stats option can take an optional argument which if used is interpreted as a filename into which resource usage information should be stored. As an alternative mechanism the LD_STATS environment variable can also be used to achieve the same results. Resource usage information for various phases of the linking operation is now included in the report. If a map file is being produced then the information is also included there. The --no-stats option can be used to disable stat reporting, should it have been enabled. On s390 64-bit (s390x), generate SFrame stack trace information (.sframe) for the linker generated .plt section. On s390 32-bit, generate ".eh_frame" unwind information for the linker generated .plt section. Both features are enabled by default and can be disabled using linker option --no-ld-generated-unwind-info. On RISC-V, add new PLT formats, and GNU property merge rules for zicfiss and zicfilp extensions. On AVR, the default linker scripts now assert that the .progmem sections don't extend past 0xffff since they are accessed by means of LPM. For data in program memory that may be located past 0xffff, a .progmemx section should be used. On LoongArch, linker relaxation time complexity is no longer quadratic with respect to relocation counts. Linking time of large software should be improved. In addition R_LARCH_32_PCREL records are now checked for overflow. Other binary utilities: New versioned release of libsframe: libsframe.so.2. This release introduces versioned symbols with version node name LIBSFRAME_2.0. Some new symbols have been added to support the new flag SFRAME_F_FDE_FUNC_START_PCREL and retrieving flags from SFrame decoder and encoder objects: - Addition of sframe_decoder_get_flags, sframe_decoder_get_offsetof_fde_start_addr, sframe_encoder_get_flags, sframe_encoder_get_offsetof_fde_start_addr. This release also includes backward-incompatible ABI changes: - Removal of sframe_get_funcdesc_with_addr. - Change in the behavior of sframe_decoder_get_funcdesc_v2, sframe_encoder_add_funcdesc_v2 and sframe_encoder_write. For SFrame stack trace format, the function start address in each SFrame FDE has a changed encoding: The 32-bit signed integer now holds the offset of the start PC of the associated function from the sfde_func_start_address field itself (instead of the earlier where it was the offset from the start of the SFrame section itself). All SFrame sections generated by gas and ld now default to this new encoding, setting the (new) SFRAME_F_FDE_FUNC_START_PCREL flag. Relocatable SFrame links are now fixed. Readelf now recognizes RISC-V GNU_PROPERTY_RISCV_FEATURE_1_CFI_SS and GNU_PROPERTY_RISCV_FEATURE_1_CFI_LP_UNLABELED for zicfiss and zicfilp extensions. The LoongArch disassembler now properly accepts multiple disassembly options given by -M, such as "-M no-aliases,numeric". (Previously only the first option took effect.) 2.44 Release Notes ------------------ Assembler: Support for new architecture extensions for AArch64, Risc-V and x86. Linker: The default maximum page size was changed from 16KiB to 64KiB for LoongArch. This now supports mixed LTO and non-LTO object files in relocatable output. The ELF forms of the linker support a --image-base= option for compatibility with LLD. The --build-id= option now accepts an argument of "xx" which enables the use of the xxhash library. This produces a 128-bit hash and is 2-4x faster than md5 or sha1. The ELF linker option --package-metadata supports percent-encoded and %[string] encoded JSON payloads. Disassembler: The RISC-V disassembler now supports -M,max option like QEMU to dump instruction without checking architecture support as usual. GprofNG: Support added for hardware event counters for Neoverse-N1, Ampere-1, and Appliedmicro processors. Support for the Nios II target has been removed. 2.43 Release Notes ------------------ Assembler: * Add a .base64 directive to the assembler which allows base64 encoded binary data to be provided as strings. * Assembler macros as well as the bodies of .irp / .irpc / .rept can now use the syntax \+ to access the number of times a given macro has been executed. This is similar to the already existing \@@ syntax, except that the count is maintained on a per-macro basis. * References to FB and dollar labels, when supported, are no longer permitted in a radix other than 10. (Note that definitions of such labels were already thus restricted, except that leading zeroes were permitted). Linker: * Add support for DT_RELR type compressed runtime relocations for the AArch64 and LoongArch architectures. * Add --rosegment option which changes the -z separate-code option so that only one read-only segment is created (instead of two). * Add --section-ordering-file option to add extra mapping of input sections to output sections. * Add -plugin-save-temps to store plugin intermediate files permanently. Utilities: * Readelf will now display DT_RELR relocations in full detail. * Readelf now has a -j/--display-section option which takes the name or index of a section and displays its contents according to its type. The option can be used multiple times on the command line to display multiple sections. * When objdump or readelf are used to display the contents of a .eh_frame section they will now also display the contents of the .eh_frame_hdr section, if present. Gprofng: * Improved the support for hardware event counters: - Re-designed and streamlined the implementation. - Defined a common set of events for ARM processors. - Added specific events for AMD ZEN3 / ZEN4, and Intel Ice Lake processors. * Added a minimal support for RISC-V. General: * Target specific improvements for many architectures. @ text @@ 1.1.1.2 log @Import binutils-2.46.0 (previous was 2.45) Changes in 2.45: * New versioned release of libsframe: libsframe.so.2. This release introduces versioned symbols with version node name LIBSFRAME_2.0. Some new symbols have been added to support the new flag SFRAME_F_FDE_FUNC_START_PCREL and retrieving flags from SFrame decoder and encoder objects: - Addition of sframe_decoder_get_flags, sframe_decoder_get_offsetof_fde_start_addr, sframe_encoder_get_flags, sframe_encoder_get_offsetof_fde_start_addr. This release also includes backward-incompatible ABI changes: - Removal of sframe_get_funcdesc_with_addr. - Change in the behavior of sframe_decoder_get_funcdesc_v2, sframe_encoder_add_funcdesc_v2 and sframe_encoder_write. * On s390 64-bit (s390x), gas, ld, objdump, and readelf now support generating and processing SFrame V2 stack trace information (.sframe). The assembler generates SFrame info from CFI directives with option "--gsframe". The linker generates SFrame info for the linker-generated .plt section and merges all .sframe sections. Both objdump and readelf dump SFrame info with option "--sframe[=]". * For SFrame stack trace format, the function start address in each SFrame FDE has a changed encoding: The 32-bit signed integer now holds the offset of the start PC of the associated function from the sfde_func_start_address field itself (instead of the earlier where it was the offset from the start of the SFrame section itself). All SFrame sections generated by gas and ld now default to this new encoding, setting the (new) SFRAME_F_FDE_FUNC_START_PCREL flag. Relocatable SFrame links are now fixed. * Readelf now recognizes RISC-V GNU_PROPERTY_RISCV_FEATURE_1_CFI_SS and GNU_PROPERTY_RISCV_FEATURE_1_CFI_LP_UNLABELED for zicfiss and zicfilp extensions. * For RISC-V dis-assembler, the definition of mapping symbol $x is changed, so the file needs to be rebuilt since 2.45 once used .option arch directives. * The LoongArch disassembler now properly accepts multiple disassembly options given by -M, such as "-M no-aliases,numeric". (Previously only the first option took effect.) @ text @d286 1 a286 1 Copyright @@copyright{} 2022-2026 Free Software Foundation, Inc. @