From 075a7bcc980b0ca0d2888d344b6afa8ab5b52d85 Mon Sep 17 00:00:00 2001
From: Richard Linden <none@none>
Date: Thu, 18 Jul 2013 15:09:45 -0700
Subject: SH-4297 WIP interesting: viewer-interesting starts loading cached
 scene late dependency cleanup - removed a lot of unecessary includes

---
 indra/llappearance/llavatarappearance.cpp | 1 +
 indra/llappearance/llwearable.cpp         | 1 +
 2 files changed, 2 insertions(+)

(limited to 'indra/llappearance')

diff --git a/indra/llappearance/llavatarappearance.cpp b/indra/llappearance/llavatarappearance.cpp
index 35d1a8b247..0e91cd3185 100644
--- a/indra/llappearance/llavatarappearance.cpp
+++ b/indra/llappearance/llavatarappearance.cpp
@@ -44,6 +44,7 @@
 #include "llstl.h"
 #include "lltexglobalcolor.h"
 #include "llwearabledata.h"
+#include "boost/bind.hpp"
 
 
 #if LL_MSVC
diff --git a/indra/llappearance/llwearable.cpp b/indra/llappearance/llwearable.cpp
index d86a460511..cb80313b0b 100644
--- a/indra/llappearance/llwearable.cpp
+++ b/indra/llappearance/llwearable.cpp
@@ -33,6 +33,7 @@
 #include "llvisualparam.h"
 #include "llavatarappearancedefines.h"
 #include "llwearable.h"
+#include "boost/bind.hpp"
 
 using namespace LLAvatarAppearanceDefines;
 
-- 
cgit v1.2.3


From a2e22732f195dc075a733c79f15156752f522a43 Mon Sep 17 00:00:00 2001
From: Richard Linden <none@none>
Date: Tue, 30 Jul 2013 19:13:45 -0700
Subject: Summer cleaning - removed a lot of llcommon dependencies to speed up
 build times consolidated most indra-specific constants in llcommon under
 indra_constants.h fixed issues with operations on mixed unit types (implicit
 and explicit) made LL_INFOS() style macros variadic in order to subsume other
 logging methods such as ll_infos added optional tag output to error recorders

---
 indra/llappearance/llavatarappearance.cpp       | 195 ++++++++++++------------
 indra/llappearance/llavatarjointmesh.cpp        |  25 ++-
 indra/llappearance/lldriverparam.h              |   1 +
 indra/llappearance/llpolymesh.cpp               |  19 +--
 indra/llappearance/llpolymesh.h                 |   3 +-
 indra/llappearance/llpolyskeletaldistortion.cpp |   2 +-
 indra/llappearance/llpolyskeletaldistortion.h   |   1 -
 indra/llappearance/lltexlayer.cpp               |   1 -
 indra/llappearance/llwearable.h                 |   1 -
 9 files changed, 117 insertions(+), 131 deletions(-)

(limited to 'indra/llappearance')

diff --git a/indra/llappearance/llavatarappearance.cpp b/indra/llappearance/llavatarappearance.cpp
index 0e91cd3185..8126d620ec 100644
--- a/indra/llappearance/llavatarappearance.cpp
+++ b/indra/llappearance/llavatarappearance.cpp
@@ -35,8 +35,7 @@
 #include "llavatarappearance.h"
 #include "llavatarappearancedefines.h"
 #include "llavatarjointmesh.h"
-#include "imageids.h"
-#include "lldeleteutils.h"
+#include "llstl.h"
 #include "lldir.h"
 #include "llpolymorph.h"
 #include "llpolymesh.h"
@@ -135,9 +134,9 @@ LLAvatarAppearance::LLAvatarXmlInfo::~LLAvatarXmlInfo()
 	std::for_each(mMeshInfoList.begin(), mMeshInfoList.end(), DeletePointer());
 	std::for_each(mSkeletalDistortionInfoList.begin(), mSkeletalDistortionInfoList.end(), DeletePointer());		
 	std::for_each(mAttachmentInfoList.begin(), mAttachmentInfoList.end(), DeletePointer());
-	deleteAndClear(mTexSkinColorInfo);
-	deleteAndClear(mTexHairColorInfo);
-	deleteAndClear(mTexEyeColorInfo);
+	delete_and_clear(mTexSkinColorInfo);
+	delete_and_clear(mTexHairColorInfo);
+	delete_and_clear(mTexEyeColorInfo);
 	std::for_each(mLayerInfoList.begin(), mLayerInfoList.end(), DeletePointer());		
 	std::for_each(mDriverInfoList.begin(), mDriverInfoList.end(), DeletePointer());
 	std::for_each(mMorphMaskInfoList.begin(), mMorphMaskInfoList.end(), DeletePointer());
@@ -222,7 +221,7 @@ void LLAvatarAppearance::initInstance()
 			mesh->setMeshID(mesh_index);
 			mesh->setPickName(mesh_dict->mPickName);
 			mesh->setIsTransparent(FALSE);
-			switch((int)mesh_index)
+			switch((S32)mesh_index)
 			{
 				case MESH_ID_HAIR:
 					mesh->setIsTransparent(TRUE);
@@ -258,7 +257,7 @@ void LLAvatarAppearance::initInstance()
 			 ++iter)
 		{
 			LLAvatarJointMesh* mesh = (*iter);
-			mBakedTextureDatas[(int)baked_texture_index].mJointMeshes.push_back(mesh);
+			mBakedTextureDatas[(S32)baked_texture_index].mJointMeshes.push_back(mesh);
 		}
 	}
 
