Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/analyze_sigfe')
-rwxr-xr-xwinsup/cygwin/analyze_sigfe80
1 files changed, 0 insertions, 80 deletions
diff --git a/winsup/cygwin/analyze_sigfe b/winsup/cygwin/analyze_sigfe
deleted file mode 100755
index 0b9b7219f..000000000
--- a/winsup/cygwin/analyze_sigfe
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/usr/bin/perl -s
-# Copyright 2006 Red Hat, Inc.
-#
-# This file is part of Cygwin.
-#
-# This software is a copyrighted work licensed under the terms of the
-# Cygwin license. Please consult the file "CYGWIN_LICENSE" for
-# details.
-
-# This will do a crude test to see if the (NO)?SIGFE stuff is used properly
-# in cygwin.din. It is not perfect so do not use it to do a wholesale replacement.
-#
-# Input is the output of 'objdump --disassemble --demangle cygwin0.dll'.
-#
-use strict;
-use vars qw'$v';
-sub star($);
-
-my %funcs;
-my $func = '';
-
-$| = 1;
-while (<>) {
- /^610.....\s+<([^\(>]+).*?:/o and do {
- $func = $1;
- $funcs{$func} = {} unless defined $funcs{$func};
- next;
- };
- $func and /call\s+\S+\s+<([^\(>]+)/o and do {
- my $called = $1;
- $funcs{$func}{$called} = 1;
- if ($called =~ /^[A-Z].*@/o || ($called = $funcs{$called}{-uses_kernel})) {
- $funcs{$func}{-uses_kernel} ||= $called;
- my @a = ($func);
- while (my $f = shift @a) {
- for my $k (keys %funcs) {
- if ($funcs{$k}{$f} && !$funcs{$k}{-uses_kernel}) {
- $funcs{$k}{-uses_kernel} = $called;
- push(@a, $k);
- }
- }
- }
- }
- next;
- };
-}
-
-if ($v) {
- for my $k (sort keys %funcs) {
- print star($funcs{$k}), $k, $funcs{$k}{-uses_kernel} ? " ($funcs{$k}{-uses_kernel})\n" : "\n";
- my $indent = ' ';
- for (sort keys %{$funcs{$k}}) {
- next if /^-/o;
- print $indent, $_, star($funcs{$k});
- $indent = ' ';
- }
- print "\n";
- }
-}
-
-open(DIN, '<', 'cygwin.din') or die "$0: couldn't open cygwin.din - $!\n";
-while (<DIN>) {
- my $line = $_;
- /^LIBRARY\s+/o and next;
- /^\s*$/ and next;
- /^EXPORTS/o and next;
- / DATA$/o and next;
- my $sigfe = (/\s+((?:NO)?SIGFE)\s*$/o)[0] !~ /^NO/o;
- s/\s+((?:NO)?SIGFE)\s*$//o;
- my $func = (/\s+=\s+(\S+)/o)[0] || (/^\s*(\S+)/o)[0];
- if (!defined($funcs{$func})) {
- warn "hmm. couldn't find $func in disassembled output\n";
- } elsif (!!$funcs{$func}{-uses_kernel} != $sigfe) {
- warn "mismatch detected: $line";
- }
-}
-
-sub star($) {
- return $_[0]->{-uses_kernel} ? '*' : '';
-}