tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] bounds checking


From: grischka
Subject: Re: [Tinycc-devel] bounds checking
Date: Tue, 10 Dec 2019 20:16:30 +0100
User-agent: Thunderbird 2.0.0.23 (Windows/20090812)

Herman ten Brugge via Tinycc-devel wrote:
I just committed a large patch that fix a lot of bounds checking problems.

Hmm, is this supposed to find something, too?  For example:
{
    char a[10], b[10], c;

    b[15] = 16;
    (&c)[20] = 21;
    free(a);

Seems to pass without any complain.

Btw, the notes on changes would fit better into the commit message,
(possibly with "..." expanded).

-- gr

I tested the bounds checking code now works on x86_64 and i386 on linux
and windows.
The test/tests2 directory can now be tested with -b enabled.

There are a lot of changes (not complete):
- split up bcheck.c from libtcc1.a because I now use dl_sym to redirect
malloc and friends.
  This was needed because the malloc_hooks are not thread safe.
  When compiling with -b now the pthread and dl library are also included.
- Rewrote bcheck.c library to fix a lot of small problems.
- Add mmap/munmap support on linux.
- Updated tcc.1
- Added bound_main_arg to record argv on startup.
- Added support for x86_64 on windows.
- Moved tcc_add_bcheck from tccelf to i386/x86_64 code.
- Added 2 new testcases.
- Fixed a lot of bugs:
  - conversion problem code with double/long long.
  - in gen_bounded_ptr_add move save_regs to top.
  - alloca/vla fixes.
  - VT_LLOCAL problems when using bounds checking.
  - ...

Regards,

    Herman




reply via email to

[Prev in Thread] Current Thread [Next in Thread]