@@ -269,13 +268,13 @@ void LLAvatarAppearance::initInstance()
 // virtual
 LLAvatarAppearance::~LLAvatarAppearance()
 {
-	deleteAndClear(mTexSkinColor);
-	deleteAndClear(mTexHairColor);
-	deleteAndClear(mTexEyeColor);
+	delete_and_clear(mTexSkinColor);
+	delete_and_clear(mTexHairColor);
+	delete_and_clear(mTexEyeColor);
 
 	for (U32 i = 0; i < mBakedTextureDatas.size(); i++)
 	{
-		deleteAndClear(mBakedTextureDatas[i].mTexLayerSet);
+		delete_and_clear(mBakedTextureDatas[i].mTexLayerSet);
 		mBakedTextureDatas[i].mJointMeshes.clear();
 
 		for (morph_list_t::iterator iter2 = mBakedTextureDatas[i].mMaskedMorphs.begin();
@@ -290,11 +289,11 @@ LLAvatarAppearance::~LLAvatarAppearance()
 	mJointMap.clear();
 
 	clearSkeleton();
-	deleteAndClearArray(mCollisionVolumes);
+	delete_and_clear_array(mCollisionVolumes);
 
-	deleteAndClear(mTexSkinColor);
-	deleteAndClear(mTexHairColor);
-	deleteAndClear(mTexEyeColor);
+	delete_and_clear(mTexSkinColor);
+	delete_and_clear(mTexHairColor);
+	delete_and_clear(mTexEyeColor);
 
 	std::for_each(mPolyMeshes.begin(), mPolyMeshes.end(), DeletePairedPointer());
 	mPolyMeshes.clear();
@@ -320,14 +319,14 @@ void LLAvatarAppearance::initClass()
 	BOOL success = sXMLTree.parseFile( xmlFile, FALSE );
 	if (!success)
 	{
-		llerrs << "Problem reading avatar configuration file:" << xmlFile << llendl;
+		llerrs << "Problem reading avatar configuration file:" << xmlFile << LL_ENDL;
 	}
 
 	// now sanity check xml file
 	LLXmlTreeNode* root = sXMLTree.getRoot();
 	if (!root) 
 	{
-		llerrs << "No root node found in avatar configuration file: " << xmlFile << llendl;
+		llerrs << "No root node found in avatar configuration file: " << xmlFile << LL_ENDL;
 		return;
 	}
 
@@ -336,14 +335,14 @@ void LLAvatarAppearance::initClass()
 	//-------------------------------------------------------------------------
 	if( !root->hasName( "linden_avatar" ) )
 	{
-		llerrs << "Invalid avatar file header: " << xmlFile << llendl;
+		llerrs << "Invalid avatar file header: " << xmlFile << LL_ENDL;
 	}
 	
 	std::string version;
 	static LLStdStringHandle version_string = LLXmlTree::addAttributeString("version");
 	if( !root->getFastAttributeString( version_string, version ) || (version != "1.0") )
 	{
-		llerrs << "Invalid avatar file version: " << version << " in file: " << xmlFile << llendl;
+		llerrs << "Invalid avatar file version: " << version << " in file: " << xmlFile << LL_ENDL;
 	}
 
 	S32 wearable_def_version = 1;
@@ -356,7 +355,7 @@ void LLAvatarAppearance::initClass()
 	LLXmlTreeNode* skeleton_node = root->getChildByName( "skeleton" );
 	if (!skeleton_node)
 	{
-		llerrs << "No skeleton in avatar configuration file: " << xmlFile << llendl;
+		llerrs << "No skeleton in avatar configuration file: " << xmlFile << LL_ENDL;
 		return;
 	}
 	
@@ -364,14 +363,14 @@ void LLAvatarAppearance::initClass()
 	static LLStdStringHandle file_name_string = LLXmlTree::addAttributeString("file_name");
 	if (!skeleton_node->getFastAttributeString(file_name_string, skeleton_file_name))
 	{
-		llerrs << "No file name in skeleton node in avatar config file: " << xmlFile << llendl;
+		llerrs << "No file name in skeleton node in avatar config file: " << xmlFile << LL_ENDL;
 	}
 	
 	std::string skeleton_path;
 	skeleton_path = gDirUtilp->getExpandedFilename(LL_PATH_CHARACTER,skeleton_file_name);
 	if (!parseSkeletonFile(skeleton_path))
 	{
-		llerrs << "Error parsing skeleton file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton file: " << skeleton_path << LL_ENDL;
 	}
 
 	// Process XML data
@@ -384,43 +383,43 @@ void LLAvatarAppearance::initClass()
 	sAvatarSkeletonInfo = new LLAvatarSkeletonInfo;
 	if (!sAvatarSkeletonInfo->parseXml(sSkeletonXMLTree.getRoot()))
 	{
-		llerrs << "Error parsing skeleton XML file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton XML file: " << skeleton_path << LL_ENDL;
 	}
 	// parse avatar_lad.xml
 	if (sAvatarXmlInfo)
 	{ //this can happen if a login attempt failed
-		deleteAndClear(sAvatarXmlInfo);
+		delete_and_clear(sAvatarXmlInfo);
 	}
 	sAvatarXmlInfo = new LLAvatarXmlInfo;
 	if (!sAvatarXmlInfo->parseXmlSkeletonNode(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlMeshNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlColorNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlLayerNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlDriverNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlMorphNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << llendl;
+		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 }
 
 void LLAvatarAppearance::cleanupClass()
 {
-	deleteAndClear(sAvatarXmlInfo);
+	delete_and_clear(sAvatarXmlInfo);
 	// *TODO: What about sAvatarSkeletonInfo ???
 	sSkeletonXMLTree.cleanup();
 	sXMLTree.cleanup();
@@ -527,7 +526,7 @@ BOOL LLAvatarAppearance::parseSkeletonFile(const std::string& filename)
 
 	if (!parsesuccess)
 	{
-		llerrs << "Can't parse skeleton file: " << filename << llendl;
+		llerrs << "Can't parse skeleton file: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
@@ -535,13 +534,13 @@ BOOL LLAvatarAppearance::parseSkeletonFile(const std::string& filename)
 	LLXmlTreeNode* root = sSkeletonXMLTree.getRoot();
 	if (!root) 
 	{
-		llerrs << "No root node found in avatar skeleton file: " << filename << llendl;
+		llerrs << "No root node found in avatar skeleton file: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
 	if( !root->hasName( "linden_skeleton" ) )
 	{
-		llerrs << "Invalid avatar skeleton file header: " << filename << llendl;
+		llerrs << "Invalid avatar skeleton file header: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
@@ -549,7 +548,7 @@ BOOL LLAvatarAppearance::parseSkeletonFile(const std::string& filename)
 	static LLStdStringHandle version_string = LLXmlTree::addAttributeString("version");
 	if( !root->getFastAttributeString( version_string, version ) || (version != "1.0") )
 	{
-		llerrs << "Invalid avatar skeleton file version: " << version << " in file: " << filename << llendl;
+		llerrs << "Invalid avatar skeleton file version: " << version << " in file: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
@@ -568,7 +567,7 @@ BOOL LLAvatarAppearance::setupBone(const LLAvatarBoneInfo* info, LLJoint* parent
 		joint = getCharacterJoint(joint_num);
 		if (!joint)
 		{
-			llwarns << "Too many bones" << llendl;
+			llwarns << "Too many bones" << LL_ENDL;
 			return FALSE;
 		}
 		joint->setName( info->mName );
@@ -577,7 +576,7 @@ BOOL LLAvatarAppearance::setupBone(const LLAvatarBoneInfo* info, LLJoint* parent
 	{
 		if (volume_num >= (S32)mNumCollisionVolumes)
 		{
-			llwarns << "Too many bones" << llendl;
+			llwarns << "Too many bones" << LL_ENDL;
 			return FALSE;
 		}
 		joint = (&mCollisionVolumes[volume_num]);
@@ -647,7 +646,7 @@ BOOL LLAvatarAppearance::buildSkeleton(const LLAvatarSkeletonInfo *info)
 	//-------------------------------------------------------------------------
 	if (!allocateCharacterJoints(info->mNumBones))
 	{
-		llerrs << "Can't allocate " << info->mNumBones << " joints" << llendl;
+		llerrs << "Can't allocate " << info->mNumBones << " joints" << LL_ENDL;
 		return FALSE;
 	}
 	
@@ -658,7 +657,7 @@ BOOL LLAvatarAppearance::buildSkeleton(const LLAvatarSkeletonInfo *info)
 	{
 		if (!allocateCollisionVolumes(info->mNumCollisionVolumes))
 		{
-			llerrs << "Can't allocate " << info->mNumCollisionVolumes << " collision volumes" << llendl;
+			llerrs << "Can't allocate " << info->mNumCollisionVolumes << " collision volumes" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -671,7 +670,7 @@ BOOL LLAvatarAppearance::buildSkeleton(const LLAvatarSkeletonInfo *info)
 		LLAvatarBoneInfo *info = *iter;
 		if (!setupBone(info, NULL, current_volume_num, current_joint_num))
 		{
-			llerrs << "Error parsing bone in skeleton file" << llendl;
+			llerrs << "Error parsing bone in skeleton file" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -731,17 +730,17 @@ void LLAvatarAppearance::buildCharacter()
 	stop_glerror();
 
 // 	gPrintMessagesThisFrame = TRUE;
-	lldebugs << "Avatar load took " << timer.getElapsedTimeF32() << " seconds." << llendl;
+	lldebugs << "Avatar load took " << timer.getElapsedTimeF32() << " seconds." << LL_ENDL;
 
 	if (!status)
 	{
 		if (isSelf())
 		{
-			llerrs << "Unable to load user's avatar" << llendl;
+			llerrs << "Unable to load user's avatar" << LL_ENDL;
 		}
 		else
 		{
-			llwarns << "Unable to load other's avatar" << llendl;
+			llwarns << "Unable to load other's avatar" << LL_ENDL;
 		}
 		return;
 	}
@@ -790,7 +789,7 @@ void LLAvatarAppearance::buildCharacter()
 		  mEyeLeftp &&
 		  mEyeRightp))
 	{
-		llerrs << "Failed to create avatar." << llendl;
+		llerrs << "Failed to create avatar." << LL_ENDL;
 		return;
 	}
 
@@ -811,21 +810,21 @@ BOOL LLAvatarAppearance::loadAvatar()
 	// avatar_skeleton.xml
 	if( !buildSkeleton(sAvatarSkeletonInfo) )
 	{
-		llwarns << "avatar file: buildSkeleton() failed" << llendl;
+		llwarns << "avatar file: buildSkeleton() failed" << LL_ENDL;
 		return FALSE;
 	}
 
 	// avatar_lad.xml : <skeleton>
 	if( !loadSkeletonNode() )
 	{
-		llwarns << "avatar file: loadNodeSkeleton() failed" << llendl;
+		llwarns << "avatar file: loadNodeSkeleton() failed" << LL_ENDL;
 		return FALSE;
 	}
 	
 	// avatar_lad.xml : <mesh>
 	if( !loadMeshNodes() )
 	{
-		llwarns << "avatar file: loadNodeMesh() failed" << llendl;
+		llwarns << "avatar file: loadNodeMesh() failed" << LL_ENDL;
 		return FALSE;
 	}
 	
@@ -835,13 +834,13 @@ BOOL LLAvatarAppearance::loadAvatar()
 		mTexSkinColor = new LLTexGlobalColor( this );
 		if( !mTexSkinColor->setInfo( sAvatarXmlInfo->mTexSkinColorInfo ) )
 		{
-			llwarns << "avatar file: mTexSkinColor->setInfo() failed" << llendl;
+			llwarns << "avatar file: mTexSkinColor->setInfo() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
 	else
 	{
-		llwarns << "<global_color> name=\"skin_color\" not found" << llendl;
+		llwarns << "<global_color> name=\"skin_color\" not found" << LL_ENDL;
 		return FALSE;
 	}
 	if( sAvatarXmlInfo->mTexHairColorInfo )
@@ -849,13 +848,13 @@ BOOL LLAvatarAppearance::loadAvatar()
 		mTexHairColor = new LLTexGlobalColor( this );
 		if( !mTexHairColor->setInfo( sAvatarXmlInfo->mTexHairColorInfo ) )
 		{
-			llwarns << "avatar file: mTexHairColor->setInfo() failed" << llendl;
+			llwarns << "avatar file: mTexHairColor->setInfo() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
 	else
 	{
-		llwarns << "<global_color> name=\"hair_color\" not found" << llendl;
+		llwarns << "<global_color> name=\"hair_color\" not found" << LL_ENDL;
 		return FALSE;
 	}
 	if( sAvatarXmlInfo->mTexEyeColorInfo )
@@ -863,26 +862,26 @@ BOOL LLAvatarAppearance::loadAvatar()
 		mTexEyeColor = new LLTexGlobalColor( this );
 		if( !mTexEyeColor->setInfo( sAvatarXmlInfo->mTexEyeColorInfo ) )
 		{
-			llwarns << "avatar file: mTexEyeColor->setInfo() failed" << llendl;
+			llwarns << "avatar file: mTexEyeColor->setInfo() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
 	else
 	{
-		llwarns << "<global_color> name=\"eye_color\" not found" << llendl;
+		llwarns << "<global_color> name=\"eye_color\" not found" << LL_ENDL;
 		return FALSE;
 	}
 	
 	// avatar_lad.xml : <layer_set>
 	if (sAvatarXmlInfo->mLayerInfoList.empty())
 	{
-		llwarns << "avatar file: missing <layer_set> node" << llendl;
+		llwarns << "avatar file: missing <layer_set> node" << LL_ENDL;
 		return FALSE;
 	}
 
 	if (sAvatarXmlInfo->mMorphMaskInfoList.empty())
 	{
-		llwarns << "avatar file: missing <morph_masks> node" << llendl;
+		llwarns << "avatar file: missing <morph_masks> node" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -924,14 +923,14 @@ BOOL LLAvatarAppearance::loadAvatar()
 			LLVisualParam*(LLAvatarAppearance::*avatar_function)(S32)const = &LLAvatarAppearance::getVisualParam; 
 			if( !driver_param->linkDrivenParams(boost::bind(avatar_function,(LLAvatarAppearance*)this,_1 ), false))
 			{
-				llwarns << "could not link driven params for avatar " << getID().asString() << " param id: " << driver_param->getID() << llendl;
+				llwarns << "could not link driven params for avatar " << getID().asString() << " param id: " << driver_param->getID() << LL_ENDL;
 				continue;
 			}
 		}
 		else
 		{
 			delete driver_param;
-			llwarns << "avatar file: driver_param->parseData() failed" << llendl;
+			llwarns << "avatar file: driver_param->parseData() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1051,17 +1050,17 @@ BOOL LLAvatarAppearance::loadMeshNodes()
 			}
 			else
 			{
-				llwarns << "Avatar file: <mesh> has invalid lod setting " << lod << llendl;
+				llwarns << "Avatar file: <mesh> has invalid lod setting " << lod << LL_ENDL;
 				return FALSE;
 			}
 		}
 		else 
 		{
-			llwarns << "Ignoring unrecognized mesh type: " << type << llendl;
+			llwarns << "Ignoring unrecognized mesh type: " << type << LL_ENDL;
 			return FALSE;
 		}
 
-		//	llinfos << "Parsing mesh data for " << type << "..." << llendl;
+		//	llinfos << "Parsing mesh data for " << type << "..." << LL_ENDL;
 
 		// If this isn't set to white (1.0), avatars will *ALWAYS* be darker than their surroundings.
 		// Do not touch!!!
@@ -1091,7 +1090,7 @@ BOOL LLAvatarAppearance::loadMeshNodes()
 
 		if( !poly_mesh )
 		{
-			llwarns << "Failed to load mesh of type " << type << llendl;
+			llwarns << "Failed to load mesh of type " << type << LL_ENDL;
 			return FALSE;
 		}
 
@@ -1151,7 +1150,7 @@ BOOL LLAvatarAppearance::loadLayersets()
 			{
 				stop_glerror();
 				delete layer_set;
-				llwarns << "avatar file: layer_set->setInfo() failed" << llendl;
+				llwarns << "avatar file: layer_set->setInfo() failed" << LL_ENDL;
 				return FALSE;
 			}
 
@@ -1174,7 +1173,7 @@ BOOL LLAvatarAppearance::loadLayersets()
 			// if no baked texture was found, warn and cleanup
 			if (baked_index == BAKED_NUM_INDICES)
 			{
-				llwarns << "<layer_set> has invalid body_region attribute" << llendl;
+				llwarns << "<layer_set> has invalid body_region attribute" << LL_ENDL;
 				delete layer_set;
 				return FALSE;
 			}
@@ -1192,7 +1191,7 @@ BOOL LLAvatarAppearance::loadLayersets()
 				}
 				else
 				{
-					llwarns << "Could not find layer named " << morph->mLayer << " to set morph flag" << llendl;
+					llwarns << "Could not find layer named " << morph->mLayer << " to set morph flag" << LL_ENDL;
 					success = FALSE;
 				}
 			}
@@ -1288,7 +1287,7 @@ BOOL LLAvatarAppearance::isValid() const
 	// This should only be called on ourself.
 	if (!isSelf())
 	{
-		llerrs << "Called LLAvatarAppearance::isValid() on when isSelf() == false" << llendl;
+		llerrs << "Called LLAvatarAppearance::isValid() on when isSelf() == false" << LL_ENDL;
 	}
 	return TRUE;
 }
@@ -1453,7 +1452,7 @@ LLTexLayerSet* LLAvatarAppearance::getAvatarLayerSet(EBakedTextureIndex baked_in
 //-----------------------------------------------------------------------------
 BOOL LLAvatarAppearance::allocateCollisionVolumes( U32 num )
 {
-	deleteAndClearArray(mCollisionVolumes);
+	delete_and_clear_array(mCollisionVolumes);
 	mNumCollisionVolumes = 0;
 
 	mCollisionVolumes = new LLAvatarJointCollisionVolume[num];
@@ -1477,7 +1476,7 @@ BOOL LLAvatarBoneInfo::parseXml(LLXmlTreeNode* node)
 		static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name");
 		if (!node->getFastAttributeString(name_string, mName))
 		{
-			llwarns << "Bone without name" << llendl;
+			llwarns << "Bone without name" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1492,28 +1491,28 @@ BOOL LLAvatarBoneInfo::parseXml(LLXmlTreeNode* node)
 	}
 	else
 	{
-		llwarns << "Invalid node " << node->getName() << llendl;
+		llwarns << "Invalid node " << node->getName() << LL_ENDL;
 		return FALSE;
 	}
 
 	static LLStdStringHandle pos_string = LLXmlTree::addAttributeString("pos");
 	if (!node->getFastAttributeVector3(pos_string, mPos))
 	{
-		llwarns << "Bone without position" << llendl;
+		llwarns << "Bone without position" << LL_ENDL;
 		return FALSE;
 	}
 
 	static LLStdStringHandle rot_string = LLXmlTree::addAttributeString("rot");
 	if (!node->getFastAttributeVector3(rot_string, mRot))
 	{
-		llwarns << "Bone without rotation" << llendl;
+		llwarns << "Bone without rotation" << LL_ENDL;
 		return FALSE;
 	}
 	
 	static LLStdStringHandle scale_string = LLXmlTree::addAttributeString("scale");
 	if (!node->getFastAttributeVector3(scale_string, mScale))
 	{
-		llwarns << "Bone without scale" << llendl;
+		llwarns << "Bone without scale" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -1522,7 +1521,7 @@ BOOL LLAvatarBoneInfo::parseXml(LLXmlTreeNode* node)
 		static LLStdStringHandle pivot_string = LLXmlTree::addAttributeString("pivot");
 		if (!node->getFastAttributeVector3(pivot_string, mPivot))
 		{
-			llwarns << "Bone without pivot" << llendl;
+			llwarns << "Bone without pivot" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1550,7 +1549,7 @@ BOOL LLAvatarSkeletonInfo::parseXml(LLXmlTreeNode* node)
 	static LLStdStringHandle num_bones_string = LLXmlTree::addAttributeString("num_bones");
 	if (!node->getFastAttributeS32(num_bones_string, mNumBones))
 	{
-		llwarns << "Couldn't find number of bones." << llendl;
+		llwarns << "Couldn't find number of bones." << LL_ENDL;
 		return FALSE;
 	}
 
@@ -1564,7 +1563,7 @@ BOOL LLAvatarSkeletonInfo::parseXml(LLXmlTreeNode* node)
 		if (!info->parseXml(child))
 		{
 			delete info;
-			llwarns << "Error parsing bone in skeleton file" << llendl;
+			llwarns << "Error parsing bone in skeleton file" << LL_ENDL;
 			return FALSE;
 		}
 		mBoneInfoList.push_back(info);
@@ -1581,7 +1580,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 	LLXmlTreeNode* node = root->getChildByName( "skeleton" );
 	if( !node )
 	{
-		llwarns << "avatar file: missing <skeleton>" << llendl;
+		llwarns << "avatar file: missing <skeleton>" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -1596,11 +1595,11 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		{
 			if (child->getChildByName("param_morph"))
 			{
-				llwarns << "Can't specify morph param in skeleton definition." << llendl;
+				llwarns << "Can't specify morph param in skeleton definition." << LL_ENDL;
 			}
 			else
 			{
-				llwarns << "Unknown param type." << llendl;
+				llwarns << "Unknown param type." << LL_ENDL;
 			}
 			continue;
 		}
@@ -1625,7 +1624,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name");
 		if (!child->getFastAttributeString(name_string, info->mName))
 		{
-			llwarns << "No name supplied for attachment point." << llendl;
+			llwarns << "No name supplied for attachment point." << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1633,7 +1632,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		static LLStdStringHandle joint_string = LLXmlTree::addAttributeString("joint");
 		if (!child->getFastAttributeString(joint_string, info->mJointName))
 		{
-			llwarns << "No bone declared in attachment point " << info->mName << llendl;
+			llwarns << "No bone declared in attachment point " << info->mName << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1659,7 +1658,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		static LLStdStringHandle id_string = LLXmlTree::addAttributeString("id");
 		if (!child->getFastAttributeS32(id_string, info->mAttachmentID))
 		{
-			llwarns << "No id supplied for attachment point " << info->mName << llendl;
+			llwarns << "No id supplied for attachment point " << info->mName << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1694,7 +1693,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 		static LLStdStringHandle type_string = LLXmlTree::addAttributeString("type");
 		if( !node->getFastAttributeString( type_string, info->mType ) )
 		{
-			llwarns << "Avatar file: <mesh> is missing type attribute.  Ignoring element. " << llendl;
+			llwarns << "Avatar file: <mesh> is missing type attribute.  Ignoring element. " << LL_ENDL;
 			delete info;
 			return FALSE;  // Ignore this element
 		}
@@ -1702,7 +1701,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 		static LLStdStringHandle lod_string = LLXmlTree::addAttributeString("lod");
 		if (!node->getFastAttributeS32( lod_string, info->mLOD ))
 		{
-			llwarns << "Avatar file: <mesh> is missing lod attribute.  Ignoring element. " << llendl;
+			llwarns << "Avatar file: <mesh> is missing lod attribute.  Ignoring element. " << LL_ENDL;
 			delete info;
 			return FALSE;  // Ignore this element
 		}
@@ -1710,7 +1709,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 		static LLStdStringHandle file_name_string = LLXmlTree::addAttributeString("file_name");
 		if( !node->getFastAttributeString( file_name_string, info->mMeshFileName ) )
 		{
-			llwarns << "Avatar file: <mesh> is missing file_name attribute.  Ignoring: " << info->mType << llendl;
+			llwarns << "Avatar file: <mesh> is missing file_name attribute.  Ignoring: " << info->mType << LL_ENDL;
 			delete info;
 			return FALSE;  // Ignore this element
 		}
@@ -1741,11 +1740,11 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 			{
 				if (child->getChildByName("param_skeleton"))
 				{
-					llwarns << "Can't specify skeleton param in a mesh definition." << llendl;
+					llwarns << "Can't specify skeleton param in a mesh definition." << LL_ENDL;
 				}
 				else
 				{
-					llwarns << "Unknown param type." << llendl;
+					llwarns << "Unknown param type." << LL_ENDL;
 				}
 				continue;
 			}
@@ -1786,14 +1785,14 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlColorNodes(LLXmlTreeNode* root
 			{
 				if (mTexSkinColorInfo)
 				{
-					llwarns << "avatar file: multiple instances of skin_color" << llendl;
+					llwarns << "avatar file: multiple instances of skin_color" << LL_ENDL;
 					return FALSE;
 				}
 				mTexSkinColorInfo = new LLTexGlobalColorInfo;
 				if( !mTexSkinColorInfo->parseXml( color_node ) )
 				{
-					deleteAndClear(mTexSkinColorInfo);
-					llwarns << "avatar file: mTexSkinColor->parseXml() failed" << llendl;
+					delete_and_clear(mTexSkinColorInfo);
+					llwarns << "avatar file: mTexSkinColor->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1801,14 +1800,14 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlColorNodes(LLXmlTreeNode* root
 			{
 				if (mTexHairColorInfo)
 				{
-					llwarns << "avatar file: multiple instances of hair_color" << llendl;
+					llwarns << "avatar file: multiple instances of hair_color" << LL_ENDL;
 					return FALSE;
 				}
 				mTexHairColorInfo = new LLTexGlobalColorInfo;
 				if( !mTexHairColorInfo->parseXml( color_node ) )
 				{
-					deleteAndClear(mTexHairColorInfo);
-					llwarns << "avatar file: mTexHairColor->parseXml() failed" << llendl;
+					delete_and_clear(mTexHairColorInfo);
+					llwarns << "avatar file: mTexHairColor->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1816,13 +1815,13 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlColorNodes(LLXmlTreeNode* root
 			{
 				if (mTexEyeColorInfo)
 				{
-					llwarns << "avatar file: multiple instances of eye_color" << llendl;
+					llwarns << "avatar file: multiple instances of eye_color" << LL_ENDL;
 					return FALSE;
 				}
 				mTexEyeColorInfo = new LLTexGlobalColorInfo;
 				if( !mTexEyeColorInfo->parseXml( color_node ) )
 				{
-					llwarns << "avatar file: mTexEyeColor->parseXml() failed" << llendl;
+					llwarns << "avatar file: mTexEyeColor->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1848,7 +1847,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlLayerNodes(LLXmlTreeNode* root
 		else
 		{
 			delete layer_info;
-			llwarns << "avatar file: layer_set->parseXml() failed" << llendl;
+			llwarns << "avatar file: layer_set->parseXml() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1877,7 +1876,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlDriverNodes(LLXmlTreeNode* roo
 				else
 				{
 					delete driver_info;
-					llwarns << "avatar file: driver_param->parseXml() failed" << llendl;
+					llwarns << "avatar file: driver_param->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1906,7 +1905,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMorphNodes(LLXmlTreeNode* root
 		static LLStdStringHandle name_string = LLXmlTree::addAttributeString("morph_name");
 		if (!grand_child->getFastAttributeString(name_string, info->mName))
 		{
-			llwarns << "No name supplied for morph mask." << llendl;
+			llwarns << "No name supplied for morph mask." << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1914,7 +1913,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMorphNodes(LLXmlTreeNode* root
 		static LLStdStringHandle region_string = LLXmlTree::addAttributeString("body_region");
 		if (!grand_child->getFastAttributeString(region_string, info->mRegion))
 		{
-			llwarns << "No region supplied for morph mask." << llendl;
+			llwarns << "No region supplied for morph mask." << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1922,7 +1921,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMorphNodes(LLXmlTreeNode* root
 		static LLStdStringHandle layer_string = LLXmlTree::addAttributeString("layer");
 		if (!grand_child->getFastAttributeString(layer_string, info->mLayer))
 		{
-			llwarns << "No layer supplied for morph mask." << llendl;
+			llwarns << "No layer supplied for morph mask." << LL_ENDL;
 			delete info;
 			continue;
 		}
diff --git a/indra/llappearance/llavatarjointmesh.cpp b/indra/llappearance/llavatarjointmesh.cpp
index 753805b314..e50ef8d485 100644
--- a/indra/llappearance/llavatarjointmesh.cpp
+++ b/indra/llappearance/llavatarjointmesh.cpp
@@ -28,7 +28,6 @@
 // Header Files
 //-----------------------------------------------------------------------------
 #include "linden_common.h"
-#include "imageids.h"
 #include "llfasttimer.h"
 #include "llrender.h"
 
@@ -317,7 +316,7 @@ void LLAvatarJointMesh::setMesh( LLPolyMesh *mesh )
 		setupJoint((LLAvatarJoint*)getRoot());
 	}
 
-//	llinfos << "joint render entries: " << mMesh->mJointRenderData.count() << llendl;
+	LL_DEBUGS() << "joint render entries: " << mMesh->mJointRenderData.size() << LL_ENDL;
 }
 
 //-----------------------------------------------------------------------------
@@ -325,10 +324,11 @@ void LLAvatarJointMesh::setMesh( LLPolyMesh *mesh )
 //-----------------------------------------------------------------------------
 void LLAvatarJointMesh::setupJoint(LLAvatarJoint* current_joint)
 {
-//	llinfos << "Mesh: " << getName() << llendl;
+	LL_DEBUGS() << "Mesh: " << getName() << LL_ENDL;
 
-//	S32 joint_count = 0;
+	S32 joint_count = 0;
 	U32 sj;
+
 	for (sj=0; sj<mNumSkinJoints; sj++)
 	{
 		LLSkinJoint &js = mSkinJoints[sj];
@@ -341,23 +341,20 @@ void LLAvatarJointMesh::setupJoint(LLAvatarJoint* current_joint)
 		// we've found a skinjoint for this joint..
 
 		// is the last joint in the array our parent?
-		if(mMesh->mJointRenderData.count() && mMesh->mJointRenderData[mMesh->mJointRenderData.count() - 1]->mWorldMatrix == &current_joint->getParent()->getWorldMatrix())
+		if(mMesh->mJointRenderData.size() && mMesh->mJointRenderData[mMesh->mJointRenderData.size() - 1]->mWorldMatrix == &current_joint->getParent()->getWorldMatrix())
 		{
 			// ...then just add ourselves
 			LLAvatarJoint* jointp = js.mJoint;
-			mMesh->mJointRenderData.put(new LLJointRenderData(&jointp->getWorldMatrix(), &js));
-//			llinfos << "joint " << joint_count << js.mJoint->getName() << llendl;
-//			joint_count++;
+			mMesh->mJointRenderData.push_back(new LLJointRenderData(&jointp->getWorldMatrix(), &js));
+			LL_DEBUGS() << "joint " << joint_count++ << js.mJoint->getName() << LL_ENDL;
 		}
 		// otherwise add our parent and ourselves
 		else
 		{
-			mMesh->mJointRenderData.put(new LLJointRenderData(&current_joint->getParent()->getWorldMatrix(), NULL));
-//			llinfos << "joint " << joint_count << current_joint->getParent()->getName() << llendl;
-//			joint_count++;
-			mMesh->mJointRenderData.put(new LLJointRenderData(&current_joint->getWorldMatrix(), &js));
-//			llinfos << "joint " << joint_count << current_joint->getName() << llendl;
-//			joint_count++;
+			mMesh->mJointRenderData.push_back(new LLJointRenderData(&current_joint->getParent()->getWorldMatrix(), NULL));
+			LL_DEBUGS() << "joint " << joint_count++ << current_joint->getParent()->getName() << LL_ENDL;
+			mMesh->mJointRenderData.push_back(new LLJointRenderData(&current_joint->getWorldMatrix(), &js));
+			LL_DEBUGS() << "joint " << joint_count++ << current_joint->getName() << LL_ENDL;
 		}
 	}
 
diff --git a/indra/llappearance/lldriverparam.h b/indra/llappearance/lldriverparam.h
index 040c9cf5be..2420db76e7 100644
--- a/indra/llappearance/lldriverparam.h
+++ b/indra/llappearance/lldriverparam.h
@@ -29,6 +29,7 @@
 
 #include "llviewervisualparam.h"
 #include "llwearabletype.h"
+#include <deque>
 
 class LLAvatarAppearance;
 class LLDriverParam;
diff --git a/indra/llappearance/llpolymesh.cpp b/indra/llappearance/llpolymesh.cpp
index a01457246e..1e87dae485 100644
--- a/indra/llappearance/llpolymesh.cpp
+++ b/indra/llappearance/llpolymesh.cpp
@@ -161,8 +161,8 @@ void LLPolyMeshSharedData::freeMeshData()
 //      mVertFaceMap.deleteAllData();
 }
 
-// compate_int is used by the qsort function to sort the index array
-int compare_int(const void *a, const void *b);
+// compare_int is used by the qsort function to sort the index array
+S32 compare_int(const void *a, const void *b);
 
 //-----------------------------------------------------------------------------
 // genIndices()
@@ -547,10 +547,10 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
 //                      S32 j;
 //                      for(j = 0; j < 3; j++)
 //                      {
-//                              LLDynamicArray<S32> *face_list = mVertFaceMap.getIfThere(face[j]);
+//                              std::vector<S32> *face_list = mVertFaceMap.getIfThere(face[j]);
 //                              if (!face_list)
 //                              {
-//                                      face_list = new LLDynamicArray<S32>;
+//                                      face_list = new std::vector<S32>;
 //                                      mVertFaceMap.addData(face[j], face_list);
 //                              }
 //                              face_list->put(i);
@@ -808,15 +808,8 @@ LLPolyMesh::LLPolyMesh(LLPolyMeshSharedData *shared_data, LLPolyMesh *reference_
 //-----------------------------------------------------------------------------
 LLPolyMesh::~LLPolyMesh()
 {
-        S32 i;
-        for (i = 0; i < mJointRenderData.count(); i++)
-        {
-                delete mJointRenderData[i];
-                mJointRenderData[i] = NULL;
-        }
-
-		ll_aligned_free_16(mVertexData);
-
+	delete_and_clear(mJointRenderData);
+	ll_aligned_free_16(mVertexData);
 }
 
 
diff --git a/indra/llappearance/llpolymesh.h b/indra/llappearance/llpolymesh.h
index ef1dfb1adb..83659d9514 100644
--- a/indra/llappearance/llpolymesh.h
+++ b/indra/llappearance/llpolymesh.h
@@ -36,7 +36,6 @@
 #include "llquaternion.h"
 #include "llpolymorph.h"
 #include "lljoint.h"
-//#include "lldarray.h"
 
 class LLSkinJoint;
 class LLAvatarAppearance;
@@ -322,7 +321,7 @@ public:
 	void setAvatar(LLAvatarAppearance* avatarp) { mAvatarp = avatarp; }
 	LLAvatarAppearance* getAvatar() { return mAvatarp; }
 
-	LLDynamicArray<LLJointRenderData*>	mJointRenderData;
+	std::vector<LLJointRenderData*>	mJointRenderData;
 
 	U32				mFaceVertexOffset;
 	U32				mFaceVertexCount;
diff --git a/indra/llappearance/llpolyskeletaldistortion.cpp b/indra/llappearance/llpolyskeletaldistortion.cpp
index a98a11b357..8f1f413e02 100644
--- a/indra/llappearance/llpolyskeletaldistortion.cpp
+++ b/indra/llappearance/llpolyskeletaldistortion.cpp
@@ -28,7 +28,7 @@
 // Header Files
 //-----------------------------------------------------------------------------
 #include "llpreprocessor.h"
-#include "llerrorlegacy.h"
+#include "llerror.h"
 #include "llavatarappearance.h"
 #include "llavatarjoint.h"
 #include "llpolymorph.h"
diff --git a/indra/llappearance/llpolyskeletaldistortion.h b/indra/llappearance/llpolyskeletaldistortion.h
index 774bc7dfa2..24c9e9ae48 100644
--- a/indra/llappearance/llpolyskeletaldistortion.h
+++ b/indra/llappearance/llpolyskeletaldistortion.h
@@ -39,7 +39,6 @@
 //#include "llpolymorph.h"
 #include "lljoint.h"
 #include "llviewervisualparam.h"
-//#include "lldarray.h"
 
 //class LLSkinJoint;
 class LLAvatarAppearance;
diff --git a/indra/llappearance/lltexlayer.cpp b/indra/llappearance/lltexlayer.cpp
index f65829febe..6c584c239c 100644
--- a/indra/llappearance/lltexlayer.cpp
+++ b/indra/llappearance/lltexlayer.cpp
@@ -30,7 +30,6 @@
 
 #include "llavatarappearance.h"
 #include "llcrc.h"
-#include "imageids.h"
 #include "llimagej2c.h"
 #include "llimagetga.h"
 #include "lldir.h"
diff --git a/indra/llappearance/llwearable.h b/indra/llappearance/llwearable.h
index 6e4d2b2242..132c153bcd 100644
--- a/indra/llappearance/llwearable.h
+++ b/indra/llappearance/llwearable.h
@@ -28,7 +28,6 @@
 #define LL_LLWEARABLE_H
 
 #include "llavatarappearancedefines.h"
-#include "llextendedstatus.h"
 #include "llpermissions.h"
 #include "llsaleinfo.h"
 #include "llwearabletype.h"
-- 
cgit v1.2.3


From e340009fc59d59e59b2e8d903a884acb76b178eb Mon Sep 17 00:00:00 2001
From: Richard Linden <none@none>
Date: Fri, 9 Aug 2013 17:11:19 -0700
Subject: second phase summer cleaning replace llinfos, lldebugs, etc with new
 LL_INFOS(), LL_DEBUGS(), etc.

---
 indra/llappearance/llavatarappearance.cpp       | 156 ++++++++++++------------
 indra/llappearance/llavatarjoint.cpp            |   2 +-
 indra/llappearance/llavatarjointmesh.cpp        |   4 +-
 indra/llappearance/lldriverparam.cpp            |   6 +-
 indra/llappearance/lllocaltextureobject.cpp     |   2 +-
 indra/llappearance/llpolymesh.cpp               |  72 +++++------
 indra/llappearance/llpolymorph.cpp              |  22 ++--
 indra/llappearance/llpolyskeletaldistortion.cpp |  16 +--
 indra/llappearance/lltexglobalcolor.cpp         |   2 +-
 indra/llappearance/lltexlayer.cpp               |  32 ++---
 indra/llappearance/lltexlayerparams.cpp         |  16 +--
 indra/llappearance/llwearable.cpp               |  80 ++++++------
 indra/llappearance/llwearabledata.cpp           |   8 +-
 13 files changed, 209 insertions(+), 209 deletions(-)

(limited to 'indra/llappearance')

diff --git a/indra/llappearance/llavatarappearance.cpp b/indra/llappearance/llavatarappearance.cpp
index 8126d620ec..104594c554 100644
--- a/indra/llappearance/llavatarappearance.cpp
+++ b/indra/llappearance/llavatarappearance.cpp
@@ -319,14 +319,14 @@ void LLAvatarAppearance::initClass()
 	BOOL success = sXMLTree.parseFile( xmlFile, FALSE );
 	if (!success)
 	{
-		llerrs << "Problem reading avatar configuration file:" << xmlFile << LL_ENDL;
+		LL_ERRS() << "Problem reading avatar configuration file:" << xmlFile << LL_ENDL;
 	}
 
 	// now sanity check xml file
 	LLXmlTreeNode* root = sXMLTree.getRoot();
 	if (!root) 
 	{
-		llerrs << "No root node found in avatar configuration file: " << xmlFile << LL_ENDL;
+		LL_ERRS() << "No root node found in avatar configuration file: " << xmlFile << LL_ENDL;
 		return;
 	}
 
@@ -335,14 +335,14 @@ void LLAvatarAppearance::initClass()
 	//-------------------------------------------------------------------------
 	if( !root->hasName( "linden_avatar" ) )
 	{
-		llerrs << "Invalid avatar file header: " << xmlFile << LL_ENDL;
+		LL_ERRS() << "Invalid avatar file header: " << xmlFile << LL_ENDL;
 	}
 	
 	std::string version;
 	static LLStdStringHandle version_string = LLXmlTree::addAttributeString("version");
 	if( !root->getFastAttributeString( version_string, version ) || (version != "1.0") )
 	{
-		llerrs << "Invalid avatar file version: " << version << " in file: " << xmlFile << LL_ENDL;
+		LL_ERRS() << "Invalid avatar file version: " << version << " in file: " << xmlFile << LL_ENDL;
 	}
 
 	S32 wearable_def_version = 1;
@@ -355,7 +355,7 @@ void LLAvatarAppearance::initClass()
 	LLXmlTreeNode* skeleton_node = root->getChildByName( "skeleton" );
 	if (!skeleton_node)
 	{
-		llerrs << "No skeleton in avatar configuration file: " << xmlFile << LL_ENDL;
+		LL_ERRS() << "No skeleton in avatar configuration file: " << xmlFile << LL_ENDL;
 		return;
 	}
 	
@@ -363,14 +363,14 @@ void LLAvatarAppearance::initClass()
 	static LLStdStringHandle file_name_string = LLXmlTree::addAttributeString("file_name");
 	if (!skeleton_node->getFastAttributeString(file_name_string, skeleton_file_name))
 	{
-		llerrs << "No file name in skeleton node in avatar config file: " << xmlFile << LL_ENDL;
+		LL_ERRS() << "No file name in skeleton node in avatar config file: " << xmlFile << LL_ENDL;
 	}
 	
 	std::string skeleton_path;
 	skeleton_path = gDirUtilp->getExpandedFilename(LL_PATH_CHARACTER,skeleton_file_name);
 	if (!parseSkeletonFile(skeleton_path))
 	{
-		llerrs << "Error parsing skeleton file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton file: " << skeleton_path << LL_ENDL;
 	}
 
 	// Process XML data
@@ -383,7 +383,7 @@ void LLAvatarAppearance::initClass()
 	sAvatarSkeletonInfo = new LLAvatarSkeletonInfo;
 	if (!sAvatarSkeletonInfo->parseXml(sSkeletonXMLTree.getRoot()))
 	{
-		llerrs << "Error parsing skeleton XML file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton XML file: " << skeleton_path << LL_ENDL;
 	}
 	// parse avatar_lad.xml
 	if (sAvatarXmlInfo)
@@ -393,27 +393,27 @@ void LLAvatarAppearance::initClass()
 	sAvatarXmlInfo = new LLAvatarXmlInfo;
 	if (!sAvatarXmlInfo->parseXmlSkeletonNode(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlMeshNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlColorNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlLayerNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlDriverNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 	if (!sAvatarXmlInfo->parseXmlMorphNodes(root))
 	{
-		llerrs << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
+		LL_ERRS() << "Error parsing skeleton node in avatar XML file: " << skeleton_path << LL_ENDL;
 	}
 }
 
@@ -526,7 +526,7 @@ BOOL LLAvatarAppearance::parseSkeletonFile(const std::string& filename)
 
 	if (!parsesuccess)
 	{
-		llerrs << "Can't parse skeleton file: " << filename << LL_ENDL;
+		LL_ERRS() << "Can't parse skeleton file: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
@@ -534,13 +534,13 @@ BOOL LLAvatarAppearance::parseSkeletonFile(const std::string& filename)
 	LLXmlTreeNode* root = sSkeletonXMLTree.getRoot();
 	if (!root) 
 	{
-		llerrs << "No root node found in avatar skeleton file: " << filename << LL_ENDL;
+		LL_ERRS() << "No root node found in avatar skeleton file: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
 	if( !root->hasName( "linden_skeleton" ) )
 	{
-		llerrs << "Invalid avatar skeleton file header: " << filename << LL_ENDL;
+		LL_ERRS() << "Invalid avatar skeleton file header: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
@@ -548,7 +548,7 @@ BOOL LLAvatarAppearance::parseSkeletonFile(const std::string& filename)
 	static LLStdStringHandle version_string = LLXmlTree::addAttributeString("version");
 	if( !root->getFastAttributeString( version_string, version ) || (version != "1.0") )
 	{
-		llerrs << "Invalid avatar skeleton file version: " << version << " in file: " << filename << LL_ENDL;
+		LL_ERRS() << "Invalid avatar skeleton file version: " << version << " in file: " << filename << LL_ENDL;
 		return FALSE;
 	}
 
@@ -567,7 +567,7 @@ BOOL LLAvatarAppearance::setupBone(const LLAvatarBoneInfo* info, LLJoint* parent
 		joint = getCharacterJoint(joint_num);
 		if (!joint)
 		{
-			llwarns << "Too many bones" << LL_ENDL;
+			LL_WARNS() << "Too many bones" << LL_ENDL;
 			return FALSE;
 		}
 		joint->setName( info->mName );
@@ -576,7 +576,7 @@ BOOL LLAvatarAppearance::setupBone(const LLAvatarBoneInfo* info, LLJoint* parent
 	{
 		if (volume_num >= (S32)mNumCollisionVolumes)
 		{
-			llwarns << "Too many bones" << LL_ENDL;
+			LL_WARNS() << "Too many bones" << LL_ENDL;
 			return FALSE;
 		}
 		joint = (&mCollisionVolumes[volume_num]);
@@ -646,7 +646,7 @@ BOOL LLAvatarAppearance::buildSkeleton(const LLAvatarSkeletonInfo *info)
 	//-------------------------------------------------------------------------
 	if (!allocateCharacterJoints(info->mNumBones))
 	{
-		llerrs << "Can't allocate " << info->mNumBones << " joints" << LL_ENDL;
+		LL_ERRS() << "Can't allocate " << info->mNumBones << " joints" << LL_ENDL;
 		return FALSE;
 	}
 	
@@ -657,7 +657,7 @@ BOOL LLAvatarAppearance::buildSkeleton(const LLAvatarSkeletonInfo *info)
 	{
 		if (!allocateCollisionVolumes(info->mNumCollisionVolumes))
 		{
-			llerrs << "Can't allocate " << info->mNumCollisionVolumes << " collision volumes" << LL_ENDL;
+			LL_ERRS() << "Can't allocate " << info->mNumCollisionVolumes << " collision volumes" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -670,7 +670,7 @@ BOOL LLAvatarAppearance::buildSkeleton(const LLAvatarSkeletonInfo *info)
 		LLAvatarBoneInfo *info = *iter;
 		if (!setupBone(info, NULL, current_volume_num, current_joint_num))
 		{
-			llerrs << "Error parsing bone in skeleton file" << LL_ENDL;
+			LL_ERRS() << "Error parsing bone in skeleton file" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -730,17 +730,17 @@ void LLAvatarAppearance::buildCharacter()
 	stop_glerror();
 
 // 	gPrintMessagesThisFrame = TRUE;
-	lldebugs << "Avatar load took " << timer.getElapsedTimeF32() << " seconds." << LL_ENDL;
+	LL_DEBUGS() << "Avatar load took " << timer.getElapsedTimeF32() << " seconds." << LL_ENDL;
 
 	if (!status)
 	{
 		if (isSelf())
 		{
-			llerrs << "Unable to load user's avatar" << LL_ENDL;
+			LL_ERRS() << "Unable to load user's avatar" << LL_ENDL;
 		}
 		else
 		{
-			llwarns << "Unable to load other's avatar" << LL_ENDL;
+			LL_WARNS() << "Unable to load other's avatar" << LL_ENDL;
 		}
 		return;
 	}
@@ -789,7 +789,7 @@ void LLAvatarAppearance::buildCharacter()
 		  mEyeLeftp &&
 		  mEyeRightp))
 	{
-		llerrs << "Failed to create avatar." << LL_ENDL;
+		LL_ERRS() << "Failed to create avatar." << LL_ENDL;
 		return;
 	}
 
@@ -810,21 +810,21 @@ BOOL LLAvatarAppearance::loadAvatar()
 	// avatar_skeleton.xml
 	if( !buildSkeleton(sAvatarSkeletonInfo) )
 	{
-		llwarns << "avatar file: buildSkeleton() failed" << LL_ENDL;
+		LL_WARNS() << "avatar file: buildSkeleton() failed" << LL_ENDL;
 		return FALSE;
 	}
 
 	// avatar_lad.xml : <skeleton>
 	if( !loadSkeletonNode() )
 	{
-		llwarns << "avatar file: loadNodeSkeleton() failed" << LL_ENDL;
+		LL_WARNS() << "avatar file: loadNodeSkeleton() failed" << LL_ENDL;
 		return FALSE;
 	}
 	
 	// avatar_lad.xml : <mesh>
 	if( !loadMeshNodes() )
 	{
-		llwarns << "avatar file: loadNodeMesh() failed" << LL_ENDL;
+		LL_WARNS() << "avatar file: loadNodeMesh() failed" << LL_ENDL;
 		return FALSE;
 	}
 	
@@ -834,13 +834,13 @@ BOOL LLAvatarAppearance::loadAvatar()
 		mTexSkinColor = new LLTexGlobalColor( this );
 		if( !mTexSkinColor->setInfo( sAvatarXmlInfo->mTexSkinColorInfo ) )
 		{
-			llwarns << "avatar file: mTexSkinColor->setInfo() failed" << LL_ENDL;
+			LL_WARNS() << "avatar file: mTexSkinColor->setInfo() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
 	else
 	{
-		llwarns << "<global_color> name=\"skin_color\" not found" << LL_ENDL;
+		LL_WARNS() << "<global_color> name=\"skin_color\" not found" << LL_ENDL;
 		return FALSE;
 	}
 	if( sAvatarXmlInfo->mTexHairColorInfo )
@@ -848,13 +848,13 @@ BOOL LLAvatarAppearance::loadAvatar()
 		mTexHairColor = new LLTexGlobalColor( this );
 		if( !mTexHairColor->setInfo( sAvatarXmlInfo->mTexHairColorInfo ) )
 		{
-			llwarns << "avatar file: mTexHairColor->setInfo() failed" << LL_ENDL;
+			LL_WARNS() << "avatar file: mTexHairColor->setInfo() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
 	else
 	{
-		llwarns << "<global_color> name=\"hair_color\" not found" << LL_ENDL;
+		LL_WARNS() << "<global_color> name=\"hair_color\" not found" << LL_ENDL;
 		return FALSE;
 	}
 	if( sAvatarXmlInfo->mTexEyeColorInfo )
@@ -862,26 +862,26 @@ BOOL LLAvatarAppearance::loadAvatar()
 		mTexEyeColor = new LLTexGlobalColor( this );
 		if( !mTexEyeColor->setInfo( sAvatarXmlInfo->mTexEyeColorInfo ) )
 		{
-			llwarns << "avatar file: mTexEyeColor->setInfo() failed" << LL_ENDL;
+			LL_WARNS() << "avatar file: mTexEyeColor->setInfo() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
 	else
 	{
-		llwarns << "<global_color> name=\"eye_color\" not found" << LL_ENDL;
+		LL_WARNS() << "<global_color> name=\"eye_color\" not found" << LL_ENDL;
 		return FALSE;
 	}
 	
 	// avatar_lad.xml : <layer_set>
 	if (sAvatarXmlInfo->mLayerInfoList.empty())
 	{
-		llwarns << "avatar file: missing <layer_set> node" << LL_ENDL;
+		LL_WARNS() << "avatar file: missing <layer_set> node" << LL_ENDL;
 		return FALSE;
 	}
 
 	if (sAvatarXmlInfo->mMorphMaskInfoList.empty())
 	{
-		llwarns << "avatar file: missing <morph_masks> node" << LL_ENDL;
+		LL_WARNS() << "avatar file: missing <morph_masks> node" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -923,14 +923,14 @@ BOOL LLAvatarAppearance::loadAvatar()
 			LLVisualParam*(LLAvatarAppearance::*avatar_function)(S32)const = &LLAvatarAppearance::getVisualParam; 
 			if( !driver_param->linkDrivenParams(boost::bind(avatar_function,(LLAvatarAppearance*)this,_1 ), false))
 			{
-				llwarns << "could not link driven params for avatar " << getID().asString() << " param id: " << driver_param->getID() << LL_ENDL;
+				LL_WARNS() << "could not link driven params for avatar " << getID().asString() << " param id: " << driver_param->getID() << LL_ENDL;
 				continue;
 			}
 		}
 		else
 		{
 			delete driver_param;
-			llwarns << "avatar file: driver_param->parseData() failed" << LL_ENDL;
+			LL_WARNS() << "avatar file: driver_param->parseData() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1050,17 +1050,17 @@ BOOL LLAvatarAppearance::loadMeshNodes()
 			}
 			else
 			{
-				llwarns << "Avatar file: <mesh> has invalid lod setting " << lod << LL_ENDL;
+				LL_WARNS() << "Avatar file: <mesh> has invalid lod setting " << lod << LL_ENDL;
 				return FALSE;
 			}
 		}
 		else 
 		{
-			llwarns << "Ignoring unrecognized mesh type: " << type << LL_ENDL;
+			LL_WARNS() << "Ignoring unrecognized mesh type: " << type << LL_ENDL;
 			return FALSE;
 		}
 
-		//	llinfos << "Parsing mesh data for " << type << "..." << LL_ENDL;
+		//	LL_INFOS() << "Parsing mesh data for " << type << "..." << LL_ENDL;
 
 		// If this isn't set to white (1.0), avatars will *ALWAYS* be darker than their surroundings.
 		// Do not touch!!!
@@ -1090,7 +1090,7 @@ BOOL LLAvatarAppearance::loadMeshNodes()
 
 		if( !poly_mesh )
 		{
-			llwarns << "Failed to load mesh of type " << type << LL_ENDL;
+			LL_WARNS() << "Failed to load mesh of type " << type << LL_ENDL;
 			return FALSE;
 		}
 
@@ -1150,7 +1150,7 @@ BOOL LLAvatarAppearance::loadLayersets()
 			{
 				stop_glerror();
 				delete layer_set;
-				llwarns << "avatar file: layer_set->setInfo() failed" << LL_ENDL;
+				LL_WARNS() << "avatar file: layer_set->setInfo() failed" << LL_ENDL;
 				return FALSE;
 			}
 
@@ -1173,7 +1173,7 @@ BOOL LLAvatarAppearance::loadLayersets()
 			// if no baked texture was found, warn and cleanup
 			if (baked_index == BAKED_NUM_INDICES)
 			{
-				llwarns << "<layer_set> has invalid body_region attribute" << LL_ENDL;
+				LL_WARNS() << "<layer_set> has invalid body_region attribute" << LL_ENDL;
 				delete layer_set;
 				return FALSE;
 			}
@@ -1191,7 +1191,7 @@ BOOL LLAvatarAppearance::loadLayersets()
 				}
 				else
 				{
-					llwarns << "Could not find layer named " << morph->mLayer << " to set morph flag" << LL_ENDL;
+					LL_WARNS() << "Could not find layer named " << morph->mLayer << " to set morph flag" << LL_ENDL;
 					success = FALSE;
 				}
 			}
@@ -1287,7 +1287,7 @@ BOOL LLAvatarAppearance::isValid() const
 	// This should only be called on ourself.
 	if (!isSelf())
 	{
-		llerrs << "Called LLAvatarAppearance::isValid() on when isSelf() == false" << LL_ENDL;
+		LL_ERRS() << "Called LLAvatarAppearance::isValid() on when isSelf() == false" << LL_ENDL;
 	}
 	return TRUE;
 }
@@ -1476,7 +1476,7 @@ BOOL LLAvatarBoneInfo::parseXml(LLXmlTreeNode* node)
 		static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name");
 		if (!node->getFastAttributeString(name_string, mName))
 		{
-			llwarns << "Bone without name" << LL_ENDL;
+			LL_WARNS() << "Bone without name" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1491,28 +1491,28 @@ BOOL LLAvatarBoneInfo::parseXml(LLXmlTreeNode* node)
 	}
 	else
 	{
-		llwarns << "Invalid node " << node->getName() << LL_ENDL;
+		LL_WARNS() << "Invalid node " << node->getName() << LL_ENDL;
 		return FALSE;
 	}
 
 	static LLStdStringHandle pos_string = LLXmlTree::addAttributeString("pos");
 	if (!node->getFastAttributeVector3(pos_string, mPos))
 	{
-		llwarns << "Bone without position" << LL_ENDL;
+		LL_WARNS() << "Bone without position" << LL_ENDL;
 		return FALSE;
 	}
 
 	static LLStdStringHandle rot_string = LLXmlTree::addAttributeString("rot");
 	if (!node->getFastAttributeVector3(rot_string, mRot))
 	{
-		llwarns << "Bone without rotation" << LL_ENDL;
+		LL_WARNS() << "Bone without rotation" << LL_ENDL;
 		return FALSE;
 	}
 	
 	static LLStdStringHandle scale_string = LLXmlTree::addAttributeString("scale");
 	if (!node->getFastAttributeVector3(scale_string, mScale))
 	{
-		llwarns << "Bone without scale" << LL_ENDL;
+		LL_WARNS() << "Bone without scale" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -1521,7 +1521,7 @@ BOOL LLAvatarBoneInfo::parseXml(LLXmlTreeNode* node)
 		static LLStdStringHandle pivot_string = LLXmlTree::addAttributeString("pivot");
 		if (!node->getFastAttributeVector3(pivot_string, mPivot))
 		{
-			llwarns << "Bone without pivot" << LL_ENDL;
+			LL_WARNS() << "Bone without pivot" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1549,7 +1549,7 @@ BOOL LLAvatarSkeletonInfo::parseXml(LLXmlTreeNode* node)
 	static LLStdStringHandle num_bones_string = LLXmlTree::addAttributeString("num_bones");
 	if (!node->getFastAttributeS32(num_bones_string, mNumBones))
 	{
-		llwarns << "Couldn't find number of bones." << LL_ENDL;
+		LL_WARNS() << "Couldn't find number of bones." << LL_ENDL;
 		return FALSE;
 	}
 
@@ -1563,7 +1563,7 @@ BOOL LLAvatarSkeletonInfo::parseXml(LLXmlTreeNode* node)
 		if (!info->parseXml(child))
 		{
 			delete info;
-			llwarns << "Error parsing bone in skeleton file" << LL_ENDL;
+			LL_WARNS() << "Error parsing bone in skeleton file" << LL_ENDL;
 			return FALSE;
 		}
 		mBoneInfoList.push_back(info);
@@ -1580,7 +1580,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 	LLXmlTreeNode* node = root->getChildByName( "skeleton" );
 	if( !node )
 	{
-		llwarns << "avatar file: missing <skeleton>" << LL_ENDL;
+		LL_WARNS() << "avatar file: missing <skeleton>" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -1595,11 +1595,11 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		{
 			if (child->getChildByName("param_morph"))
 			{
-				llwarns << "Can't specify morph param in skeleton definition." << LL_ENDL;
+				LL_WARNS() << "Can't specify morph param in skeleton definition." << LL_ENDL;
 			}
 			else
 			{
-				llwarns << "Unknown param type." << LL_ENDL;
+				LL_WARNS() << "Unknown param type." << LL_ENDL;
 			}
 			continue;
 		}
@@ -1624,7 +1624,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name");
 		if (!child->getFastAttributeString(name_string, info->mName))
 		{
-			llwarns << "No name supplied for attachment point." << LL_ENDL;
+			LL_WARNS() << "No name supplied for attachment point." << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1632,7 +1632,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		static LLStdStringHandle joint_string = LLXmlTree::addAttributeString("joint");
 		if (!child->getFastAttributeString(joint_string, info->mJointName))
 		{
-			llwarns << "No bone declared in attachment point " << info->mName << LL_ENDL;
+			LL_WARNS() << "No bone declared in attachment point " << info->mName << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1658,7 +1658,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlSkeletonNode(LLXmlTreeNode* ro
 		static LLStdStringHandle id_string = LLXmlTree::addAttributeString("id");
 		if (!child->getFastAttributeS32(id_string, info->mAttachmentID))
 		{
-			llwarns << "No id supplied for attachment point " << info->mName << LL_ENDL;
+			LL_WARNS() << "No id supplied for attachment point " << info->mName << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1693,7 +1693,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 		static LLStdStringHandle type_string = LLXmlTree::addAttributeString("type");
 		if( !node->getFastAttributeString( type_string, info->mType ) )
 		{
-			llwarns << "Avatar file: <mesh> is missing type attribute.  Ignoring element. " << LL_ENDL;
+			LL_WARNS() << "Avatar file: <mesh> is missing type attribute.  Ignoring element. " << LL_ENDL;
 			delete info;
 			return FALSE;  // Ignore this element
 		}
@@ -1701,7 +1701,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 		static LLStdStringHandle lod_string = LLXmlTree::addAttributeString("lod");
 		if (!node->getFastAttributeS32( lod_string, info->mLOD ))
 		{
-			llwarns << "Avatar file: <mesh> is missing lod attribute.  Ignoring element. " << LL_ENDL;
+			LL_WARNS() << "Avatar file: <mesh> is missing lod attribute.  Ignoring element. " << LL_ENDL;
 			delete info;
 			return FALSE;  // Ignore this element
 		}
@@ -1709,7 +1709,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 		static LLStdStringHandle file_name_string = LLXmlTree::addAttributeString("file_name");
 		if( !node->getFastAttributeString( file_name_string, info->mMeshFileName ) )
 		{
-			llwarns << "Avatar file: <mesh> is missing file_name attribute.  Ignoring: " << info->mType << LL_ENDL;
+			LL_WARNS() << "Avatar file: <mesh> is missing file_name attribute.  Ignoring: " << info->mType << LL_ENDL;
 			delete info;
 			return FALSE;  // Ignore this element
 		}
@@ -1740,11 +1740,11 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMeshNodes(LLXmlTreeNode* root)
 			{
 				if (child->getChildByName("param_skeleton"))
 				{
-					llwarns << "Can't specify skeleton param in a mesh definition." << LL_ENDL;
+					LL_WARNS() << "Can't specify skeleton param in a mesh definition." << LL_ENDL;
 				}
 				else
 				{
-					llwarns << "Unknown param type." << LL_ENDL;
+					LL_WARNS() << "Unknown param type." << LL_ENDL;
 				}
 				continue;
 			}
@@ -1785,14 +1785,14 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlColorNodes(LLXmlTreeNode* root
 			{
 				if (mTexSkinColorInfo)
 				{
-					llwarns << "avatar file: multiple instances of skin_color" << LL_ENDL;
+					LL_WARNS() << "avatar file: multiple instances of skin_color" << LL_ENDL;
 					return FALSE;
 				}
 				mTexSkinColorInfo = new LLTexGlobalColorInfo;
 				if( !mTexSkinColorInfo->parseXml( color_node ) )
 				{
 					delete_and_clear(mTexSkinColorInfo);
-					llwarns << "avatar file: mTexSkinColor->parseXml() failed" << LL_ENDL;
+					LL_WARNS() << "avatar file: mTexSkinColor->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1800,14 +1800,14 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlColorNodes(LLXmlTreeNode* root
 			{
 				if (mTexHairColorInfo)
 				{
-					llwarns << "avatar file: multiple instances of hair_color" << LL_ENDL;
+					LL_WARNS() << "avatar file: multiple instances of hair_color" << LL_ENDL;
 					return FALSE;
 				}
 				mTexHairColorInfo = new LLTexGlobalColorInfo;
 				if( !mTexHairColorInfo->parseXml( color_node ) )
 				{
 					delete_and_clear(mTexHairColorInfo);
-					llwarns << "avatar file: mTexHairColor->parseXml() failed" << LL_ENDL;
+					LL_WARNS() << "avatar file: mTexHairColor->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1815,13 +1815,13 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlColorNodes(LLXmlTreeNode* root
 			{
 				if (mTexEyeColorInfo)
 				{
-					llwarns << "avatar file: multiple instances of eye_color" << LL_ENDL;
+					LL_WARNS() << "avatar file: multiple instances of eye_color" << LL_ENDL;
 					return FALSE;
 				}
 				mTexEyeColorInfo = new LLTexGlobalColorInfo;
 				if( !mTexEyeColorInfo->parseXml( color_node ) )
 				{
-					llwarns << "avatar file: mTexEyeColor->parseXml() failed" << LL_ENDL;
+					LL_WARNS() << "avatar file: mTexEyeColor->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1847,7 +1847,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlLayerNodes(LLXmlTreeNode* root
 		else
 		{
 			delete layer_info;
-			llwarns << "avatar file: layer_set->parseXml() failed" << LL_ENDL;
+			LL_WARNS() << "avatar file: layer_set->parseXml() failed" << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -1876,7 +1876,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlDriverNodes(LLXmlTreeNode* roo
 				else
 				{
 					delete driver_info;
-					llwarns << "avatar file: driver_param->parseXml() failed" << LL_ENDL;
+					LL_WARNS() << "avatar file: driver_param->parseXml() failed" << LL_ENDL;
 					return FALSE;
 				}
 			}
@@ -1905,7 +1905,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMorphNodes(LLXmlTreeNode* root
 		static LLStdStringHandle name_string = LLXmlTree::addAttributeString("morph_name");
 		if (!grand_child->getFastAttributeString(name_string, info->mName))
 		{
-			llwarns << "No name supplied for morph mask." << LL_ENDL;
+			LL_WARNS() << "No name supplied for morph mask." << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1913,7 +1913,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMorphNodes(LLXmlTreeNode* root
 		static LLStdStringHandle region_string = LLXmlTree::addAttributeString("body_region");
 		if (!grand_child->getFastAttributeString(region_string, info->mRegion))
 		{
-			llwarns << "No region supplied for morph mask." << LL_ENDL;
+			LL_WARNS() << "No region supplied for morph mask." << LL_ENDL;
 			delete info;
 			continue;
 		}
@@ -1921,7 +1921,7 @@ BOOL LLAvatarAppearance::LLAvatarXmlInfo::parseXmlMorphNodes(LLXmlTreeNode* root
 		static LLStdStringHandle layer_string = LLXmlTree::addAttributeString("layer");
 		if (!grand_child->getFastAttributeString(layer_string, info->mLayer))
 		{
-			llwarns << "No layer supplied for morph mask." << LL_ENDL;
+			LL_WARNS() << "No layer supplied for morph mask." << LL_ENDL;
 			delete info;
 			continue;
 		}
diff --git a/indra/llappearance/llavatarjoint.cpp b/indra/llappearance/llavatarjoint.cpp
index 6ab341af64..2ee3c65a01 100644
--- a/indra/llappearance/llavatarjoint.cpp
+++ b/indra/llappearance/llavatarjoint.cpp
@@ -238,7 +238,7 @@ LLAvatarJointCollisionVolume::LLAvatarJointCollisionVolume()
 /*virtual*/
 U32 LLAvatarJointCollisionVolume::render( F32 pixelArea, BOOL first_pass, BOOL is_dummy )
 {
-	llerrs << "Cannot call render() on LLAvatarJointCollisionVolume" << llendl;
+	LL_ERRS() << "Cannot call render() on LLAvatarJointCollisionVolume" << LL_ENDL;
 	return 0;
 }
 
diff --git a/indra/llappearance/llavatarjointmesh.cpp b/indra/llappearance/llavatarjointmesh.cpp
index e50ef8d485..520ad775db 100644
--- a/indra/llappearance/llavatarjointmesh.cpp
+++ b/indra/llappearance/llavatarjointmesh.cpp
@@ -88,7 +88,7 @@ BOOL LLSkinJoint::setupSkinJoint( LLAvatarJoint *joint)
 	mJoint = joint;
 	if ( !mJoint )
 	{
-		llinfos << "Can't find joint" << llendl;
+		LL_INFOS() << "Can't find joint" << LL_ENDL;
 	}
 
 	// compute the inverse root skin matrix
@@ -304,7 +304,7 @@ void LLAvatarJointMesh::setMesh( LLPolyMesh *mesh )
 		U32 jn;
 		for (jn = 0; jn < numJointNames; jn++)
 		{
-			//llinfos << "Setting up joint " << jointNames[jn] << llendl;
+			//LL_INFOS() << "Setting up joint " << jointNames[jn] << LL_ENDL;
 			LLAvatarJoint* joint = (LLAvatarJoint*)(getRoot()->findJoint(jointNames[jn]) );
 			mSkinJoints[jn].setupSkinJoint( joint );
 		}
diff --git a/indra/llappearance/lldriverparam.cpp b/indra/llappearance/lldriverparam.cpp
index 1f7e8b8652..c66a428374 100644
--- a/indra/llappearance/lldriverparam.cpp
+++ b/indra/llappearance/lldriverparam.cpp
@@ -89,7 +89,7 @@ BOOL LLDriverParamInfo::parseXml(LLXmlTreeNode* node)
 		}
 		else
 		{
-			llerrs << "<driven> Unable to resolve driven parameter: " << driven_id << llendl;
+			LL_ERRS() << "<driven> Unable to resolve driven parameter: " << driven_id << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -139,9 +139,9 @@ void LLDriverParamInfo::toStream(std::ostream &out)
 			}
 			else
 			{
-				llwarns << "could not get parameter " << driven.mDrivenID << " from avatar " 
+				LL_WARNS() << "could not get parameter " << driven.mDrivenID << " from avatar " 
 						<< mDriverParam->getAvatarAppearance() 
-						<< " for driver parameter " << getID() << llendl;
+						<< " for driver parameter " << getID() << LL_ENDL;
 			}
 			out << std::endl;
 		}
diff --git a/indra/llappearance/lllocaltextureobject.cpp b/indra/llappearance/lllocaltextureobject.cpp
index 7e36a06797..f49cf21512 100644
--- a/indra/llappearance/lllocaltextureobject.cpp
+++ b/indra/llappearance/lllocaltextureobject.cpp
@@ -64,7 +64,7 @@ LLLocalTextureObject::LLLocalTextureObject(const LLLocalTextureObject& lto) :
 		LLTexLayer* original_layer = lto.getTexLayer(index);
 		if (!original_layer)
 		{
-			llerrs << "could not clone Local Texture Object: unable to extract texlayer!" << llendl;
+			LL_ERRS() << "could not clone Local Texture Object: unable to extract texlayer!" << LL_ENDL;
 			continue;
 		}
 
diff --git a/indra/llappearance/llpolymesh.cpp b/indra/llappearance/llpolymesh.cpp
index 1e87dae485..0a7a8d27bb 100644
--- a/indra/llappearance/llpolymesh.cpp
+++ b/indra/llappearance/llpolymesh.cpp
@@ -277,13 +277,13 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
         //-------------------------------------------------------------------------
         if(fileName.empty())
         {
-                llerrs << "Filename is Empty!" << llendl;
+                LL_ERRS() << "Filename is Empty!" << LL_ENDL;
                 return FALSE;
         }
         LLFILE* fp = LLFile::fopen(fileName, "rb");                     /*Flawfinder: ignore*/
         if (!fp)
         {
-                llerrs << "can't open: " << fileName << llendl;
+                LL_ERRS() << "can't open: " << fileName << LL_ENDL;
                 return FALSE;
         }
 
@@ -293,7 +293,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
         char header[128];               /*Flawfinder: ignore*/
         if (fread(header, sizeof(char), 128, fp) != 128)
         {
-                llwarns << "Short read" << llendl;
+                LL_WARNS() << "Short read" << LL_ENDL;
         }
 
         //-------------------------------------------------------------------------
@@ -302,7 +302,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
         BOOL status = FALSE;
         if ( strncmp(header, HEADER_BINARY, strlen(HEADER_BINARY)) == 0 )       /*Flawfinder: ignore*/
         {
-                lldebugs << "Loading " << fileName << llendl;
+                LL_DEBUGS() << "Loading " << fileName << LL_ENDL;
 
                 //----------------------------------------------------------------
                 // File Header (seek past it)
@@ -316,7 +316,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                 size_t numRead = fread(&hasWeights, sizeof(U8), 1, fp);
                 if (numRead != 1)
                 {
-                        llerrs << "can't read HasWeights flag from " << fileName << llendl;
+                        LL_ERRS() << "can't read HasWeights flag from " << fileName << LL_ENDL;
                         return FALSE;
                 }
                 if (!isLOD())
@@ -331,7 +331,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                 numRead = fread(&hasDetailTexCoords, sizeof(U8), 1, fp);
                 if (numRead != 1)
                 {
-                        llerrs << "can't read HasDetailTexCoords flag from " << fileName << llendl;
+                        LL_ERRS() << "can't read HasDetailTexCoords flag from " << fileName << LL_ENDL;
                         return FALSE;
                 }
 
@@ -343,7 +343,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                 llendianswizzle(position.mV, sizeof(float), 3);
                 if (numRead != 3)
                 {
-                        llerrs << "can't read Position from " << fileName << llendl;
+                        LL_ERRS() << "can't read Position from " << fileName << LL_ENDL;
                         return FALSE;
                 }
                 setPosition( position );
@@ -356,7 +356,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                 llendianswizzle(rotationAngles.mV, sizeof(float), 3);
                 if (numRead != 3)
                 {
-                        llerrs << "can't read RotationAngles from " << fileName << llendl;
+                        LL_ERRS() << "can't read RotationAngles from " << fileName << LL_ENDL;
                         return FALSE;
                 }
 
@@ -365,7 +365,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
 
                 if (numRead != 1)
                 {
-                        llerrs << "can't read RotationOrder from " << fileName << llendl;
+                        LL_ERRS() << "can't read RotationOrder from " << fileName << LL_ENDL;
                         return FALSE;
                 }
 
@@ -384,7 +384,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                 llendianswizzle(scale.mV, sizeof(float), 3);
                 if (numRead != 3)
                 {
-                        llerrs << "can't read Scale from " << fileName << llendl;
+                        LL_ERRS() << "can't read Scale from " << fileName << LL_ENDL;
                         return FALSE;
                 }
                 setScale( scale );
@@ -405,7 +405,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                         llendianswizzle(&numVertices, sizeof(U16), 1);
                         if (numRead != 1)
                         {
-                                llerrs << "can't read NumVertices from " << fileName << llendl;
+                                LL_ERRS() << "can't read NumVertices from " << fileName << LL_ENDL;
                                 return FALSE;
                         }
 
@@ -420,7 +420,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
 							llendianswizzle(&mBaseCoords[i], sizeof(float), 3);
 							if (numRead != 3)
 							{
-									llerrs << "can't read Coordinates from " << fileName << llendl;
+									LL_ERRS() << "can't read Coordinates from " << fileName << LL_ENDL;
 									return FALSE;
 							}
 						}
@@ -434,7 +434,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
 							llendianswizzle(&mBaseNormals[i], sizeof(float), 3);
 							if (numRead != 3)
 							{
-									llerrs << " can't read Normals from " << fileName << llendl;
+									LL_ERRS() << " can't read Normals from " << fileName << LL_ENDL;
 									return FALSE;
 							}
 						}
@@ -448,7 +448,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
 							llendianswizzle(&mBaseBinormals[i], sizeof(float), 3);
 							if (numRead != 3)
 							{
-									llerrs << " can't read Binormals from " << fileName << llendl;
+									LL_ERRS() << " can't read Binormals from " << fileName << LL_ENDL;
 									return FALSE;
 							}
 						}
@@ -460,7 +460,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                         llendianswizzle(mTexCoords, sizeof(float), 2*numVertices);
                         if (numRead != numVertices)
                         {
-                                llerrs << "can't read TexCoords from " << fileName << llendl;
+                                LL_ERRS() << "can't read TexCoords from " << fileName << LL_ENDL;
                                 return FALSE;
                         }
 
@@ -473,7 +473,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                                 llendianswizzle(mDetailTexCoords, sizeof(float), 2*numVertices);
                                 if (numRead != numVertices)
                                 {
-                                        llerrs << "can't read DetailTexCoords from " << fileName << llendl;
+                                        LL_ERRS() << "can't read DetailTexCoords from " << fileName << LL_ENDL;
                                         return FALSE;
                                 }
                         }
@@ -487,7 +487,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                                 llendianswizzle(mWeights, sizeof(float), numVertices);
                                 if (numRead != numVertices)
                                 {
-                                        llerrs << "can't read Weights from " << fileName << llendl;
+                                        LL_ERRS() << "can't read Weights from " << fileName << LL_ENDL;
                                         return FALSE;
                                 }
                         }
@@ -501,7 +501,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                 llendianswizzle(&numFaces, sizeof(U16), 1);
                 if (numRead != 1)
                 {
-                        llerrs << "can't read NumFaces from " << fileName << llendl;
+                        LL_ERRS() << "can't read NumFaces from " << fileName << LL_ENDL;
                         return FALSE;
                 }
                 allocateFaceData( numFaces );
@@ -519,7 +519,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                         llendianswizzle(face, sizeof(U16), 3);
                         if (numRead != 3)
                         {
-                                llerrs << "can't read Face[" << i << "] from " << fileName << llendl;
+                                LL_ERRS() << "can't read Face[" << i << "] from " << fileName << LL_ENDL;
                                 return FALSE;
                         }
                         if (mReferenceData)
@@ -559,10 +559,10 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                         numTris++;
                 }
 
-                lldebugs << "verts: " << numVertices 
+                LL_DEBUGS() << "verts: " << numVertices 
                          << ", faces: "   << numFaces
                          << ", tris: "    << numTris
-                         << llendl;
+                         << LL_ENDL;
 
                 //----------------------------------------------------------------
                 // NumSkinJoints
@@ -576,7 +576,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                                 llendianswizzle(&numSkinJoints, sizeof(U16), 1);
                                 if (numRead != 1)
                                 {
-                                        llerrs << "can't read NumSkinJoints from " << fileName << llendl;
+                                        LL_ERRS() << "can't read NumSkinJoints from " << fileName << LL_ENDL;
                                         return FALSE;
                                 }
                                 allocateJointNames( numSkinJoints );
@@ -592,7 +592,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                                 jointName[sizeof(jointName)-1] = '\0'; // ensure nul-termination
                                 if (numRead != 1)
                                 {
-                                        llerrs << "can't read Skin[" << i << "].Name from " << fileName << llendl;
+                                        LL_ERRS() << "can't read Skin[" << i << "].Name from " << fileName << LL_ENDL;
                                         return FALSE;
                                 }
 
@@ -687,12 +687,12 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
                                         S32 remapDst;
                                         if (fread(&remapSrc, sizeof(S32), 1, fp) != 1)
                                         {
-                                                llerrs << "can't read source vertex in vertex remap data" << llendl;
+                                                LL_ERRS() << "can't read source vertex in vertex remap data" << LL_ENDL;
                                                 break;
                                         }
                                         if (fread(&remapDst, sizeof(S32), 1, fp) != 1)
                                         {
-                                                llerrs << "can't read destination vertex in vertex remap data" << llendl;
+                                                LL_ERRS() << "can't read destination vertex in vertex remap data" << LL_ENDL;
                                                 break;
                                         }
                                         llendianswizzle(&remapSrc, sizeof(S32), 1);
@@ -707,7 +707,7 @@ BOOL LLPolyMeshSharedData::loadMesh( const std::string& fileName )
         }
         else
         {
-                llerrs << "invalid mesh file header: " << fileName << llendl;
+                LL_ERRS() << "invalid mesh file header: " << fileName << LL_ENDL;
                 status = FALSE;
         }
 
@@ -824,7 +824,7 @@ LLPolyMesh *LLPolyMesh::getMesh(const std::string &name, LLPolyMesh* reference_m
         LLPolyMeshSharedData* meshSharedData = get_if_there(sGlobalSharedMeshList, name, (LLPolyMeshSharedData*)NULL);
         if (meshSharedData)
         {
-//              llinfos << "Polymesh " << name << " found in global mesh table." << llendl;
+//              LL_INFOS() << "Polymesh " << name << " found in global mesh table." << LL_ENDL;
                 LLPolyMesh *poly_mesh = new LLPolyMesh(meshSharedData, reference_mesh);
                 return poly_mesh;
         }
@@ -848,7 +848,7 @@ LLPolyMesh *LLPolyMesh::getMesh(const std::string &name, LLPolyMesh* reference_m
 
         LLPolyMesh *poly_mesh = new LLPolyMesh(mesh_data, reference_mesh);
 
-//      llinfos << "Polymesh " << name << " added to global mesh table." << llendl;
+//      LL_INFOS() << "Polymesh " << name << " added to global mesh table." << LL_ENDL;
         sGlobalSharedMeshList[name] = poly_mesh->mSharedData;
 
         return poly_mesh;
@@ -882,10 +882,10 @@ void LLPolyMesh::dumpDiagInfo()
 
         std::string buf;
 
-        llinfos << "-----------------------------------------------------" << llendl;
-        llinfos << "       Global PolyMesh Table (DEBUG only)" << llendl;
-        llinfos << "   Verts    Faces  Mem(KB) Name" << llendl;
-        llinfos << "-----------------------------------------------------" << llendl;
+        LL_INFOS() << "-----------------------------------------------------" << LL_ENDL;
+        LL_INFOS() << "       Global PolyMesh Table (DEBUG only)" << LL_ENDL;
+        LL_INFOS() << "   Verts    Faces  Mem(KB) Name" << LL_ENDL;
+        LL_INFOS() << "-----------------------------------------------------" << LL_ENDL;
 
         // print each loaded mesh, and it's memory usage
         for(LLPolyMeshSharedDataTable::iterator iter = sGlobalSharedMeshList.begin();
@@ -899,17 +899,17 @@ void LLPolyMesh::dumpDiagInfo()
                 U32 num_kb = mesh->getNumKB();
 
                 buf = llformat("%8d %8d %8d %s", num_verts, num_faces, num_kb, mesh_name.c_str());
-                llinfos << buf << llendl;
+                LL_INFOS() << buf << LL_ENDL;
 
                 total_verts += num_verts;
                 total_faces += num_faces;
                 total_kb += num_kb;
         }
 
-        llinfos << "-----------------------------------------------------" << llendl;
+        LL_INFOS() << "-----------------------------------------------------" << LL_ENDL;
         buf = llformat("%8d %8d %8d TOTAL", total_verts, total_faces, total_kb );
-        llinfos << buf << llendl;
-        llinfos << "-----------------------------------------------------" << llendl;
+        LL_INFOS() << buf << LL_ENDL;
+        LL_INFOS() << "-----------------------------------------------------" << LL_ENDL;
 }
 
 //-----------------------------------------------------------------------------
diff --git a/indra/llappearance/llpolymorph.cpp b/indra/llappearance/llpolymorph.cpp
index 6bda38bd97..e0790f8b5b 100644
--- a/indra/llappearance/llpolymorph.cpp
+++ b/indra/llappearance/llpolymorph.cpp
@@ -113,7 +113,7 @@ BOOL LLPolyMorphData::loadBinary(LLFILE *fp, LLPolyMeshSharedData *mesh)
 	llendianswizzle(&numVertices, sizeof(S32), 1);
 	if (numRead != 1)
 	{
-		llwarns << "Can't read number of morph target vertices" << llendl;
+		LL_WARNS() << "Can't read number of morph target vertices" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -150,13 +150,13 @@ BOOL LLPolyMorphData::loadBinary(LLFILE *fp, LLPolyMeshSharedData *mesh)
 		llendianswizzle(&mVertexIndices[v], sizeof(U32), 1);
 		if (numRead != 1)
 		{
-			llwarns << "Can't read morph target vertex number" << llendl;
+			LL_WARNS() << "Can't read morph target vertex number" << LL_ENDL;
 			return FALSE;
 		}
 
 		if (mVertexIndices[v] > 10000)
 		{
-			llerrs << "Bad morph index: " << mVertexIndices[v] << llendl;
+			LL_ERRS() << "Bad morph index: " << mVertexIndices[v] << LL_ENDL;
 		}
 
 
@@ -164,7 +164,7 @@ BOOL LLPolyMorphData::loadBinary(LLFILE *fp, LLPolyMeshSharedData *mesh)
 		llendianswizzle(&mCoords[v], sizeof(F32), 3);
 		if (numRead != 3)
 		{
-			llwarns << "Can't read morph target vertex coordinates" << llendl;
+			LL_WARNS() << "Can't read morph target vertex coordinates" << LL_ENDL;
 			return FALSE;
 		}
 
@@ -184,7 +184,7 @@ BOOL LLPolyMorphData::loadBinary(LLFILE *fp, LLPolyMeshSharedData *mesh)
 		llendianswizzle(&mNormals[v], sizeof(F32), 3);
 		if (numRead != 3)
 		{
-			llwarns << "Can't read morph target normal" << llendl;
+			LL_WARNS() << "Can't read morph target normal" << LL_ENDL;
 			return FALSE;
 		}
 
@@ -192,7 +192,7 @@ BOOL LLPolyMorphData::loadBinary(LLFILE *fp, LLPolyMeshSharedData *mesh)
 		llendianswizzle(&mBinormals[v], sizeof(F32), 3);
 		if (numRead != 3)
 		{
-			llwarns << "Can't read morph target binormal" << llendl;
+			LL_WARNS() << "Can't read morph target binormal" << LL_ENDL;
 			return FALSE;
 		}
 
@@ -201,7 +201,7 @@ BOOL LLPolyMorphData::loadBinary(LLFILE *fp, LLPolyMeshSharedData *mesh)
 		llendianswizzle(&mTexCoords[v].mV, sizeof(F32), 2);
 		if (numRead != 2)
 		{
-			llwarns << "Can't read morph target uv" << llendl;
+			LL_WARNS() << "Can't read morph target uv" << LL_ENDL;
 			return FALSE;
 		}
 
@@ -269,7 +269,7 @@ BOOL LLPolyMorphTargetInfo::parseXml(LLXmlTreeNode* node)
 	static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name");
 	if( !node->getFastAttributeString( name_string, mMorphName ) )
 	{
-		llwarns << "Avatar file: <param> is missing name attribute" << llendl;
+		LL_WARNS() << "Avatar file: <param> is missing name attribute" << LL_ENDL;
 		return FALSE;  // Continue, ignoring this tag
 	}
 
@@ -280,8 +280,8 @@ BOOL LLPolyMorphTargetInfo::parseXml(LLXmlTreeNode* node)
 
         if (NULL == paramNode)
         {
-                llwarns << "Failed to getChildByName(\"param_morph\")"
-                        << llendl;
+                LL_WARNS() << "Failed to getChildByName(\"param_morph\")"
+                        << LL_ENDL;
                 return FALSE;
         }
 
@@ -377,7 +377,7 @@ BOOL LLPolyMorphTarget::setInfo(LLPolyMorphTargetInfo* info)
 	}
 	if (!mMorphData)
 	{
-		llwarns << "No morph target named " << morph_param_name << " found in mesh." << llendl;
+		LL_WARNS() << "No morph target named " << morph_param_name << " found in mesh." << LL_ENDL;
 		return FALSE;  // Continue, ignoring this tag
 	}
 	return TRUE;
diff --git a/indra/llappearance/llpolyskeletaldistortion.cpp b/indra/llappearance/llpolyskeletaldistortion.cpp
index 8f1f413e02..68119a8562 100644
--- a/indra/llappearance/llpolyskeletaldistortion.cpp
+++ b/indra/llappearance/llpolyskeletaldistortion.cpp
@@ -55,8 +55,8 @@ BOOL LLPolySkeletalDistortionInfo::parseXml(LLXmlTreeNode* node)
 
         if (NULL == skeletalParam)
         {
-                llwarns << "Failed to getChildByName(\"param_skeleton\")"
-                        << llendl;
+                LL_WARNS() << "Failed to getChildByName(\"param_skeleton\")"
+                        << LL_ENDL;
                 return FALSE;
         }
 
@@ -72,14 +72,14 @@ BOOL LLPolySkeletalDistortionInfo::parseXml(LLXmlTreeNode* node)
                         static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name");
                         if (!bone->getFastAttributeString(name_string, name))
                         {
-                                llwarns << "No bone name specified for skeletal param." << llendl;
+                                LL_WARNS() << "No bone name specified for skeletal param." << LL_ENDL;
                                 continue;
                         }
 
                         static LLStdStringHandle scale_string = LLXmlTree::addAttributeString("scale");
                         if (!bone->getFastAttributeVector3(scale_string, scale))
                         {
-                                llwarns << "No scale specified for bone " << name << "." << llendl;
+                                LL_WARNS() << "No scale specified for bone " << name << "." << LL_ENDL;
                                 continue;
                         }
 
@@ -93,7 +93,7 @@ BOOL LLPolySkeletalDistortionInfo::parseXml(LLXmlTreeNode* node)
                 }
                 else
                 {
-                        llwarns << "Unrecognized element " << bone->getName() << " in skeletal distortion" << llendl;
+                        LL_WARNS() << "Unrecognized element " << bone->getName() << " in skeletal distortion" << LL_ENDL;
                         continue;
                 }
         }
@@ -132,13 +132,13 @@ BOOL LLPolySkeletalDistortion::setInfo(LLPolySkeletalDistortionInfo *info)
                 LLJoint* joint = mAvatar->getJoint(bone_info->mBoneName);
                 if (!joint)
                 {
-                        llwarns << "Joint " << bone_info->mBoneName << " not found." << llendl;
+                        LL_WARNS() << "Joint " << bone_info->mBoneName << " not found." << LL_ENDL;
                         continue;
                 }
 
                 if (mJointScales.find(joint) != mJointScales.end())
                 {
-                        llwarns << "Scale deformation already supplied for joint " << joint->getName() << "." << llendl;
+                        LL_WARNS() << "Scale deformation already supplied for joint " << joint->getName() << "." << LL_ENDL;
                 }
 
                 // store it
@@ -161,7 +161,7 @@ BOOL LLPolySkeletalDistortion::setInfo(LLPolySkeletalDistortionInfo *info)
                 {
                         if (mJointOffsets.find(joint) != mJointOffsets.end())
                         {
-                                llwarns << "Offset deformation already supplied for joint " << joint->getName() << "." << llendl;
+                                LL_WARNS() << "Offset deformation already supplied for joint " << joint->getName() << "." << LL_ENDL;
                         }
                         mJointOffsets[joint] = bone_info->mPositionDeformation;
                 }
diff --git a/indra/llappearance/lltexglobalcolor.cpp b/indra/llappearance/lltexglobalcolor.cpp
index f38b982104..77be545e05 100644
--- a/indra/llappearance/lltexglobalcolor.cpp
+++ b/indra/llappearance/lltexglobalcolor.cpp
@@ -128,7 +128,7 @@ BOOL LLTexGlobalColorInfo::parseXml(LLXmlTreeNode* node)
 	static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name");
 	if (!node->getFastAttributeString(name_string, mName))
 	{
-		llwarns << "<global_color> element is missing name attribute." << llendl;
+		LL_WARNS() << "<global_color> element is missing name attribute." << LL_ENDL;
 		return FALSE;
 	}
 	// <param> sub-element
diff --git a/indra/llappearance/lltexlayer.cpp b/indra/llappearance/lltexlayer.cpp
index 6c584c239c..7521e74d7c 100644
--- a/indra/llappearance/lltexlayer.cpp
+++ b/indra/llappearance/lltexlayer.cpp
@@ -210,7 +210,7 @@ BOOL LLTexLayerSetInfo::parseXml(LLXmlTreeNode* node)
 	static LLStdStringHandle body_region_string = LLXmlTree::addAttributeString("body_region");
 	if( !node->getFastAttributeString( body_region_string, mBodyRegion ) )
 	{
-		llwarns << "<layer_set> is missing body_region attribute" << llendl;
+		LL_WARNS() << "<layer_set> is missing body_region attribute" << LL_ENDL;
 		return FALSE;
 	}
 
@@ -735,13 +735,13 @@ BOOL LLTexLayerInfo::parseXml(LLXmlTreeNode* node)
 			}
 			if (mLocalTexture == TEX_NUM_INDICES)
 			{
-				llwarns << "<texture> element has invalid local_texture attribute: " << mName << " " << local_texture_name << llendl;
+				LL_WARNS() << "<texture> element has invalid local_texture attribute: " << mName << " " << local_texture_name << LL_ENDL;
 				return FALSE;
 			}
 		}
 		else	
 		{
-			llwarns << "<texture> element is missing a required attribute. " << mName << llendl;
+			LL_WARNS() << "<texture> element is missing a required attribute. " << mName << LL_ENDL;
 			return FALSE;
 		}
 	}
@@ -804,7 +804,7 @@ BOOL LLTexLayerInfo::createVisualParams(LLAvatarAppearance *appearance)
 		LLTexLayerParamColor* param_color = new LLTexLayerParamColor(appearance);
 		if (!param_color->setInfo(color_info, TRUE))
 		{
-			llwarns << "NULL TexLayer Color Param could not be added to visual param list. Deleting." << llendl;
+			LL_WARNS() << "NULL TexLayer Color Param could not be added to visual param list. Deleting." << LL_ENDL;
 			delete param_color;
 			success = FALSE;
 		}
@@ -818,7 +818,7 @@ BOOL LLTexLayerInfo::createVisualParams(LLAvatarAppearance *appearance)
 		LLTexLayerParamAlpha* param_alpha = new LLTexLayerParamAlpha(appearance);
 		if (!param_alpha->setInfo(alpha_info, TRUE))
 		{
-			llwarns << "NULL TexLayer Alpha Param could not be added to visual param list. Deleting." << llendl;
+			LL_WARNS() << "NULL TexLayer Alpha Param could not be added to visual param list. Deleting." << LL_ENDL;
 			delete param_alpha;
 			success = FALSE;
 		}
@@ -851,7 +851,7 @@ BOOL LLTexLayerInterface::setInfo(const LLTexLayerInfo *info, LLWearable* wearab
 	// Not a critical warning, but could be useful for debugging later issues. -Nyx
 	if (mInfo != NULL) 
 	{
-			llwarns << "mInfo != NULL" << llendl;
+			LL_WARNS() << "mInfo != NULL" << LL_ENDL;
 	}
 	mInfo = info;
 	//mID = info->mID; // No ID
@@ -1204,7 +1204,7 @@ BOOL LLTexLayer::render(S32 x, S32 y, S32 width, S32 height)
 			}
 			else
 			{
-				llinfos << "lto not defined or image not defined: " << getInfo()->getLocalTexture() << " lto: " << mLocalTextureObject << llendl;
+				LL_INFOS() << "lto not defined or image not defined: " << getInfo()->getLocalTexture() << " lto: " << mLocalTextureObject << LL_ENDL;
 			}
 //			if( mTexLayerSet->getAvatarAppearance()->getLocalTextureGL((ETextureIndex)getInfo()->mLocalTexture, &image_gl ) )
 			{
@@ -1292,7 +1292,7 @@ BOOL LLTexLayer::render(S32 x, S32 y, S32 width, S32 height)
 
 	if( !success )
 	{
-		llinfos << "LLTexLayer::render() partial: " << getInfo()->mName << llendl;
+		LL_INFOS() << "LLTexLayer::render() partial: " << getInfo()->mName << LL_ENDL;
 	}
 	return success;
 }
@@ -1429,7 +1429,7 @@ void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC
 {
 	if (!force_render && !hasMorph())
 	{
-		lldebugs << "skipping renderMorphMasks for " << getUUID() << llendl;
+		LL_DEBUGS() << "skipping renderMorphMasks for " << getUUID() << LL_ENDL;
 		return;
 	}
 	LLFastTimer t(FTM_RENDER_MORPH_MASKS);
@@ -1470,7 +1470,7 @@ void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC
 		success &= param->render( x, y, width, height );
 		if (!success && !force_render)
 		{
-			lldebugs << "Failed to render param " << param->getID() << " ; skipping morph mask." << llendl;
+			LL_DEBUGS() << "Failed to render param " << param->getID() << " ; skipping morph mask." << LL_ENDL;
 			return;
 		}
 	}
@@ -1512,8 +1512,8 @@ void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC
 			}
 			else
 			{
-				llwarns << "Skipping rendering of " << getInfo()->mStaticImageFileName 
-						<< "; expected 1 or 4 components." << llendl;
+				LL_WARNS() << "Skipping rendering of " << getInfo()->mStaticImageFileName 
+						<< "; expected 1 or 4 components." << LL_ENDL;
 			}
 		}
 	}
@@ -1892,18 +1892,18 @@ LLTexLayerStaticImageList::~LLTexLayerStaticImageList()
 
 void LLTexLayerStaticImageList::dumpByteCount() const
 {
-	llinfos << "Avatar Static Textures " <<
+	LL_INFOS() << "Avatar Static Textures " <<
 		"KB GL:" << (mGLBytes / 1024) <<
-		"KB TGA:" << (mTGABytes / 1024) << "KB" << llendl;
+		"KB TGA:" << (mTGABytes / 1024) << "KB" << LL_ENDL;
 }
 
 void LLTexLayerStaticImageList::deleteCachedImages()
 {
 	if( mGLBytes || mTGABytes )
 	{
-		llinfos << "Clearing Static Textures " <<
+		LL_INFOS() << "Clearing Static Textures " <<
 			"KB GL:" << (mGLBytes / 1024) <<
-			"KB TGA:" << (mTGABytes / 1024) << "KB" << llendl;
+			"KB TGA:" << (mTGABytes / 1024) << "KB" << LL_ENDL;
 
 		//mStaticImageLists uses LLPointers, clear() will cause deletion
 		
diff --git a/indra/llappearance/lltexlayerparams.cpp b/indra/llappearance/lltexlayerparams.cpp
index 674e8c3c06..f800b31694 100644
--- a/indra/llappearance/lltexlayerparams.cpp
+++ b/indra/llappearance/lltexlayerparams.cpp
@@ -50,7 +50,7 @@ LLTexLayerParam::LLTexLayerParam(LLTexLayerInterface *layer) :
 	}
 	else
 	{
-		llerrs << "LLTexLayerParam constructor passed with NULL reference for layer!" << llendl;
+		LL_ERRS() << "LLTexLayerParam constructor passed with NULL reference for layer!" << LL_ENDL;
 	}
 }
 
@@ -87,7 +87,7 @@ void LLTexLayerParamAlpha::dumpCacheByteCount()
 {
 	S32 gl_bytes = 0;
 	getCacheByteCount( &gl_bytes);
-	llinfos << "Processed Alpha Texture Cache GL:" << (gl_bytes/1024) << "KB" << llendl;
+	LL_INFOS() << "Processed Alpha Texture Cache GL:" << (gl_bytes/1024) << "KB" << LL_ENDL;
 }
 
 // static 
@@ -279,7 +279,7 @@ BOOL LLTexLayerParamAlpha::render(S32 x, S32 y, S32 width, S32 height)
 
 			if (mStaticImageTGA.isNull())
 			{
-				llwarns << "Unable to load static file: " << info->mStaticImageFileName << llendl;
+				LL_WARNS() << "Unable to load static file: " << info->mStaticImageFileName << LL_ENDL;
 				mStaticImageInvalid = TRUE; // don't try again.
 				return FALSE;
 			}
@@ -310,7 +310,7 @@ BOOL LLTexLayerParamAlpha::render(S32 x, S32 y, S32 width, S32 height)
 			mStaticImageRaw = new LLImageRaw;
 			mStaticImageTGA->decodeAndProcess(mStaticImageRaw, info->mDomain, effective_weight);
 			mNeedsCreateTexture = TRUE;			
-			lldebugs << "Built Cached Alpha: " << info->mStaticImageFileName << ": (" << mStaticImageRaw->getWidth() << ", " << mStaticImageRaw->getHeight() << ") " << "Domain: " << info->mDomain << " Weight: " << effective_weight << llendl;
+			LL_DEBUGS() << "Built Cached Alpha: " << info->mStaticImageFileName << ": (" << mStaticImageRaw->getWidth() << ", " << mStaticImageRaw->getHeight() << ") " << "Domain: " << info->mDomain << " Weight: " << effective_weight << LL_ENDL;
 		}
 
 		if (mCachedProcessedTexture)
@@ -381,7 +381,7 @@ BOOL LLTexLayerParamAlphaInfo::parseXml(LLXmlTreeNode* node)
 	}
 //	else
 //	{
-//		llwarns << "<param_alpha> element is missing tga_file attribute." << llendl;
+//		LL_WARNS() << "<param_alpha> element is missing tga_file attribute." << LL_ENDL;
 //	}
 	
 	static LLStdStringHandle multiply_blend_string = LLXmlTree::addAttributeString("multiply_blend");
@@ -482,7 +482,7 @@ void LLTexLayerParamColor::setWeight(F32 weight, BOOL upload_bake)
 			}
 		}
 
-//		llinfos << "param " << mName << " = " << new_weight << llendl;
+//		LL_INFOS() << "param " << mName << " = " << new_weight << LL_ENDL;
 	}
 }
 
@@ -557,13 +557,13 @@ BOOL LLTexLayerParamColorInfo::parseXml(LLXmlTreeNode *node)
 	}
 	if (!mNumColors)
 	{
-		llwarns << "<param_color> is missing <value> sub-elements" << llendl;
+		LL_WARNS() << "<param_color> is missing <value> sub-elements" << LL_ENDL;
 		return FALSE;
 	}
 
 	if ((mOperation == LLTexLayerParamColor::OP_BLEND) && (mNumColors != 1))
 	{
-		llwarns << "<param_color> with operation\"blend\" must have exactly one <value>" << llendl;
+		LL_WARNS() << "<param_color> with operation\"blend\" must have exactly one <value>" << LL_ENDL;
 		return FALSE;
 	}
 	
diff --git a/indra/llappearance/llwearable.cpp b/indra/llappearance/llwearable.cpp
index cb80313b0b..389505fa34 100644
--- a/indra/llappearance/llwearable.cpp
+++ b/indra/llappearance/llwearable.cpp
@@ -150,7 +150,7 @@ void LLWearable::createVisualParams(LLAvatarAppearance *avatarp)
 		{
 			if( !param->linkDrivenParams(boost::bind(param_function,avatarp,_1 ), true))
 			{
-				llwarns << "could not link driven params for wearable " << getName() << " id: " << param->getID() << llendl;
+				LL_WARNS() << "could not link driven params for wearable " << getName() << " id: " << param->getID() << LL_ENDL;
 				continue;
 			}
 		}
@@ -174,7 +174,7 @@ void LLWearable::createLayers(S32 te, LLAvatarAppearance *avatarp)
 	}
 	else
 	{
-		   llerrs << "could not find layerset for LTO in wearable!" << llendl;
+		   LL_ERRS() << "could not find layerset for LTO in wearable!" << LL_ENDL;
 	}
 }
 
@@ -208,7 +208,7 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	// read header and version 
 	if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 	{
-		llwarns << "Failed to read wearable asset input stream." << llendl;
+		LL_WARNS() << "Failed to read wearable asset input stream." << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	if ( 1 != sscanf( /* Flawfinder: ignore */
@@ -226,15 +226,15 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	// these wearables get re-saved with version definition 22.
 	if( mDefinitionVersion > LLWearable::sCurrentDefinitionVersion && mDefinitionVersion != 24 )
 	{
-		llwarns << "Wearable asset has newer version (" << mDefinitionVersion << ") than XML (" << LLWearable::sCurrentDefinitionVersion << ")" << llendl;
+		LL_WARNS() << "Wearable asset has newer version (" << mDefinitionVersion << ") than XML (" << LLWearable::sCurrentDefinitionVersion << ")" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 
 	// name may be empty
     if (!input_stream.good())
 	{
-		llwarns << "Bad Wearable asset: early end of input stream " 
-				<< "while reading name" << llendl;
+		LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+				<< "while reading name" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	input_stream.getline(buffer, PARSE_BUFFER_SIZE);
@@ -243,8 +243,8 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	// description may be empty
 	if (!input_stream.good())
 	{
-		llwarns << "Bad Wearable asset: early end of input stream " 
-				<< "while reading description" << llendl;
+		LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+				<< "while reading description" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	input_stream.getline(buffer, PARSE_BUFFER_SIZE);
@@ -253,15 +253,15 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	// permissions may have extra empty lines before the correct line
 	if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 	{
-		llwarns << "Bad Wearable asset: early end of input stream " 
-				<< "while reading permissions" << llendl;
+		LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+				<< "while reading permissions" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	S32 perm_version = -1;
 	if ( 1 != sscanf( buffer, " permissions %d\n", &perm_version ) ||
 		 perm_version != 0 )
 	{
-		llwarns << "Bad Wearable asset: missing valid permissions" << llendl;
+		LL_WARNS() << "Bad Wearable asset: missing valid permissions" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	if( !mPermissions.importLegacyStream( input_stream ) )
@@ -272,15 +272,15 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	// sale info
 	if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 	{
-		llwarns << "Bad Wearable asset: early end of input stream " 
-				<< "while reading sale info" << llendl;
+		LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+				<< "while reading sale info" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	S32 sale_info_version = -1;
 	if ( 1 != sscanf( buffer, " sale_info %d\n", &sale_info_version ) ||
 		sale_info_version != 0 )
 	{
-		llwarns << "Bad Wearable asset: missing valid sale_info" << llendl;
+		LL_WARNS() << "Bad Wearable asset: missing valid sale_info" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	// Sale info used to contain next owner perm. It is now in the
@@ -306,14 +306,14 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	// wearable type
 	if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 	{
-		llwarns << "Bad Wearable asset: early end of input stream " 
-				<< "while reading type" << llendl;
+		LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+				<< "while reading type" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	S32 type = -1;
 	if ( 1 != sscanf( buffer, "type %d\n", &type ) )
 	{
-		llwarns << "Bad Wearable asset: bad type" << llendl;
+		LL_WARNS() << "Bad Wearable asset: bad type" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	if( 0 <= type && type < LLWearableType::WT_COUNT )
@@ -323,36 +323,36 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	else
 	{
 		mType = LLWearableType::WT_COUNT;
-		llwarns << "Bad Wearable asset: bad type #" << type <<  llendl;
+		LL_WARNS() << "Bad Wearable asset: bad type #" << type <<  LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 
 	// parameters header
 	if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 	{
-		llwarns << "Bad Wearable asset: early end of input stream " 
-				<< "while reading parameters header" << llendl;
+		LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+				<< "while reading parameters header" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	S32 num_parameters = -1;
 	if ( 1 != sscanf( buffer, "parameters %d\n", &num_parameters ) )
 	{
-		llwarns << "Bad Wearable asset: missing parameters block" << llendl;
+		LL_WARNS() << "Bad Wearable asset: missing parameters block" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	if ( num_parameters > MAX_WEARABLE_ASSET_PARAMETERS )
 	{
-		llwarns << "Bad Wearable asset: too many parameters, "
-				<< num_parameters << llendl;
+		LL_WARNS() << "Bad Wearable asset: too many parameters, "
+				<< num_parameters << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	if( num_parameters != mVisualParamIndexMap.size() )
 	{
-		llwarns << "Wearable parameter mismatch. Reading in " 
+		LL_WARNS() << "Wearable parameter mismatch. Reading in " 
 				<< num_parameters << " from file, but created " 
 				<< mVisualParamIndexMap.size() 
 				<< " from avatar parameters. type: " 
-				<<  getType() << llendl;
+				<<  getType() << LL_ENDL;
 	}
 
 	// parameters
@@ -361,15 +361,15 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	{
 		if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 		{
-			llwarns << "Bad Wearable asset: early end of input stream " 
-					<< "while reading parameter #" << i << llendl;
+			LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+					<< "while reading parameter #" << i << LL_ENDL;
 			return LLWearable::FAILURE;
 		}
 		S32 param_id = 0;
 		F32 param_weight = 0.f;
 		if ( 2 != sscanf( buffer, "%d %f\n", &param_id, &param_weight ) )
 		{
-			llwarns << "Bad Wearable asset: bad parameter, #" << i << llendl;
+			LL_WARNS() << "Bad Wearable asset: bad parameter, #" << i << LL_ENDL;
 			return LLWearable::FAILURE;
 		}
 		mSavedVisualParamMap[param_id] = param_weight;
@@ -378,20 +378,20 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	// textures header
 	if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 	{
-		llwarns << "Bad Wearable asset: early end of input stream " 
-				<< "while reading textures header" << i << llendl;
+		LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+				<< "while reading textures header" << i << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	S32 num_textures = -1;
 	if ( 1 != sscanf( buffer, "textures %d\n", &num_textures) )
 	{
-		llwarns << "Bad Wearable asset: missing textures block" << llendl;
+		LL_WARNS() << "Bad Wearable asset: missing textures block" << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 	if ( num_textures > MAX_WEARABLE_ASSET_TEXTURES )
 	{
-		llwarns << "Bad Wearable asset: too many textures, "
-				<< num_textures << llendl;
+		LL_WARNS() << "Bad Wearable asset: too many textures, "
+				<< num_textures << LL_ENDL;
 		return LLWearable::FAILURE;
 	}
 
@@ -400,8 +400,8 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 	{
 		if (!getNextPopulatedLine(input_stream, buffer, PARSE_BUFFER_SIZE))
 		{
-			llwarns << "Bad Wearable asset: early end of input stream " 
-					<< "while reading textures #" << i << llendl;
+			LL_WARNS() << "Bad Wearable asset: early end of input stream " 
+					<< "while reading textures #" << i << LL_ENDL;
 			return LLWearable::FAILURE;
 		}
 		S32 te = 0;
@@ -410,14 +410,14 @@ LLWearable::EImportResult LLWearable::importStream( std::istream& input_stream,
 				"%d %36s\n",
 				&te, uuid_buffer) )
 		{
-				llwarns << "Bad Wearable asset: bad texture, #" << i << llendl;
+				LL_WARNS() << "Bad Wearable asset: bad texture, #" << i << LL_ENDL;
 				return LLWearable::FAILURE;
 		}
 	
 		if( !LLUUID::validate( uuid_buffer ) )
 		{
-				llwarns << "Bad Wearable asset: bad texture uuid: " 
-						<< uuid_buffer << llendl;
+				LL_WARNS() << "Bad Wearable asset: bad texture uuid: " 
+						<< uuid_buffer << LL_ENDL;
 				return LLWearable::FAILURE;
 		}
 		LLUUID id = LLUUID(uuid_buffer);
@@ -656,7 +656,7 @@ void LLWearable::setVisualParamWeight(S32 param_index, F32 value, BOOL upload_ba
 	}
 	else
 	{
-		llerrs << "LLWearable::setVisualParam passed invalid parameter index: " << param_index << " for wearable type: " << this->getName() << llendl;
+		LL_ERRS() << "LLWearable::setVisualParam passed invalid parameter index: " << param_index << " for wearable type: " << this->getName() << LL_ENDL;
 	}
 }
 
@@ -669,7 +669,7 @@ F32 LLWearable::getVisualParamWeight(S32 param_index) const
 	}
 	else
 	{
-		llwarns << "LLWerable::getVisualParam passed invalid parameter index: "  << param_index << " for wearable type: " << this->getName() << llendl;
+		LL_WARNS() << "LLWerable::getVisualParam passed invalid parameter index: "  << param_index << " for wearable type: " << this->getName() << LL_ENDL;
 	}
 	return (F32)-1.0;
 }
diff --git a/indra/llappearance/llwearabledata.cpp b/indra/llappearance/llwearabledata.cpp
index 68fdcca782..089370dbc4 100644
--- a/indra/llappearance/llwearabledata.cpp
+++ b/indra/llappearance/llwearabledata.cpp
@@ -75,13 +75,13 @@ void LLWearableData::setWearable(const LLWearableType::EType type, U32 index, LL
 	wearableentry_map_t::iterator wearable_iter = mWearableDatas.find(type);
 	if (wearable_iter == mWearableDatas.end())
 	{
-		llwarns << "invalid type, type " << type << " index " << index << llendl; 
+		LL_WARNS() << "invalid type, type " << type << " index " << index << LL_ENDL; 
 		return;
 	}
 	wearableentry_vec_t& wearable_vec = wearable_iter->second;
 	if (index>=wearable_vec.size())
 	{
-		llwarns << "invalid index, type " << type << " index " << index << llendl; 
+		LL_WARNS() << "invalid index, type " << type << " index " << index << LL_ENDL; 
 	}
 	else
 	{
@@ -99,7 +99,7 @@ U32 LLWearableData::pushWearable(const LLWearableType::EType type,
 	if (wearable == NULL)
 	{
 		// no null wearables please!
-		llwarns << "Null wearable sent for type " << type << llendl;
+		LL_WARNS() << "Null wearable sent for type " << type << LL_ENDL;
 		return MAX_CLOTHING_PER_TYPE;
 	}
 	if (type < LLWearableType::WT_COUNT || mWearableDatas[type].size() < MAX_CLOTHING_PER_TYPE)
@@ -221,7 +221,7 @@ U32	LLWearableData::getWearableIndex(const LLWearable *wearable) const
 	wearableentry_map_t::const_iterator wearable_iter = mWearableDatas.find(type);
 	if (wearable_iter == mWearableDatas.end())
 	{
-		llwarns << "tried to get wearable index with an invalid type!" << llendl;
+		LL_WARNS() << "tried to get wearable index with an invalid type!" << LL_ENDL;
 		return MAX_CLOTHING_PER_TYPE;
 	}
 	const wearableentry_vec_t& wearable_vec = wearable_iter->second;
-- 
cgit v1.2.3


From cbe397ad13665c7bc993e10d8fe1e4a876253378 Mon Sep 17 00:00:00 2001
From: Richard Linden <none@none>
Date: Thu, 5 Sep 2013 14:04:13 -0700
Subject: changed fast timer over to using macro another attempt to move mem
 stat into base class

---
 indra/llappearance/llavatarappearance.cpp       |  2 +-
 indra/llappearance/llpolymorph.cpp              |  4 ++--
 indra/llappearance/llpolyskeletaldistortion.cpp |  4 ++--
 indra/llappearance/lltexlayer.cpp               | 28 ++++++++++++-------------
 indra/llappearance/lltexlayerparams.cpp         |  4 ++--
 5 files changed, 21 insertions(+), 21 deletions(-)

(limited to 'indra/llappearance')

diff --git a/indra/llappearance/llavatarappearance.cpp b/indra/llappearance/llavatarappearance.cpp
index 104594c554..4f0d0faa38 100644
--- a/indra/llappearance/llavatarappearance.cpp
+++ b/indra/llappearance/llavatarappearance.cpp
@@ -805,7 +805,7 @@ void LLAvatarAppearance::buildCharacter()
 
 BOOL LLAvatarAppearance::loadAvatar()
 {
-// 	LLFastTimer t(FTM_LOAD_AVATAR);
+// 	LL_RECORD_BLOCK_TIME(FTM_LOAD_AVATAR);
 	
 	// avatar_skeleton.xml
 	if( !buildSkeleton(sAvatarSkeletonInfo) )
diff --git a/indra/llappearance/llpolymorph.cpp b/indra/llappearance/llpolymorph.cpp
index e0790f8b5b..eb298db82a 100644
--- a/indra/llappearance/llpolymorph.cpp
+++ b/indra/llappearance/llpolymorph.cpp
@@ -525,7 +525,7 @@ F32	LLPolyMorphTarget::getMaxDistortion()
 //-----------------------------------------------------------------------------
 // apply()
 //-----------------------------------------------------------------------------
-static LLFastTimer::DeclareTimer FTM_APPLY_MORPH_TARGET("Apply Morph");
+static LLTrace::TimeBlock FTM_APPLY_MORPH_TARGET("Apply Morph");
 
 void LLPolyMorphTarget::apply( ESex avatar_sex )
 {
@@ -534,7 +534,7 @@ void LLPolyMorphTarget::apply( ESex avatar_sex )
 		return;
 	}
 
-	LLFastTimer t(FTM_APPLY_MORPH_TARGET);
+	LL_RECORD_BLOCK_TIME(FTM_APPLY_MORPH_TARGET);
 
 	mLastSex = avatar_sex;
 
diff --git a/indra/llappearance/llpolyskeletaldistortion.cpp b/indra/llappearance/llpolyskeletaldistortion.cpp
index 68119a8562..b778c15c22 100644
--- a/indra/llappearance/llpolyskeletaldistortion.cpp
+++ b/indra/llappearance/llpolyskeletaldistortion.cpp
@@ -179,11 +179,11 @@ BOOL LLPolySkeletalDistortion::setInfo(LLPolySkeletalDistortionInfo *info)
 //-----------------------------------------------------------------------------
 // apply()
 //-----------------------------------------------------------------------------
-static LLFastTimer::DeclareTimer FTM_POLYSKELETAL_DISTORTION_APPLY("Skeletal Distortion");
+static LLTrace::TimeBlock FTM_POLYSKELETAL_DISTORTION_APPLY("Skeletal Distortion");
 
 void LLPolySkeletalDistortion::apply( ESex avatar_sex )
 {
-	LLFastTimer t(FTM_POLYSKELETAL_DISTORTION_APPLY);
+	LL_RECORD_BLOCK_TIME(FTM_POLYSKELETAL_DISTORTION_APPLY);
 
         F32 effective_weight = ( getSex() & avatar_sex ) ? mCurWeight : getDefaultWeight();
 
diff --git a/indra/llappearance/lltexlayer.cpp b/indra/llappearance/lltexlayer.cpp
index 7521e74d7c..17199fdc4d 100644
--- a/indra/llappearance/lltexlayer.cpp
+++ b/indra/llappearance/lltexlayer.cpp
@@ -518,10 +518,10 @@ const LLTexLayerSetBuffer* LLTexLayerSet::getComposite() const
 	return mComposite;
 }
 
-static LLFastTimer::DeclareTimer FTM_GATHER_MORPH_MASK_ALPHA("gatherMorphMaskAlpha");
+static LLTrace::TimeBlock FTM_GATHER_MORPH_MASK_ALPHA("gatherMorphMaskAlpha");
 void LLTexLayerSet::gatherMorphMaskAlpha(U8 *data, S32 origin_x, S32 origin_y, S32 width, S32 height)
 {
-	LLFastTimer t(FTM_GATHER_MORPH_MASK_ALPHA);
+	LL_RECORD_BLOCK_TIME(FTM_GATHER_MORPH_MASK_ALPHA);
 	memset(data, 255, width * height);
 
 	for( layer_list_t::iterator iter = mLayerList.begin(); iter != mLayerList.end(); iter++ )
@@ -534,10 +534,10 @@ void LLTexLayerSet::gatherMorphMaskAlpha(U8 *data, S32 origin_x, S32 origin_y, S
 	renderAlphaMaskTextures(origin_x, origin_y, width, height, true);
 }
 
-static LLFastTimer::DeclareTimer FTM_RENDER_ALPHA_MASK_TEXTURES("renderAlphaMaskTextures");
+static LLTrace::TimeBlock FTM_RENDER_ALPHA_MASK_TEXTURES("renderAlphaMaskTextures");
 void LLTexLayerSet::renderAlphaMaskTextures(S32 x, S32 y, S32 width, S32 height, bool forceClear)
 {
-	LLFastTimer t(FTM_RENDER_ALPHA_MASK_TEXTURES);
+	LL_RECORD_BLOCK_TIME(FTM_RENDER_ALPHA_MASK_TEXTURES);
 	const LLTexLayerSetInfo *info = getInfo();
 	
 	bool use_shaders = LLGLSLShader::sNoFixedFunction;
@@ -1424,7 +1424,7 @@ BOOL LLTexLayer::blendAlphaTexture(S32 x, S32 y, S32 width, S32 height)
 	addAlphaMask(data, originX, originY, width, height);
 }
 
-static LLFastTimer::DeclareTimer FTM_RENDER_MORPH_MASKS("renderMorphMasks");
+static LLTrace::TimeBlock FTM_RENDER_MORPH_MASKS("renderMorphMasks");
 void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLColor4 &layer_color, bool force_render)
 {
 	if (!force_render && !hasMorph())
@@ -1432,7 +1432,7 @@ void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC
 		LL_DEBUGS() << "skipping renderMorphMasks for " << getUUID() << LL_ENDL;
 		return;
 	}
-	LLFastTimer t(FTM_RENDER_MORPH_MASKS);
+	LL_RECORD_BLOCK_TIME(FTM_RENDER_MORPH_MASKS);
 	BOOL success = TRUE;
 
 	llassert( !mParamAlphaList.empty() );
@@ -1575,10 +1575,10 @@ void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC
 	}
 }
 
-static LLFastTimer::DeclareTimer FTM_ADD_ALPHA_MASK("addAlphaMask");
+static LLTrace::TimeBlock FTM_ADD_ALPHA_MASK("addAlphaMask");
 void LLTexLayer::addAlphaMask(U8 *data, S32 originX, S32 originY, S32 width, S32 height)
 {
-	LLFastTimer t(FTM_ADD_ALPHA_MASK);
+	LL_RECORD_BLOCK_TIME(FTM_ADD_ALPHA_MASK);
 	S32 size = width * height;
 	const U8* alphaData = getAlphaData();
 	if (!alphaData && hasAlphaParams())
@@ -1921,10 +1921,10 @@ void LLTexLayerStaticImageList::deleteCachedImages()
 
 // Returns an LLImageTGA that contains the encoded data from a tga file named file_name.
 // Caches the result to speed identical subsequent requests.
-static LLFastTimer::DeclareTimer FTM_LOAD_STATIC_TGA("getImageTGA");
+static LLTrace::TimeBlock FTM_LOAD_STATIC_TGA("getImageTGA");
 LLImageTGA* LLTexLayerStaticImageList::getImageTGA(const std::string& file_name)
 {
-	LLFastTimer t(FTM_LOAD_STATIC_TGA);
+	LL_RECORD_BLOCK_TIME(FTM_LOAD_STATIC_TGA);
 	const char *namekey = mImageNames.addString(file_name);
 	image_tga_map_t::const_iterator iter = mStaticImageListTGA.find(namekey);
 	if( iter != mStaticImageListTGA.end() )
@@ -1951,10 +1951,10 @@ LLImageTGA* LLTexLayerStaticImageList::getImageTGA(const std::string& file_name)
 
 // Returns a GL Image (without a backing ImageRaw) that contains the decoded data from a tga file named file_name.
 // Caches the result to speed identical subsequent requests.
-static LLFastTimer::DeclareTimer FTM_LOAD_STATIC_TEXTURE("getTexture");
+static LLTrace::TimeBlock FTM_LOAD_STATIC_TEXTURE("getTexture");
 LLGLTexture* LLTexLayerStaticImageList::getTexture(const std::string& file_name, BOOL is_mask)
 {
-	LLFastTimer t(FTM_LOAD_STATIC_TEXTURE);
+	LL_RECORD_BLOCK_TIME(FTM_LOAD_STATIC_TEXTURE);
 	LLPointer<LLGLTexture> tex;
 	const char *namekey = mImageNames.addString(file_name);
 
@@ -2001,10 +2001,10 @@ LLGLTexture* LLTexLayerStaticImageList::getTexture(const std::string& file_name,
 
 // Reads a .tga file, decodes it, and puts the decoded data in image_raw.
 // Returns TRUE if successful.
-static LLFastTimer::DeclareTimer FTM_LOAD_IMAGE_RAW("loadImageRaw");
+static LLTrace::TimeBlock FTM_LOAD_IMAGE_RAW("loadImageRaw");
 BOOL LLTexLayerStaticImageList::loadImageRaw(const std::string& file_name, LLImageRaw* image_raw)
 {
-	LLFastTimer t(FTM_LOAD_IMAGE_RAW);
+	LL_RECORD_BLOCK_TIME(FTM_LOAD_IMAGE_RAW);
 	BOOL success = FALSE;
 	std::string path;
 	path = gDirUtilp->getExpandedFilename(LL_PATH_CHARACTER,file_name);
diff --git a/indra/llappearance/lltexlayerparams.cpp b/indra/llappearance/lltexlayerparams.cpp
index f800b31694..e1c4f11ada 100644
--- a/indra/llappearance/lltexlayerparams.cpp
+++ b/indra/llappearance/lltexlayerparams.cpp
@@ -239,10 +239,10 @@ BOOL LLTexLayerParamAlpha::getSkip() const
 }
 
 
-static LLFastTimer::DeclareTimer FTM_TEX_LAYER_PARAM_ALPHA("alpha render");
+static LLTrace::TimeBlock FTM_TEX_LAYER_PARAM_ALPHA("alpha render");
 BOOL LLTexLayerParamAlpha::render(S32 x, S32 y, S32 width, S32 height)
 {
-	LLFastTimer t(FTM_TEX_LAYER_PARAM_ALPHA);
+	LL_RECORD_BLOCK_TIME(FTM_TEX_LAYER_PARAM_ALPHA);
 	BOOL success = TRUE;
 
 	if (!mTexLayer)
-- 
cgit v1.2.3


From 697d2e720ba75e142a4d56ae8794bab8d7698dad Mon Sep 17 00:00:00 2001
From: Richard Linden <none@none>
Date: Tue, 15 Oct 2013 20:24:42 -0700
Subject: renamed TimeBlock to BlockTimerStatHandle

---
 indra/llappearance/llpolymorph.cpp              |  2 +-
 indra/llappearance/llpolyskeletaldistortion.cpp |  2 +-
 indra/llappearance/lltexlayer.cpp               | 14 +++++++-------
 indra/llappearance/lltexlayerparams.cpp         |  2 +-
 4 files changed, 10 insertions(+), 10 deletions(-)

(limited to 'indra/llappearance')

diff --git a/indra/llappearance/llpolymorph.cpp b/indra/llappearance/llpolymorph.cpp
index eb298db82a..ce8a0b0b76 100644
--- a/indra/llappearance/llpolymorph.cpp
+++ b/indra/llappearance/llpolymorph.cpp
@@ -525,7 +525,7 @@ F32	LLPolyMorphTarget::getMaxDistortion()
 //-----------------------------------------------------------------------------
 // apply()
 //-----------------------------------------------------------------------------
-static LLTrace::TimeBlock FTM_APPLY_MORPH_TARGET("Apply Morph");
+static LLTrace::BlockTimerStatHandle FTM_APPLY_MORPH_TARGET("Apply Morph");
 
 void LLPolyMorphTarget::apply( ESex avatar_sex )
 {
diff --git a/indra/llappearance/llpolyskeletaldistortion.cpp b/indra/llappearance/llpolyskeletaldistortion.cpp
index b778c15c22..a72b446ace 100644
--- a/indra/llappearance/llpolyskeletaldistortion.cpp
+++ b/indra/llappearance/llpolyskeletaldistortion.cpp
@@ -179,7 +179,7 @@ BOOL LLPolySkeletalDistortion::setInfo(LLPolySkeletalDistortionInfo *info)
 //-----------------------------------------------------------------------------
 // apply()
 //-----------------------------------------------------------------------------
-static LLTrace::TimeBlock FTM_POLYSKELETAL_DISTORTION_APPLY("Skeletal Distortion");
+static LLTrace::BlockTimerStatHandle FTM_POLYSKELETAL_DISTORTION_APPLY("Skeletal Distortion");
 
 void LLPolySkeletalDistortion::apply( ESex avatar_sex )
 {
diff --git a/indra/llappearance/lltexlayer.cpp b/indra/llappearance/lltexlayer.cpp
index 17199fdc4d..a634186df0 100644
--- a/indra/llappearance/lltexlayer.cpp
+++ b/indra/llappearance/lltexlayer.cpp
@@ -518,7 +518,7 @@ const LLTexLayerSetBuffer* LLTexLayerSet::getComposite() const
 	return mComposite;
 }
 
-static LLTrace::TimeBlock FTM_GATHER_MORPH_MASK_ALPHA("gatherMorphMaskAlpha");
+static LLTrace::BlockTimerStatHandle FTM_GATHER_MORPH_MASK_ALPHA("gatherMorphMaskAlpha");
 void LLTexLayerSet::gatherMorphMaskAlpha(U8 *data, S32 origin_x, S32 origin_y, S32 width, S32 height)
 {
 	LL_RECORD_BLOCK_TIME(FTM_GATHER_MORPH_MASK_ALPHA);
@@ -534,7 +534,7 @@ void LLTexLayerSet::gatherMorphMaskAlpha(U8 *data, S32 origin_x, S32 origin_y, S
 	renderAlphaMaskTextures(origin_x, origin_y, width, height, true);
 }
 
-static LLTrace::TimeBlock FTM_RENDER_ALPHA_MASK_TEXTURES("renderAlphaMaskTextures");
+static LLTrace::BlockTimerStatHandle FTM_RENDER_ALPHA_MASK_TEXTURES("renderAlphaMaskTextures");
 void LLTexLayerSet::renderAlphaMaskTextures(S32 x, S32 y, S32 width, S32 height, bool forceClear)
 {
 	LL_RECORD_BLOCK_TIME(FTM_RENDER_ALPHA_MASK_TEXTURES);
@@ -1424,7 +1424,7 @@ BOOL LLTexLayer::blendAlphaTexture(S32 x, S32 y, S32 width, S32 height)
 	addAlphaMask(data, originX, originY, width, height);
 }
 
-static LLTrace::TimeBlock FTM_RENDER_MORPH_MASKS("renderMorphMasks");
+static LLTrace::BlockTimerStatHandle FTM_RENDER_MORPH_MASKS("renderMorphMasks");
 void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLColor4 &layer_color, bool force_render)
 {
 	if (!force_render && !hasMorph())
@@ -1575,7 +1575,7 @@ void LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC
 	}
 }
 
-static LLTrace::TimeBlock FTM_ADD_ALPHA_MASK("addAlphaMask");
+static LLTrace::BlockTimerStatHandle FTM_ADD_ALPHA_MASK("addAlphaMask");
 void LLTexLayer::addAlphaMask(U8 *data, S32 originX, S32 originY, S32 width, S32 height)
 {
 	LL_RECORD_BLOCK_TIME(FTM_ADD_ALPHA_MASK);
@@ -1921,7 +1921,7 @@ void LLTexLayerStaticImageList::deleteCachedImages()
 
 // Returns an LLImageTGA that contains the encoded data from a tga file named file_name.
 // Caches the result to speed identical subsequent requests.
-static LLTrace::TimeBlock FTM_LOAD_STATIC_TGA("getImageTGA");
+static LLTrace::BlockTimerStatHandle FTM_LOAD_STATIC_TGA("getImageTGA");
 LLImageTGA* LLTexLayerStaticImageList::getImageTGA(const std::string& file_name)
 {
 	LL_RECORD_BLOCK_TIME(FTM_LOAD_STATIC_TGA);
@@ -1951,7 +1951,7 @@ LLImageTGA* LLTexLayerStaticImageList::getImageTGA(const std::string& file_name)
 
 // Returns a GL Image (without a backing ImageRaw) that contains the decoded data from a tga file named file_name.
 // Caches the result to speed identical subsequent requests.
-static LLTrace::TimeBlock FTM_LOAD_STATIC_TEXTURE("getTexture");
+static LLTrace::BlockTimerStatHandle FTM_LOAD_STATIC_TEXTURE("getTexture");
 LLGLTexture* LLTexLayerStaticImageList::getTexture(const std::string& file_name, BOOL is_mask)
 {
 	LL_RECORD_BLOCK_TIME(FTM_LOAD_STATIC_TEXTURE);
@@ -2001,7 +2001,7 @@ LLGLTexture* LLTexLayerStaticImageList::getTexture(const std::string& file_name,
 
 // Reads a .tga file, decodes it, and puts the decoded data in image_raw.
 // Returns TRUE if successful.
-static LLTrace::TimeBlock FTM_LOAD_IMAGE_RAW("loadImageRaw");
+static LLTrace::BlockTimerStatHandle FTM_LOAD_IMAGE_RAW("loadImageRaw");
 BOOL LLTexLayerStaticImageList::loadImageRaw(const std::string& file_name, LLImageRaw* image_raw)
 {
 	LL_RECORD_BLOCK_TIME(FTM_LOAD_IMAGE_RAW);
diff --git a/indra/llappearance/lltexlayerparams.cpp b/indra/llappearance/lltexlayerparams.cpp
index e1c4f11ada..f1f7d07fa9 100644
--- a/indra/llappearance/lltexlayerparams.cpp
+++ b/indra/llappearance/lltexlayerparams.cpp
@@ -239,7 +239,7 @@ BOOL LLTexLayerParamAlpha::getSkip() const
 }
 
 
-static LLTrace::TimeBlock FTM_TEX_LAYER_PARAM_ALPHA("alpha render");
+static LLTrace::BlockTimerStatHandle FTM_TEX_LAYER_PARAM_ALPHA("alpha render");
 BOOL LLTexLayerParamAlpha::render(S32 x, S32 y, S32 width, S32 height)
 {
 	LL_RECORD_BLOCK_TIME(FTM_TEX_LAYER_PARAM_ALPHA);
-- 
cgit v1.2.3