|
b60fe31f
|
2014-09-26T14:56:41
|
|
Fix the ANGLE_ENABLE_TRACE build.
We needed to include angleutils.cpp in libtranslator for this to
compile. Also allow the event helpers to record API calls even
if ANGLE_ENABLE_PERF is off.
BUG=angle:513
Change-Id: I2646d5ebeae536a4a7f1cd7ecaf0ce019ce5ff76
Reviewed-on: https://chromium-review.googlesource.com/219756
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
da5777cf
|
2014-07-11T09:52:58
|
|
Create an Error object to represent GL errors.
BUG=angle:520
Change-Id: I1a54e6f308b5b0f310c725a7771af737a77ecd42
Reviewed-on: https://chromium-review.googlesource.com/209619
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
44fa7594
|
2014-05-30T11:50:07
|
|
Refactor platform related functionality into platform.h and tls.h.
Since libGLESv2 and libEGL will eventually be cross platform, it will be
useful to have platform defines and TLS functions that work everywhere.
BUG=angle:664
Change-Id: Ia357925a0992d82e8b446d88d32a1984d319e6e8
Reviewed-on: https://chromium-review.googlesource.com/202133
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2515c520
|
2014-03-07T10:28:43
|
|
Fix compile errors on pre-C++11 compilers.
BUG=angle:575
Change-Id: Ibad77fda193c850c29483aa56d0d2275c131429a
Reviewed-on: https://chromium-review.googlesource.com/189163
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
feee44bf
|
2014-03-05T11:34:31
|
|
Keep the debug log file open and flush with each message.
Instead of opening and closing the debug log file with each message, keep
it open permanently and flush it with each message, allowing the OS to
flush to disk as needed. With debug logging enabled, performance is improved
by 100x!
Also, dynamically size the output buffer to the max message size. When
running all the samples, the largest debug message was 318 characters so
an initial size of 512 (instead of 32768) seems reasonable.
BUG=angle:575
Change-Id: If4a1387431fc2d32a6b2d1f9ca1f2590473feb86
Reviewed-on: https://chromium-review.googlesource.com/188713
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
83217796
|
2014-01-16T09:52:38
|
|
Remove system.h.
The gyp files already define NOMINMAX and WIN32_LEAN_AND_MEAN. windows.h
is also included via the D3D includes.
This ends up speeding up the build process significantly by not having
windows.h included in nearly every file.
Also fixes issues on non-windows systems by not having stdarg.h included
in debug.cpp.
Change-Id: Id32d9aac37a5a29df832a062dd8024302a798a1c
Reviewed-on: https://chromium-review.googlesource.com/183251
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f5713124
|
2013-10-07T17:06:30
|
|
Rework tracing and perf defines.
Changed ANGLE_DISABLE_* to ANGLE_ENABLE_* for perf and tracing defines so
they are disabled by default. Updated the gyp files to only turn on perf
by default for windows debug builds.
Change-Id: I71706674e6d12fbf4208acc8f100d963b82c7674
Reviewed-on: https://chromium-review.googlesource.com/183250
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6850947e
|
2013-10-07T17:06:30
|
|
Added a define that removes d3d includes from the common directory so that d3d9 headers are not included in the translator project.
|
|
486d9e9b
|
2013-02-28T23:15:41
|
|
Remove a lot of unnecessary include files and break include chains.
This should speed up incremental compile times when modifying headers, by reducing the number of dependencies.
TRAC #22518
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Jamie Madill
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1937 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a9b96d0d
|
2013-01-25T21:56:18
|
|
Include windows.h from one place to ensure that min and max macros are not defined.
These conflict with the STL functions of the same name.
This is to make the standalone ANGLE gyp build work again.
Review URL: https://codereview.appspot.com/7211043
Also includes r1729 which adds the missing new file.
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1790 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
5dc3b8b4
|
2012-11-28T19:43:49
|
|
Don't call gl::output unless perf is enabled.
gl::output allocates a pretty large stack buffer, so it has to call _chkstk. This is rather slow, so avoid calling gl::output if perf and tracing are disabled.
BUG=
Review URL: https://codereview.appspot.com/6843043
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1471 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
95a758f3
|
2012-07-12T15:17:06
|
|
Remove dos-style line-endings (EOL changes only)
git-svn-id: https://angleproject.googlecode.com/svn/trunk@1218 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
d08aa75e
|
2012-01-20T23:50:06
|
|
Increase size of output buffer for pix to 32768
We output entire hlsl shaders into this buffer, so 4096 bytes was too small.
BUG=
TEST=
Review URL: https://codereview.appspot.com/5532094
git-svn-id: https://angleproject.googlecode.com/svn/trunk@953 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
eef0e27c
|
2011-10-12T16:19:36
|
|
Fix link errors caused by static use of perf related functions even when ANGLE_DISABLE_PERF is defined.
Bug=225
Author: Mark Callow
git-svn-id: https://angleproject.googlecode.com/svn/trunk@788 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
73bec982
|
2011-05-12T18:15:03
|
|
Cache result of D3DPERF_GetStatus.
I profiled the WebGL acquarium with AMD CodeAnalyst and it turns out this function got a lot of hits. Top 10 before change:
CS:EIP Symbol + Offset 64-bit Timer samples
0x62a87260 CBatchFilterI::ProcessBatch 13.41
0x62a171f1 D3DPERF_GetStatus 6.04
0x629ce831 CD3DBase::SetVertexShaderConstantF_FP 5.12
0x62a88bea CBatchFilterI::GetBatchBufferPointer<_LH_SETPIXELSHADERCONSTIMM_TOKEN_SMALL> 4.61
0x6298060b UpdateViewportCache 4.2
0x6298da3a CD3DBase::UpdateTextures 3.58
0x6298db6b CD3DDDIDX10::SetTexture 2.76
0x6298df1d CD3DDDIDX10::InsertStreamSource 2.46
0x629d1c1a CD3DBase::SetPixelShaderConstantF_FP 2.25
0x6297efc4 CD3DHal::SetSamplerState_FP 2.05
10 functions, 186 instructions, Total: 454 samples, 46.47% of shown samples, 2.51% of total session samples
And after:
CS:EIP Symbol + Offset 64-bit Timer samples
0x69317260 CBatchFilterI::ProcessBatch 13.87
0x69318bea CBatchFilterI::GetBatchBufferPointer<_LH_SETPIXELSHADERCONSTIMM_TOKEN_SMALL> 5.84
0x6921060b UpdateViewportCache 5.29
0x6925e831 CD3DBase::SetVertexShaderConstantF_FP 4.93
0x6921da3a CD3DBase::UpdateTextures 4.38
0x6921e034 CD3DBase::SetStreamSource_FP 3.65
0x69261c1a CD3DBase::SetPixelShaderConstantF_FP 3.65
0x69227651 CD3DBase::DrawIndexedPrimitive 2.74
0x6920efc4 CD3DHal::SetSamplerState_FP 2.37
0x6925e9f7 CD3DBase::SetVertexShaderConstantIntF 2.37
10 functions, 152 instructions, Total: 269 samples, 49.09% of shown samples, 0.80% of total session samples
UpdateViewportCache looks like it might be low hanging fruit as well.
Review URL: http://codereview.appspot.com/4535049
git-svn-id: https://angleproject.googlecode.com/svn/trunk@648 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
0f4cefe9
|
2011-01-26T19:30:57
|
|
Map D3D calls and HLSL shaders back to GLES2 calls and GLSL ES shaders in PIX.
This makes debugging and profiling using PIX a lot more convenient. The top level of events are the GLES calls with their arguments. Those can be expanded to see the D3D calls that were issued for a particular GLES call.
When PIX is attached, the shaders are saved out to temporary files and referenced from the translated HLSL shaders via #line directives. This enabled source level debugging of the original GLSL from PIX for pixel and vertex shaders. The HLSL is also saved to a temporary file so that intrinsic functions like texture2D can be stepped into.
It also avoids creating a text file in the current working directory, which has continued to be an issue.
I made the dependency on d3d9.dll static again so it can be accessed by GetModuleHandle witihin DllMain.
I added an EVENT macro that issues D3DPERF_BeginEvent and D3DPERF_EndEvent around a C++ block. I replaced TRACE with EVENT for all the entry points.
I removed the tracing of shader source since the source is visible in PIX.
The means by which the filename of the temporary shader file is passed into the shader compiler is a little clunky. I did it that way to avoid changing the function signatures and breaking folks using the translator.
I plan to make the compiler respect #pragma optimize so that optimization can be disabled for debugging purposes. For now it just disables shader optimization in debug builds of ANGLE.
Review URL: http://codereview.appspot.com/3945043
git-svn-id: https://angleproject.googlecode.com/svn/trunk@541 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
71557745
|
2011-01-06T21:46:29
|
|
Added a compile flag so that writing to the debug log file can be turned off.
Review URL: http://codereview.appspot.com/3733043/
git-svn-id: https://angleproject.googlecode.com/svn/trunk@524 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
c1693978
|
2010-10-06T02:34:39
|
|
Made debug log filename compile time configurable.
Define TRACE_OUTPUT_FILE macro to change filename. Default remains "debug.txt" for Visual Studio solution based build. Gyp based build uses "angle-debug.txt".
Review URL: http://codereview.appspot.com/2327043
git-svn-id: https://angleproject.googlecode.com/svn/trunk@445 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
442b7deb
|
2010-05-12T03:41:01
|
|
Re-enable debug tracing by default
TRAC #12158
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@263 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
a54da4e5
|
2010-05-07T13:03:28
|
|
Implemented inline structure construction
TRAC #12109
Based on Alok Priyadarshi's approach for structure construction in OutputGLSL.cpp
Signed-off-by: Andrew Lewycky
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@245 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
e7e43fb9
|
2010-04-22T13:35:23
|
|
Make it easier to disable tracing
TRAC #11979
Signed-off-by: Shannon Woods
Signed-off-by: Daniel Koch
Author: Andrew Lewycky
git-svn-id: https://angleproject.googlecode.com/svn/trunk@178 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
bbf56f75
|
2010-04-20T18:52:13
|
|
Use directory qualified #include files
Trac #11408
Signed-off-by: Andrew Lewycky
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@165 736b8ea6-26fd-11df-bfd4-992fa37f6226
|
|
5903aeb1
|
2010-03-17T13:11:57
|
|
Move Common -> src/common
Trac #11406
Signed-off-by: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/trunk@34 736b8ea6-26fd-11df-bfd4-992fa37f6226
|