diff options
author | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | 2002-05-15 15:57:05 +0000 |
---|---|---|
committer | Rainer Orth <ro@gcc.gnu.org> | 2002-05-15 15:57:05 +0000 |
commit | d2aa36f5d96ab2a31788516e05b4c1f3cc0503d6 (patch) | |
tree | d332f04f2a30f98311a6631da9ffe68b9d528181 | |
parent | 7bd9b6d491a8ecae045944f6eeba77a98e82d0c1 (diff) | |
download | gcc-d2aa36f5d96ab2a31788516e05b4c1f3cc0503d6.zip gcc-d2aa36f5d96ab2a31788516e05b4c1f3cc0503d6.tar.gz gcc-d2aa36f5d96ab2a31788516e05b4c1f3cc0503d6.tar.bz2 |
testsuite_hooks.h (__set_testsuite_memlimit): Retrieve current limits before setting.
* testsuite/testsuite_hooks.h (__set_testsuite_memlimit):
Retrieve current limits before setting.
From-SVN: r53490
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/testsuite_hooks.h | 10 |
2 files changed, 14 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b1bb701..91082c7 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2002-05-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> + + * testsuite/testsuite_hooks.h (__set_testsuite_memlimit): + Retrieve current limits before setting. + 2002-05-15 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/6518 diff --git a/libstdc++-v3/testsuite/testsuite_hooks.h b/libstdc++-v3/testsuite/testsuite_hooks.h index 08d93d3..eb87d51 100644 --- a/libstdc++-v3/testsuite/testsuite_hooks.h +++ b/libstdc++-v3/testsuite/testsuite_hooks.h @@ -81,25 +81,33 @@ void __set_testsuite_memlimit(float __size = MEMLIMIT_MB) { struct rlimit r; - r.rlim_cur = (rlim_t)(__size * 1048576); + rlim_t limit = (rlim_t)(__size * 1048576); // Heap size, seems to be common. #if _GLIBCPP_HAVE_MEMLIMIT_DATA + getrlimit(RLIMIT_DATA, &r); + r.rlim_cur = limit; setrlimit(RLIMIT_DATA, &r); #endif // Resident set size. #if _GLIBCPP_HAVE_MEMLIMIT_RSS + getrlimit(RLIMIT_RSS, &r); + r.rlim_cur = limit; setrlimit(RLIMIT_RSS, &r); #endif // Mapped memory (brk + mmap). #if _GLIBCPP_HAVE_MEMLIMIT_VMEM + getrlimit(RLIMIT_VMEM, &r); + r.rlim_cur = limit; setrlimit(RLIMIT_VMEM, &r); #endif // Virtual memory. #if _GLIBCPP_HAVE_MEMLIMIT_AS + getrlimit(RLIMIT_AS, &r); + r.rlim_cur = limit; setrlimit(RLIMIT_AS, &r); #endif } |