From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) by sourceware.org (Postfix) with ESMTPS id 49DA2386DC7E; Mon, 27 Jun 2022 06:39:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 49DA2386DC7E Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=maskray.me Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pl1-f180.google.com with SMTP id o18so7324283plg.2; Sun, 26 Jun 2022 23:39:02 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:subject:message-id:mime-version :content-disposition; bh=jzhGq6sMjkLpXH1+YMTnHHxmK/ijfqgihbBnPulL9GQ=; b=lmvcBwsyBWpqVU0N4bVrhXHmNgZWzhRiXOkYb17JvGjSiAq4EQbwISIGe8L2lzSKMl 0zR/ItK+tKDKyjwvPK8QtD/9l6kW3aTMyjwluqSlG+qEUOl/Ei8Qlh/YH8TN9Q3U0icg P8qa/u/9JDYUAqbmacObcOXhbm6PQJwpW/6HlxC3lC8abfZzTHDJq579w1Q/zCKqAwOK aTeYsvYfOEVQiwJJPrZ1o1lDdIl1tC97C3x3E/Annh6nSRXbI7OZRDzfwYj83zB8+Z8Y 6FVITm19L9vhiNd/By3Twm9T90V0yHwO5Lqihitrlk+7RcTKObhOoUAulUu9ILjiW8jt q9sQ== X-Gm-Message-State: AJIora/E5k5d+MX4/+kK7J8ijeCvdWSFTHFrCgDTyqOURl0bELJuxBkS ElgRQ57rVVtEO5XM0NicuQEGzvVyvZc= X-Google-Smtp-Source: AGRyM1txPZ2rE4G177xZNPp7S/MfbCFnPXSVJlGER5th30yWBklpI7r3rhI/6UhBceeqL++j1zwQRg== X-Received: by 2002:a17:90b:1e4f:b0:1ed:4837:5f94 with SMTP id pi15-20020a17090b1e4f00b001ed48375f94mr10804325pjb.68.1656311940987; Sun, 26 Jun 2022 23:39:00 -0700 (PDT) Received: from localhost ([2601:647:6300:b760:896d:43da:187f:15b5]) by smtp.gmail.com with ESMTPSA id o12-20020a170902d4cc00b0016a3f9e4865sm6322743plg.148.2022.06.26.23.39.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Jun 2022 23:39:00 -0700 (PDT) Date: Sun, 26 Jun 2022 23:38:59 -0700 From: Fangrui Song To: binutils@sourceware.org, gdb@sourceware.org, gnu-gabi@sourceware.org, gcc@gcc.gnu.org Subject: New ch_type value ELFCOMPRESS_ZSTD? Message-ID: <20220627063859.27tgplebjcyxxdwi@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00, FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, KAM_INFOUSMEBIZ, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gnu-gabi@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gnu-gabi mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jun 2022 06:39:06 -0000 I created https://groups.google.com/g/generic-abi/c/satyPkuMisk ("Add new ch_type value: ELFCOMPRESS_ZSTD") after I saw that on LLVM side, Cole Kissane proposes that we add Zstandard as new compression method (mainly for .debug* sections, but also for some LLVM internal things) https://discourse.llvm.org/t/rfc-zstandard-as-a-second-compression-method-to-llvm/63399 This makes a lot of sense to me as I know compression/uncompression takes a lot of compile/link time. If people agree that this is a good direction, I wish that we can have a generic-abi value: ELFCOMPRESS_ZSTD 2. If that does not work, perhaps we need a GNU ABI value. We will need features from a bunch of tools: * GCC/Clang: perhaps we can introduce a new driver option -gz=zstd * GNU assembler: add --compress-debug-sections=zstd * GNU ld: add --compress-debug-sections=zstd * objcopy/llvm-objcopy: add --compress-debug-sections=zstd * gdb: support Zstandard * elfutils: support Zstandard