Skip to content
Snippets Groups Projects
Select Git revision
  • nettle_3.1rc1
  • master default
  • master-updates
  • wip-slh-dsa-sha2-128s
  • release-3.10-fixes
  • getopt-prototype
  • fix-bcrypt-warning
  • refactor-hmac
  • wip-use-alignas
  • trim-sha3-context
  • fix-gitlab-ci
  • check-fat-emulate
  • delete-digest_func-size
  • slh-dsa-shake-128f-nettle
  • slh-dsa-shake-128s-nettle
  • slh-dsa-shake-128s
  • delete-openpgp
  • ppc64-sha512
  • delete-md5-compat
  • cleanup-hmac-tests
  • ppc64-sha256
  • nettle_3.10.2_release_20250626
  • nettle_3.10.1_release_20241230
  • nettle_3.10_release_20240616
  • nettle_3.10rc2
  • nettle_3.10rc1
  • nettle_3.9.1_release_20230601
  • nettle_3.9_release_20230514
  • nettle_3.8.1_release_20220727
  • nettle_3.8_release_20220602
  • nettle_3.7.3_release_20210606
  • nettle_3.7.2_release_20210321
  • nettle_3.7.1_release_20210217
  • nettle_3.7_release_20210104
  • nettle_3.7rc1
  • nettle_3.6_release_20200429
  • nettle_3.6rc3
  • nettle_3.6rc2
  • nettle_3.6rc1
  • nettle_3.5.1_release_20190627
  • nettle_3.5_release_20190626
41 results

chacha-set-key.c

Blame
  • list-obj-sizes.awk 1.26 KiB
    #! /usr/bin/awk -f
    
    # Run this filter on the output of
    #
    #   objdump -h libnettle.a
    
    function hex2int (hex, n, i) {
      n = 0;
      hex = tolower(hex);
      for (i = 1; i<=length(hex); i++)
        {
          n = n * 16 + index("0123456789abcdef", substr(hex,i,1)) - 1;
        }
    
      return n;
    }
    
    function output () {
      if (name)
        {
          printf "%25s %6d   %6d   %6d\n", name, text_size, data_size, rodata_size;
          text_total += text_size;
          data_total += data_size;
          rodata_total += rodata_size; 
        } 
      text_size = 0;
      data_size = 0;
      rodata_size = 0;
    }
    
    BEGIN {
        print "file                   text-size  data-size  rodata-size";
        text_total = 0;
        data_total = 0;
        rodata_total = 0;
    
        text_size = 0;
        data_size = 0;
        rodata_size = 0;
    
        name = "";
        filter = ENVIRON["FILTER"];
        if (!filter)
          filter = ".*";
        else
          printf "Filter: %s\n", filter;
    }
    
    /elf32|elf64/ {
      output();
      if ($1 ~ filter)
        {
          name = $1; text_size = data_size = rodata_size = 0;
          sub(/^[^-]*_a-/, "", name);
        }
      else
        name = "";
    }
    
    /\.text/ { text_size += hex2int($3); }
    /\.data/ { data_size += hex2int($3); }
    /\.rodata/ { rodata_size += hex2int($3);}
    
    END {
      output();
      printf "%25s %6d   %6d   %6d\n", "TOTAL", text_total, data_total, rodata_total;
    }