* cygtls.cc (_cygtls::remove): Revert previous patch.

*  cygtls.h (struct _local_storage): Move pathbufs back here.
	(class san/x86_64): Revert class.  Save and restore pathbufs counters
	only.
	(class san/i686): Revert saving and restoring pathbufs counters.
	(__try/x86_64): Add a san variable and call it's setup method.
	(__except/x86_64): Call san::leave to restore pathbufs counters.
	* gendef (_sigbe): Revert previous change.
	* thread.cc (verifyable_object_state): Remove gcc 4.7 workaround in
	forward declaration as well.
	* tls_pbuf.cc (tls_pbuf): Revert previous change.
	* tls_pbuf.h (class tmp_pathbuf): Accommodate reverting pathbufs to
	locals structure.
	* tlsoffsets.h: Regenerate.
	* tlsoffsets64.h: Regenerate.
This commit is contained in:
Corinna Vinschen
2014-08-25 14:53:49 +00:00
parent 3f3bd10104
commit 5578cc4b73
9 changed files with 206 additions and 178 deletions

View File

@ -14,13 +14,13 @@ class tmp_pathbuf
uint32_t w_buf_old;
public:
tmp_pathbuf () __attribute__ ((always_inline))
: c_buf_old (_my_tls.pathbufs.c_cnt),
w_buf_old (_my_tls.pathbufs.w_cnt)
: c_buf_old (_my_tls.locals.pathbufs.c_cnt),
w_buf_old (_my_tls.locals.pathbufs.w_cnt)
{}
~tmp_pathbuf () __attribute__ ((always_inline))
{
_my_tls.pathbufs.c_cnt = c_buf_old;
_my_tls.pathbufs.w_cnt = w_buf_old;
_my_tls.locals.pathbufs.c_cnt = c_buf_old;
_my_tls.locals.pathbufs.w_cnt = w_buf_old;
}
inline bool check_usage (uint32_t c_need, uint32_t w_need)