Re: [eigen] [patch] Aligned new/delete |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] [patch] Aligned new/delete
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Wed, 6 May 2009 15:40:37 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=NFd9SSexq1E/Ct1aAldY2kGwjajGh4AgQCIzxoKk+Wg=; b=MQLwE/pDRN4xvuY/as57Vzf/FVpsGxrDqwyPtsp6cXpIbTen+tXzHZsfL1dXIorauJ fDy3N8FBj8b7O76YhldMkBVNkG+Qg3L/d5JE9s70J1XRZGc/nQIj5aKtzNrr2nV049tj mKGNDC6no2Jvevh/EikcegqHhjlzgl6xupjWg=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=qBSueCnXKjL+pFPPqRq6VvmjLPiQNfL2RDibkXJf4hF8EiOwNGF6NM38oaUfZRKYXy wNdIAzwR6bnA/NdwASMcU9CLblTzjKQ0WYCABdaQaR97p0j9whKDXbyayYRSMaqLAsUf +3I7+k2UJ1bwqUKsW5Au7da4JoCxSJ23KHHgQ=
This needs review by someone more competent than me in these
matters... I just learnt the meaning of the throw() declaration.
One remark: the parameter nt is unused, so perhaps make it unnamed to
avoid warnings?
Benoit
2009/5/6 Hauke Heibel <hauke.heibel@xxxxxxxxxxxxxx>:
> Two things are covered in this patch.
>
> 1. Each operator new needs its corresponding operator delete. This was
> not the case for in-place new/delete.
> 2. Operators new were declared with throw() which is not correct since
> in the current standard implementation they may throw std::bad_alloc.
> The throw() declaration was moved from new to delete which must never
> throw.
> 3. Added no-throw new/delete. In order to allow user using no-throw
> new and delete I just added them. The difference is that instead of
> throwing an exception they return 0 in case of an allocation failure.
>
> For the in-place new and delete I piped the calls to the global
> in-place new and delete functions since actually no allocation is
> performed. It is the job of the user to take care that when using
> in-place new and delete the memory is properly aligned.
>
> I ran the unit tests and all besides the new matrix exponential passed
> - could not submit to the dashboard since the daily limit is reached.
>
> Regards,
> Hauke
>