mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-11-06 06:27:32 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
97
xpcom/tests/SizeTest03.cpp
Normal file
97
xpcom/tests/SizeTest03.cpp
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
// Test03.cpp
|
||||
|
||||
#include "nsIDOMNode.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsString.h"
|
||||
|
||||
NS_DEF_PTR(nsIDOMNode);
|
||||
|
||||
/*
|
||||
Windows:
|
||||
nsCOMPtr_optimized* 45
|
||||
raw_optimized 48
|
||||
nsCOMPtr_optimized 50
|
||||
nsCOMPtr 54
|
||||
nsCOMPtr* 59
|
||||
raw 62
|
||||
|
||||
Macintosh:
|
||||
nsCOMPtr_optimized 112 (1.0000)
|
||||
raw_optimized 124 bytes (1.1071) i.e., 10.71% bigger than nsCOMPtr_optimized
|
||||
nsCOMPtr 144 (1.2857)
|
||||
*/
|
||||
|
||||
void // nsresult
|
||||
Test03_raw( nsIDOMNode* aDOMNode, nsString* aResult )
|
||||
// m140, w62
|
||||
{
|
||||
// -- the following code is assumed, but is commented out so we compare only
|
||||
// the relevent generated code
|
||||
|
||||
// if ( !aDOMNode || !aResult )
|
||||
// return NS_ERROR_NULL_POINTER;
|
||||
|
||||
nsIDOMNode* parent = 0;
|
||||
nsresult status = aDOMNode->GetParentNode(&parent);
|
||||
|
||||
if ( NS_SUCCEEDED(status) )
|
||||
{
|
||||
parent->GetNodeName(*aResult);
|
||||
}
|
||||
|
||||
NS_IF_RELEASE(parent);
|
||||
|
||||
// return status;
|
||||
}
|
||||
|
||||
|
||||
void // nsresult
|
||||
Test03_raw_optimized( nsIDOMNode* aDOMNode, nsString* aResult )
|
||||
// m124, w48
|
||||
{
|
||||
// if ( !aDOMNode || !aResult )
|
||||
// return NS_ERROR_NULL_POINTER;
|
||||
|
||||
nsIDOMNode* parent;
|
||||
nsresult status = aDOMNode->GetParentNode(&parent);
|
||||
|
||||
if ( NS_SUCCEEDED(status) )
|
||||
{
|
||||
parent->GetNodeName(*aResult);
|
||||
NS_RELEASE(parent);
|
||||
}
|
||||
|
||||
// return status;
|
||||
}
|
||||
|
||||
|
||||
void // nsresult
|
||||
Test03_nsCOMPtr( nsIDOMNode* aDOMNode, nsString* aResult )
|
||||
// m144, w54/59
|
||||
{
|
||||
// if ( !aDOMNode || !aResult )
|
||||
// return NS_ERROR_NULL_POINTER;
|
||||
|
||||
nsCOMPtr<nsIDOMNode> parent;
|
||||
nsresult status = aDOMNode->GetParentNode( getter_AddRefs(parent) );
|
||||
if ( parent )
|
||||
parent->GetNodeName(*aResult);
|
||||
|
||||
// return status;
|
||||
}
|
||||
|
||||
void // nsresult
|
||||
Test03_nsCOMPtr_optimized( nsIDOMNode* aDOMNode, nsString* aResult )
|
||||
// m112, w50/45
|
||||
{
|
||||
// if ( !aDOMNode || !aResult )
|
||||
// return NS_ERROR_NULL_POINTER;
|
||||
|
||||
nsIDOMNode* temp;
|
||||
nsresult status = aDOMNode->GetParentNode(&temp);
|
||||
nsCOMPtr<nsIDOMNode> parent( dont_AddRef(temp) );
|
||||
if ( parent )
|
||||
parent->GetNodeName(*aResult);
|
||||
|
||||
// return status;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue