diff options
Diffstat (limited to 'open_issues/gcc')
-rw-r--r-- | open_issues/gcc/libmudflap.mdwn | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/open_issues/gcc/libmudflap.mdwn b/open_issues/gcc/libmudflap.mdwn deleted file mode 100644 index f14ca1bc..00000000 --- a/open_issues/gcc/libmudflap.mdwn +++ /dev/null @@ -1,74 +0,0 @@ -[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -[[!tag open_issue_porting open_issue_gcc]] - -Single-threaded use appears to work: - - $ echo 'int main(void) { int *a; a[10]=0; return a[5]; }' | ↩ - gcc -o a -fmudflap -x c - -lmudflap - $ ./a - ******* - mudflap violation 1 (check/write): time=1227208721.922064 ptr=0x1023de0 size=4 - pc=0x1037a33 location=`<stdin>:1:26 (main)' - /usr/lib/libmudflap.so.0(__mf_check+0x33) [0x1037a33] - ./a(main+0x7c) [0x80486c4] - /usr/lib/libmudflap.so.0(__wrap_main+0x49) [0x1037239] - Nearby object 1: checked region begins 68B before and ends 65B before - mudflap object 0x80ca268: name=`argv[]' - bounds=[0x1023e24,0x1023e2b] size=8 area=static check=0r/0w liveness=0 - alloc time=1227208721.922064 pc=0x10371d3 - Nearby object 2: checked region begins 76B before and ends 73B before - mudflap object 0x80cb448: name=`environ[]' - bounds=[0x1023e2c,0x1023ed7] size=172 area=static check=0r/0w liveness=0 - alloc time=1227208721.922064 pc=0x10371d3 - number of nearby objects: 2 - ******* - mudflap violation 2 (check/read): time=1227208721.942109 ptr=0x1023dcc size=4 - pc=0x1037a33 location=`<stdin>:1:35 (main)' - /usr/lib/libmudflap.so.0(__mf_check+0x33) [0x1037a33] - ./a(main+0xf3) [0x804873b] - /usr/lib/libmudflap.so.0(__wrap_main+0x49) [0x1037239] - Nearby object 1: checked region begins 88B before and ends 85B before - mudflap object 0x80ca268: name=`argv[]' - Nearby object 2: checked region begins 96B before and ends 93B before - mudflap object 0x80cb448: name=`environ[]' - number of nearby objects: 2 - -Multi-threaded use doesn't: - - $ echo 'int main(void) { int *a; a[10]=0; return a[5]; }' | ↩ - gcc -include pthread.h -o a -fmudflapth -x c - -lmudflapth -lpthread - $ ./a - Killed - $ gdb a - [...] - Starting program: /media/data/home/tschwinge/a - - Program received signal EXC_BAD_ACCESS, Could not access memory. - 0x01180653 in getenv () from /lib/libc.so.0.3 - (gdb) bt - #0 0x01180653 in getenv () from /lib/libc.so.0.3 - #1 0x01177a02 in __dcigettext () from /lib/libc.so.0.3 - #2 0x01176a57 in dcgettext () from /lib/libc.so.0.3 - #3 0x011c03b5 in strerror_r () from /lib/libc.so.0.3 - #4 0x01175b57 in __assert_perror_fail () from /lib/libc.so.0.3 - #5 0x0111f1ad in cthread_fork (func=0x114f630 <_hurd_msgport_receive>, arg=0x0) - at /build/buildd/hurd-20080607/build-tree/hurd/libpthread/pthread/cthreads-compat.c:41 - #6 0x0115713e in _hurdsig_init () from /lib/libc.so.0.3 - #7 0x01140852 in _hurd_proc_init@@GLIBC_2.2.6 () from /lib/libc.so.0.3 - #8 0x01140e86 in _hurd_init () from /lib/libc.so.0.3 - #9 0x011690ce in init1 () from /lib/libc.so.0.3 - #10 0x00001e96 in _dl_start_user () from /lib/ld.so - #11 0x00000001 in ?? () - #12 0x01024000 in ?? () - #13 0x00000000 in ?? () - -Also `libmudflap` is pthread-only. |