external/sawbuck.git
26 hours agoAdd invalid a missing statement in LivenessAnalysis example. master
etienneb@chromium.org [Fri, 24 May 2013 20:49:19 +0000 (20:49 +0000)]
Add invalid a missing statement in LivenessAnalysis example.

R=rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9742045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1541 15e8cca8-e42c-11de-a347-f34a4f72eb7d

27 hours agoDump symbol callers and callees correctly.
siggi@chromium.org [Fri, 24 May 2013 19:51:12 +0000 (19:51 +0000)]
Dump symbol callers and callees correctly.

R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/9748043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1540 15e8cca8-e42c-11de-a347-f34a4f72eb7d

29 hours agoFix some coverage issues with the LivenessAnalysis unittests.
etienneb@chromium.org [Fri, 24 May 2013 17:31:10 +0000 (17:31 +0000)]
Fix some coverage issues with the LivenessAnalysis unittests.
R=rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9710043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1539 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 days agoEnable the instrumentation of the JMP and CALL instructions.
sebmarchand@chromium.org [Thu, 23 May 2013 19:49:50 +0000 (19:49 +0000)]
Enable the instrumentation of the JMP and CALL instructions.

I've run some benchmark on this and the results are the opposite of what I was expecting... I was sure that this'll introduce a slowdown but I see a speed up...

new:
609.44runs/s : http://dromaeo.com/?id=195653
612.06runs/s : http://dromaeo.com/?id=195654
601.18runs/s : http://dromaeo.com/?id=195655
622.20runs/s : http://dromaeo.com/?id=195659
Avg: 611.22

master:
581.27runs/s : http://dromaeo.com/?id=195656
582.38runs/s : http://dromaeo.com/?id=195657
590.78runs/s : http://dromaeo.com/?id=195658
Avg: 584.81

I've run the benchmark several times, in different order etc and those number are consistents... I'll try to understand why :)

With this the dll size grow from 66,055,680 bytes to 66,824,192 bytes (1.16%).

R=etienneb@chromium.org, rogerm@chromium.org, siggi@chromium.org

BUG=

Review URL: https://codereview.appspot.com/9688044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1538 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 days agoValidate instruction decoding in Liveness Unittests
etienneb@chromium.org [Thu, 23 May 2013 17:35:30 +0000 (17:35 +0000)]
Validate instruction decoding in Liveness Unittests
R=rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9678044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1537 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 days agoMake export names a little more unique and consistent.
siggi@chromium.org [Thu, 23 May 2013 17:20:45 +0000 (17:20 +0000)]
Make export names a little more unique and consistent.

R=sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9685044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1536 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 days agoFix some coding style nits in ASAN.
etienneb@chromium.org [Thu, 23 May 2013 15:55:08 +0000 (15:55 +0000)]
Fix some coding style nits in ASAN.

R=rogerm@chromium.org, sebmarchand@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9656044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1535 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 days agoAvoid running liveness analysis when not activated.
etienneb@chromium.org [Thu, 23 May 2013 14:59:15 +0000 (14:59 +0000)]
Avoid running liveness analysis when not activated.

R=rogerm@chromium.org, sebmarchand@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9691043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1534 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 days agoPoison the shadow memory.
sebmarchand@chromium.org [Thu, 23 May 2013 14:53:13 +0000 (14:53 +0000)]
Poison the shadow memory.

BUG=
R=etienneb@chromium.org, rogerm@chromium.org, siggi@chromium.org

Review URL: https://codereview.appspot.com/9679043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1533 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 days agoExclude internal/ from coverage stats
rogerm@chromium.org [Thu, 23 May 2013 14:01:34 +0000 (14:01 +0000)]
Exclude internal/ from coverage stats

R=sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9652043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1532 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days agoAdd an unittest to ensure that the shadow memory is unpoisoned correctly.
sebmarchand@chromium.org [Wed, 22 May 2013 21:41:10 +0000 (21:41 +0000)]
Add an unittest to ensure that the shadow memory is unpoisoned correctly.

BUG=
R=siggi@chromium.org

Review URL: https://codereview.appspot.com/9658044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1531 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days agoProfiler: Support dynamic symbol callees.
siggi@chromium.org [Wed, 22 May 2013 20:37:29 +0000 (20:37 +0000)]
Profiler: Support dynamic symbol callees.

R=sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9655043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1530 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days ago2 Moar optimizations to SyzyASan ! (Slow path only)
sebmarchand@chromium.org [Wed, 22 May 2013 19:28:10 +0000 (19:28 +0000)]
2 Moar optimizations to SyzyASan ! (Slow path only)

1) We can use the fact that the shadow non accessible byte mask is a signed negative value to remove one instruction from the slow path.
2) In the slow path we can use DH instead of EAX. This save a push/pop eax.

This bring a 2% perf improvement...

This CL:
609.10runs/s : http://dromaeo.com/?id=195572
607.13runs/s : http://dromaeo.com/?id=195573
605.65runs/s : http://dromaeo.com/?id=195574
Avg: 607.29

master@r1527:
602.75runs/s : http://dromaeo.com/?id=195575
586.02runs/s : http://dromaeo.com/?id=195578
597.39runs/s : http://dromaeo.com/?id=195577
Avg: 595.39

R=siggi@chromium.org

BUG=

Review URL: https://codereview.appspot.com/9666043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1529 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days agoChecking in version 1527 release binaries.
sebmarchand@chromium.org [Wed, 22 May 2013 17:40:11 +0000 (17:40 +0000)]
Checking in version 1527 release binaries.

R=rogerm@chromium.org

BUG=

Review URL: https://codereview.appspot.com/9657043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1528 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days agoAdd more instruction definitions to liveness analysis.
etienneb@chromium.org [Wed, 22 May 2013 15:41:25 +0000 (15:41 +0000)]
Add more instruction definitions to liveness analysis.

This bring less than .5% of instructions coverage in chrome.

R=rogerm@chromium.org, sebmarchand@chromium.org

BUG=

Review URL: https://codereview.appspot.com/9203044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1527 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days agoUpdate the release notes and bump the version number.
sebmarchand@chromium.org [Wed, 22 May 2013 15:20:47 +0000 (15:20 +0000)]
Update the release notes and bump the version number.

BUG=
R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/9642044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1526 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days agoUpdate IID for logger interface.
rogerm@chromium.org [Wed, 22 May 2013 15:12:41 +0000 (15:12 +0000)]
Update IID for logger interface.

TBR= siggi@chromium.org

Review URL: https://codereview.appspot.com/9650044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1525 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 days agoUpdate asan rtl for minidump generation.
rogerm@chromium.org [Wed, 22 May 2013 14:34:31 +0000 (14:34 +0000)]
Update asan rtl for minidump generation.

R=sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9609044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1524 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 days agoAdd mini-dump generation to the logger.
rogerm@chromium.org [Tue, 21 May 2013 19:23:18 +0000 (19:23 +0000)]
Add mini-dump generation to the logger.

R=etienneb@chromium.org, sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9352045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1523 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 days agoAdd a variant of the asan hooks that don't save the flags and call them when possible.
sebmarchand@chromium.org [Tue, 21 May 2013 13:58:36 +0000 (13:58 +0000)]
Add a variant of the asan hooks that don't save the flags and call them when possible.

This is hidden behind a flag that is disabled by default

BUG=
R=rogerm@chromium.org, siggi@chromium.org

Review URL: https://codereview.appspot.com/9099045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1522 15e8cca8-e42c-11de-a347-f34a4f72eb7d

8 days agoSmall change for C++ readability.
etienneb@chromium.org [Fri, 17 May 2013 22:39:12 +0000 (22:39 +0000)]
Small change for C++ readability.

Original CL: https://codereview.appspot.com/8577044/
R=dominich@google.com
BUG=

Review URL: https://codereview.appspot.com/9385043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1521 15e8cca8-e42c-11de-a347-f34a4f72eb7d

8 days agoReduce the memory overhead per block and add the TIDs to the header.
sebmarchand@chromium.org [Thu, 16 May 2013 23:21:16 +0000 (23:21 +0000)]
Reduce the memory overhead per block and add the TIDs to the header.

Instead of having a big redzone at the beginning and at the end of each blocks (at least 64 bytes in total) we now have a static overhead of 36 bytes split in two redzones, one in front of the block and the other one after it. The new layout of a memory access is as follow:
L L L L X X ... X X R R R R P
L: 4 byte of header redzone.
X: User allocation
R: 4 byte of trailer redzone.
P: Padding to be 8-byte aligned

The header and trailer are composed as follow:

- Magic number             24 bits
- State                    8 bits(1)
- Allocation stack trace   32 bits
- Block size               32 bits
- Alloc TID                32 bits
                  Total:   128 bits

Trailer
- Timestamp                64 bits
- Free stack trace         32 bits
- Free TID                 32 bits
- Next free block          32 bits
                  Total:   160 bits

(1) We could use less bits here but as we want the redzone to be 8-byte aligned we've room for those extra bits.

We see a 2x improvement on the memory usage (overhead ratio = allocated bytes / requested bytes):
Trunk@r1510:
Browser:
Overhead ratio: 1.666697
Renderer:
Overhead ratio: 1.293409

New Block header version:
Browser:
Overhead ratio: 1.329258
Renderer:
Overhead ratio: 1.144337

Here's 3 runs of the dromaeo benchmark to measure the impact on the performances (this CL / trunk@r1510):
585.38 / 593.95
598.04 / 579.53
585.27 / 574.62
Avg of the 3 runs : 589.563 / 582.7

Those results are similar, so this doesn't seems to introduce a slowdown (we even see a 1-2% improvement but this can due to the imprecision of dromaeo...)

BUG=
R=siggi@chromium.org

Review URL: https://codereview.appspot.com/9400043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1520 15e8cca8-e42c-11de-a347-f34a4f72eb7d

9 days agoFix invalid post-order flatten in liveness analysis.
etienneb@chromium.org [Thu, 16 May 2013 14:21:50 +0000 (14:21 +0000)]
Fix invalid post-order flatten in liveness analysis.
R=rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9232047

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1519 15e8cca8-e42c-11de-a347-f34a4f72eb7d

10 days agoAsan Runtime: No looping under quarantine lock.
siggi@chromium.org [Wed, 15 May 2013 15:17:49 +0000 (15:17 +0000)]
Asan Runtime: No looping under quarantine lock.

This should reduce contention on the quarantine lock.
As-is it may be held over arbitrarily many shadow and HeapFree operations when large allocations are freed, and the quarantine is at max.

For single-threaded code, this has negligible performance effects, here's three Dromaeo DOM runs:

Before: 538.80 + 550.15 + 535.19, avg: 541.38
After: 533.67 + 551.89 + 540.97, avg: 542.18

R=sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9421044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1515 15e8cca8-e42c-11de-a347-f34a4f72eb7d

11 days agoAdd trace common unittests to build_all
rogerm@chromium.org [Tue, 14 May 2013 20:53:26 +0000 (20:53 +0000)]
Add trace common unittests to build_all

R= etienneb@chromium.org, sebmarchand@chromium.org
TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/9255045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1514 15e8cca8-e42c-11de-a347-f34a4f72eb7d

11 days agoRollback of this CL: https://codereview.appspot.com/9384043/
etienneb@chromium.org [Tue, 14 May 2013 20:01:33 +0000 (20:01 +0000)]
Rollback of this CL: https://codereview.appspot.com/9384043/

R=rogerm@chromium.org

BUG=

Review URL: https://codereview.appspot.com/9412043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1513 15e8cca8-e42c-11de-a347-f34a4f72eb7d

12 days agoFix invalid cast in asan instrumentation.
etienneb@chromium.org [Mon, 13 May 2013 21:33:35 +0000 (21:33 +0000)]
Fix invalid cast in asan instrumentation.
R=rogerm@chromium.org, sebmarchand@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9282044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1510 15e8cca8-e42c-11de-a347-f34a4f72eb7d

12 days agoAdd compiland path information to block graph.
etienneb@chromium.org [Mon, 13 May 2013 18:59:33 +0000 (18:59 +0000)]
Add compiland path information to block graph.

R=rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9384043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1509 15e8cca8-e42c-11de-a347-f34a4f72eb7d

12 days agoFix coding style issues detected by CPPCheck.
etienneb@chromium.org [Mon, 13 May 2013 13:37:16 +0000 (13:37 +0000)]
Fix coding style issues detected by CPPCheck.
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9289045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1508 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix missing variable initialisation in service unittest.
etienneb@chromium.org [Fri, 10 May 2013 19:53:19 +0000 (19:53 +0000)]
Fix missing variable initialisation in service unittest.
R=chrisha@chromium.org,rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9347043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1506 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix invalid cast of false to pointer.
etienneb@chromium.org [Fri, 10 May 2013 19:42:30 +0000 (19:42 +0000)]
Fix invalid cast of false to pointer.
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9144047

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1505 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix invalid use of printf and StringPiece.
etienneb@chromium.org [Fri, 10 May 2013 19:26:48 +0000 (19:26 +0000)]
Fix invalid use of printf and StringPiece.
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9250045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1504 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoAdd more aggressive optimization settings to our official builds.
chrisha@chromium.org [Fri, 10 May 2013 17:06:24 +0000 (17:06 +0000)]
Add more aggressive optimization settings to our official builds.

This disables buffer security checks, enables optimization for speed, and enables link-time code generation. This improves performance of ASAN on the Dromaeo benchmark by about 4%:

Old Slowdown, New Slowdown
3.74, 3.66
3.31, 3.06
2.93, 2.86
2.56, 2.50

BUG=
R=rogerm@chromium.org, sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9187045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1503 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix missing expect in PE file parser unittests.
etienneb@chromium.org [Fri, 10 May 2013 16:57:37 +0000 (16:57 +0000)]
Fix missing expect in PE file parser unittests.
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9101046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1502 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoUse lahf/sahf instead of pushfd/popfd in BasicBlockCount agent.
etienneb@chromium.org [Fri, 10 May 2013 15:58:34 +0000 (15:58 +0000)]
Use lahf/sahf instead of pushfd/popfd in BasicBlockCount agent.

This give a 2x speedup on an instrumented image.

Dromaeo DOM

No instrumention
 (run/s)
  935.94
  451.68
16198.74
  434.02

Using pushfd/popfd
(Release)
   21.57
   14.76
  508.90
   17.01

Using pushfd/popfd
(Release / Official Build [-DCHECK])
 (run/s)
   34.79
   23.75
  778.90
   26.90

Using lahf/sahf
(Release / Official Build [-DCHECK])
   71.63
   42.40
 1484.45
   51.37

R=rogerm@chromium.org, sebmarchand@chromium.org

BUG=

Review URL: https://codereview.appspot.com/9301046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1501 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix bugs found by PVS Studio linter.
etienneb@chromium.org [Fri, 10 May 2013 15:24:53 +0000 (15:24 +0000)]
Fix bugs found by PVS Studio linter.
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9268045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1500 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix a StringPiece bug in JSONFileWriter.
chrisha@chromium.org [Fri, 10 May 2013 14:19:45 +0000 (14:19 +0000)]
Fix a StringPiece bug in JSONFileWriter.

BUG=
R=siggi@chromium.org

Review URL: https://codereview.appspot.com/9232044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1499 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFind a printf bug found by a linter.
chrisha@chromium.org [Fri, 10 May 2013 14:02:04 +0000 (14:02 +0000)]
Find a printf bug found by a linter.

This is potentially unsafe as StringPiece objects aren't guaranteed to be NULL terminated. The reinterpret cast to 'char*' is only coincidentally safe, but incorrect.

BUG=
R=etienneb@chromium.org

Review URL: https://codereview.appspot.com/9273047

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1498 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix for new []/delete bug found by DrMemory.
chrisha@chromium.org [Fri, 10 May 2013 10:06:17 +0000 (10:06 +0000)]
Fix for new []/delete bug found by DrMemory.

BUG=
TBR=etienneb@chromium.org

Review URL: https://codereview.appspot.com/9342043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1497 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoProfiler: Add test coverage for moving dynamic symbols, fix bugs that fell out.
siggi@chromium.org [Thu, 9 May 2013 20:01:15 +0000 (20:01 +0000)]
Profiler: Add test coverage for moving dynamic symbols, fix bugs that fell out.

R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/9328043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1496 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoRefactor Logger to use trace::common::Service.
chrisha@chromium.org [Thu, 9 May 2013 16:32:00 +0000 (16:32 +0000)]
Refactor Logger to use trace::common::Service.

BUG=
R=rogerm@chromium.org, sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9024048

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1495 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoChecking in version 1492 release binaries.
rogerm@chromium.org [Thu, 9 May 2013 13:58:59 +0000 (13:58 +0000)]
Checking in version 1492 release binaries.

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/9115045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1494 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoAdds exports to profile_client.dll to support pushing dynamic symbol information...
siggi@chromium.org [Thu, 9 May 2013 13:10:51 +0000 (13:10 +0000)]
Adds exports to profile_client.dll to support pushing dynamic symbol information at it. Extends the invocation data format to store symbols for caller and callee, and implements support for resolving callers to symbols.
Support for callee will follow in a separate CL. This will involve another export to avoid a redundant lookup for non-dynamic callees.

R=chrisha@chromium.org, rogerm@chromium.org

Review URL: https://codereview.appspot.com/9120043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1493 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoBump version to 0.2.20.0
rogerm@chromium.org [Thu, 9 May 2013 05:59:34 +0000 (05:59 +0000)]
Bump version to 0.2.20.0

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/9033051

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1492 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoEnable fuzzing in the reliability bot.
rogerm@chromium.org [Thu, 9 May 2013 05:39:51 +0000 (05:39 +0000)]
Enable fuzzing in the reliability bot.

R=etienneb@chromium.org

Review URL: https://codereview.appspot.com/9188045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1491 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoCut shadow size in half.
sebmarchand@chromium.org [Thu, 9 May 2013 02:58:27 +0000 (02:58 +0000)]
Cut shadow size in half.

As Chrome is not /LARGEADDRESSAWARE, we can cut the size of the shadow memory in half, which will increase Chrome's address space by 256Mb, and incidentally also drop 256Mb from it's "memory usage".

BUG=
R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/9309043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1490 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoMove fuzzing transform from instrumenter to relinker.
rogerm@chromium.org [Wed, 8 May 2013 19:32:34 +0000 (19:32 +0000)]
Move fuzzing transform from instrumenter to relinker.

- Moves the fuzzing transform from instrument_lib to block_graph.
- Fixes the fallout in the unit-tests.
- Removes the --fuzzing mode from the instrumenter.
- Adds --fuzz as a generally applicably option to the relinker.

R=chrisha@chromium.org, etienneb@chromium.org

Review URL: https://codereview.appspot.com/9172044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1489 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoDon't delete a held lock.
siggi@chromium.org [Wed, 8 May 2013 14:48:11 +0000 (14:48 +0000)]
Don't delete a held lock.

R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/9299043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1488 15e8cca8-e42c-11de-a347-f34a4f72eb7d

2 weeks agoFix off-by-one ID in the basic block entry count instrumentation.
etienneb@chromium.org [Tue, 7 May 2013 14:13:00 +0000 (14:13 +0000)]
Fix off-by-one ID in the basic block entry count instrumentation.
R=rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9235043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1487 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoAdd instruction movzx to assembly.
etienneb@chromium.org [Fri, 3 May 2013 21:25:47 +0000 (21:25 +0000)]
Add instruction movzx to assembly.
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9096046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1486 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoCentralize service utilities and create Service base class.
chrisha@chromium.org [Fri, 3 May 2013 20:24:27 +0000 (20:24 +0000)]
Centralize service utilities and create Service base class.

A following CL will refactor Logger to derive from Service, and do the same to RpcService (call-trace). This is part of a longer term effort of unifying logger and call_trace_service.

BUG=
R=sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9182043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1485 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoAdd test and arithmetic byte instructions in block graph assembly.
etienneb@chromium.org [Fri, 3 May 2013 20:22:28 +0000 (20:22 +0000)]
Add test and arithmetic byte instructions in block graph assembly.
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9155044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1484 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoAdd test instructions and some byte instructions in assembly.
etienneb@chromium.org [Fri, 3 May 2013 20:02:37 +0000 (20:02 +0000)]
Add test instructions and some byte instructions in assembly.

R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9061044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1483 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoAdd dynamic symbol support to trace file format.
siggi@chromium.org [Fri, 3 May 2013 19:16:25 +0000 (19:16 +0000)]
Add dynamic symbol support to trace file format.

R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/9167043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1482 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoAdd setXX instructions and mov_fs to block_graph assembly.
etienneb@chromium.org [Fri, 3 May 2013 14:41:36 +0000 (14:41 +0000)]
Add setXX instructions and mov_fs to block_graph assembly.

R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9146043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1481 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoTidy parse engine unittest a little.
siggi@chromium.org [Fri, 3 May 2013 13:30:17 +0000 (13:30 +0000)]
Tidy parse engine unittest a little.

R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/9147043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1480 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoFix previous CL of relative reference (oups).
etienneb@chromium.org [Thu, 2 May 2013 21:36:27 +0000 (21:36 +0000)]
Fix previous CL of relative reference (oups).
https://codereview.appspot.com/9110045/
R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9125044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1479 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoAdd support for setXX instructions and mov with segment prefix in assembly.
etienneb@chromium.org [Thu, 2 May 2013 21:13:04 +0000 (21:13 +0000)]
Add support for setXX instructions and mov with segment prefix in assembly.

R=chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9137043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1478 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoFix support for --agent in asan mode.
rogerm@chromium.org [Thu, 2 May 2013 21:01:10 +0000 (21:01 +0000)]
Fix support for --agent in asan mode.

This CL also renames some members of the InstrumentApp class from using "client" terminology to "agent" terminology.

R=chrisha@chromium.org, sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9099046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1477 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoChange call reference from absolute to relative in assembly.
etienneb@chromium.org [Thu, 2 May 2013 20:39:16 +0000 (20:39 +0000)]
Change call reference from absolute to relative in assembly.
Fix a typo in assembly unittests.

R=chrisha@chromium.org, rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/9110045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1476 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoAdd "mode" support to instrument wrapper script.
rogerm@chromium.org [Thu, 2 May 2013 18:40:54 +0000 (18:40 +0000)]
Add "mode" support to instrument wrapper script.

Plumb support for the --mode=foo parameter through the instrument.bat/py
script chain. Defaults to calltrace mode if not specified, preserving
compatibility with the interface of earlier versions of the script.

R=chrisha@chromium.org, sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9127043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1474 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoFix nits from post-commit review comments.
rogerm@chromium.org [Wed, 1 May 2013 18:36:02 +0000 (18:36 +0000)]
Fix nits from post-commit review comments.

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/9093043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1473 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoIncrement versio to 0.2.19.3 to trigger a build (for testing).
rogerm@chromium.org [Wed, 1 May 2013 15:13:20 +0000 (15:13 +0000)]
Increment versio to 0.2.19.3 to trigger a build (for testing).

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/9074044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1472 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoIncrement version to 0.2.19.2 to tribber a build.
rogerm@chromium.org [Wed, 1 May 2013 06:00:02 +0000 (06:00 +0000)]
Increment version to 0.2.19.2 to tribber a build.

TBR= chrisha@chromium.org, sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9066045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1471 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoGet rid of references to chrome_dll.pdb
rogerm@chromium.org [Wed, 1 May 2013 05:52:04 +0000 (05:52 +0000)]
Get rid of references to chrome_dll.pdb

This has been renamed chrome.dll.pdb instead. Support both
conventions.

TBR= chisha@chromium.org, sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/9068043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1470 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoSet the OFFICIAL_BUILD define for the official release builds.
sebmarchand@chromium.org [Wed, 1 May 2013 00:41:57 +0000 (00:41 +0000)]
Set the OFFICIAL_BUILD define for the official release builds.

This totally disable the DCHECKs (they don't generate any code).
This has a huge impact on performances (bb_entry is down from 30x to 20x with this) and this also have an impact on size (the size of asan_rtl.dll has been reduced by 10%).

BUG=
R=chrisha@chromium.org, rogerm@chromium.org

Review URL: https://codereview.appspot.com/9039047

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1469 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoBump version to trigger an official build (for testing)
rogerm@chromium.org [Tue, 30 Apr 2013 21:58:40 +0000 (21:58 +0000)]
Bump version to trigger an official build (for testing)

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/9023046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1468 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoSyzyASAN Logger: Use --unique-instance-id instead or auto-magic inference.
rogerm@chromium.org [Tue, 30 Apr 2013 21:54:09 +0000 (21:54 +0000)]
SyzyASAN Logger: Use --unique-instance-id instead or auto-magic inference.

Replaces --instance-id=unique with --unique-instance-id and removes automatic application of the same if the logger isn't given an instance ID when it starts a sub-command.

R=chrisha@chromium.org, etienneb@chromium.org

Review URL: https://codereview.appspot.com/8843046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1467 15e8cca8-e42c-11de-a347-f34a4f72eb7d

3 weeks agoMake the slow path faster !
sebmarchand@chromium.org [Tue, 30 Apr 2013 16:57:48 +0000 (16:57 +0000)]
Make the slow path faster !

We had a tendency to consider the slow path as a rare case but it turns out that this is not really the case... This CL inline the IsAccessible function into the asm routine. This bring a little bit more complexity but this make the runtime much faster ! I observe a gain between 0.24 and 1.34 x on a dromaeo testbench (our worst case in this benchmark is reduced from 4.76x to 3.42x). Maybe this should be ran on a CPU2006 benchmark before landing ?

BUG=
R=chrisha@chromium.org, siggi@chromium.org

Review URL: https://codereview.appspot.com/9027043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1466 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoMinimally cover for ID rollover.
siggi@chromium.org [Thu, 25 Apr 2013 21:20:40 +0000 (21:20 +0000)]
Minimally cover for ID rollover.

R=sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/8795048

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1465 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoMake symbol ID assignment explicit in SymbolMap interface.
siggi@chromium.org [Thu, 25 Apr 2013 19:02:16 +0000 (19:02 +0000)]
Make symbol ID assignment explicit in SymbolMap interface.

R=rogerm@chromium.org

Review URL: https://codereview.appspot.com/8931045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1464 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoAdd unique instance id generation to SyzyASAN logger.
rogerm@chromium.org [Thu, 25 Apr 2013 17:36:55 +0000 (17:36 +0000)]
Add unique instance id generation to SyzyASAN logger.

R= sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/8831045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1463 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoChecking in version 1461 release binaries.
rogerm@chromium.org [Wed, 24 Apr 2013 15:45:15 +0000 (15:45 +0000)]
Checking in version 1461 release binaries.

TBR= chrisha@chromium.org, siggi@chromium.org

Review URL: https://codereview.appspot.com/8701050

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1462 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoBump version to 0.2.19.0
rogerm@chromium.org [Wed, 24 Apr 2013 06:06:34 +0000 (06:06 +0000)]
Bump version to 0.2.19.0

TBR= chisha@chromium.org, siggi@chromium.org

Review URL: https://codereview.appspot.com/8632054

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1461 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoDon't skip any stack frame by default.
sebmarchand@chromium.org [Wed, 24 Apr 2013 03:38:30 +0000 (03:38 +0000)]
Don't skip any stack frame by default.

This shouldn't reduce the stack compression ratio too much for Chrome. I'll update the SYZYGY_ASAN_OPTIONS env var on the test bots to remove the 5 bottom frames for the unittests.

BUG=

Review URL: https://codereview.appspot.com/8932043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1460 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoAllow the logger to be interrupted while it's waiting for an app to stop.
rogerm@chromium.org [Tue, 23 Apr 2013 15:20:13 +0000 (15:20 +0000)]
Allow the logger to be interrupted while it's waiting for an app to stop.

R= chrisha@chromium.org, etienneb@chromium.org

Review URL: https://codereview.appspot.com/8916043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1459 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoStop the asan logger if --exit-on-failure is given.
rogerm@chromium.org [Mon, 22 Apr 2013 23:36:00 +0000 (23:36 +0000)]
Stop the asan logger if --exit-on-failure is given.

R= sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/8551046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1458 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoDynamic SymbolMap implementation, redo.
siggi@chromium.org [Mon, 22 Apr 2013 21:39:50 +0000 (21:39 +0000)]
Dynamic SymbolMap implementation, redo.

This implements the new protocol, where:
- Per-thread aggreagates can lookup and reference a symbol with a unique ID.
- On reuse, aggregates can verify that a symbol hasn't moved by looking at the move count.

I've still to resolve when symbols are traced, it probably makes sense to do that on naming in the SymbolMap, though that's YTBD.

R=chrisha@chromium.org

Review URL: https://codereview.appspot.com/8875043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1457 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoCapture the time since when a block has been freed and add it to the report.
sebmarchand@chromium.org [Mon, 22 Apr 2013 15:00:37 +0000 (15:00 +0000)]
Capture the time since when a block has been freed and add it to the report.

This looks like the best tradeoff between the information this add vs the cost on performance. This make the HeapAlloc function 1.5-2% slower on my benchmarks..

It would be nice to also capture the timestamp at allocation time, but in this case I'm not sure that the value of the added information worth the cost on performance...

I'm using the rdtsc function (wrapped by trace::common::GetTsc()), to get the timestamps, this won't provide an accurate value on all the different user configurations but as this is just a nice-to-have information in the error report this is a good tradeoff to keep good performances.

BUG=

Review URL: https://codereview.appspot.com/8676049

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1456 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoAdd unittesting to Fuzzing Transformation.
etienneb@chromium.org [Mon, 22 Apr 2013 14:17:20 +0000 (14:17 +0000)]
Add unittesting to Fuzzing Transformation.

BUG=

Review URL: https://codereview.appspot.com/8839045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1455 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoImplements a transform to validate the Liveness Analysis.
etienneb@chromium.org [Mon, 22 Apr 2013 13:49:42 +0000 (13:49 +0000)]
Implements a transform to validate the Liveness Analysis.
R=chrisha@chromium.org,rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8670047

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1454 15e8cca8-e42c-11de-a347-f34a4f72eb7d

4 weeks agoInsert liveness analysis into Asan instrumentation.
etienneb@chromium.org [Mon, 22 Apr 2013 13:33:28 +0000 (13:33 +0000)]
Insert liveness analysis into Asan instrumentation.

This CL bring the liveness analysis to the place where hooks are inserted, but still doesn't use the information.

R=sebmarchand@chromium.org,chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8596046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1453 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoChecking in version 1450 release binaries.
chrisha@chromium.org [Thu, 18 Apr 2013 21:21:08 +0000 (21:21 +0000)]
Checking in version 1450 release binaries.

BUG=

Review URL: https://codereview.appspot.com/8541050

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1452 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoAvoid a DCHECK crash when giving a BasicBlock trace instead of a CallTrace to Reorder.
etienneb@chromium.org [Thu, 18 Apr 2013 20:36:16 +0000 (20:36 +0000)]
Avoid a DCHECK crash when giving a BasicBlock trace instead of a CallTrace to Reorder.

R=chrisha@chromium.org,rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8821048

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1451 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoImplementation of a registers liveness analysis on Block Graph.
etienneb@chromium.org [Thu, 18 Apr 2013 17:24:31 +0000 (17:24 +0000)]
Implementation of a registers liveness analysis on Block Graph.

R=chrisha@chromium.org,rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8577044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1450 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoBump version to 0.2.18.0
chrisha@chromium.org [Thu, 18 Apr 2013 15:55:48 +0000 (15:55 +0000)]
Bump version to 0.2.18.0

BUG=

Review URL: https://codereview.appspot.com/8729049

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1449 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoAccept reordering of image with only basic block reordering information.
etienneb@chromium.org [Thu, 18 Apr 2013 15:45:55 +0000 (15:45 +0000)]
Accept reordering of image with only basic block reordering information.
R=chrisha@chromium.org,rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8841046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1448 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoImplements arithmetic instructions in block_graph assembler.
etienneb@chromium.org [Thu, 18 Apr 2013 13:29:21 +0000 (13:29 +0000)]
Implements arithmetic instructions in block_graph assembler.

R=chrisha@chromium.org,siggi@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8833045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1447 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoAdd encoding of arithmetic instruction in assembly.
etienneb@chromium.org [Wed, 17 Apr 2013 18:33:18 +0000 (18:33 +0000)]
Add encoding of arithmetic instruction in assembly.
R=siggi@chromium.org,chrisha@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8789044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1446 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoFix a typo in a comment.
rogerm@chromium.org [Tue, 16 Apr 2013 05:04:35 +0000 (05:04 +0000)]
Fix a typo in a comment.

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/8761046

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1445 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoAdd asan key/value pairs to the crash report for breakpad.
rogerm@chromium.org [Tue, 16 Apr 2013 04:48:51 +0000 (04:48 +0000)]
Add asan key/value pairs to the crash report for breakpad.

R= sebmarchand@chromium.org, chrisha@chromium.org

Review URL: https://codereview.appspot.com/8679043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1444 15e8cca8-e42c-11de-a347-f34a4f72eb7d

5 weeks agoSyzyASAN - Leave the contents of freed blocks intact.
rogerm@chromium.org [Mon, 15 Apr 2013 15:24:36 +0000 (15:24 +0000)]
SyzyASAN - Leave the contents of freed blocks intact.

Prior to tise CL, the SyzyASAN runtime would clobber the contents of a freed memory block. It now leaves the contents intact so that it can be inspected by a developer when investigating a crash report/dump.

R= sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/8771043

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1443 15e8cca8-e42c-11de-a347-f34a4f72eb7d

6 weeks agoCreate common/assertions.h and COMPILE_ASSERT_IS_POD.
chrisha@chromium.org [Wed, 10 Apr 2013 12:22:51 +0000 (12:22 +0000)]
Create common/assertions.h and COMPILE_ASSERT_IS_POD.

This exposes a handy macro for ensuring that POD objects are indeed POD. This is useful for struct declarations of things into which we intend to directly coerce a stream of bytes.

BUG=

Review URL: https://codereview.appspot.com/8580048

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1442 15e8cca8-e42c-11de-a347-f34a4f72eb7d

6 weeks agoRemove 2 obsolete TODO comments.
rogerm@chromium.org [Tue, 9 Apr 2013 21:16:09 +0000 (21:16 +0000)]
Remove 2 obsolete TODO comments.

R= sebmarchand@chromium.org

Review URL: https://codereview.appspot.com/8584045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1441 15e8cca8-e42c-11de-a347-f34a4f72eb7d

6 weeks agoChecking in version 1438 release binaries.
rogerm@chromium.org [Mon, 8 Apr 2013 14:50:22 +0000 (14:50 +0000)]
Checking in version 1438 release binaries.

R= chrisha@chromium.org

Review URL: https://codereview.appspot.com/8508044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1439 15e8cca8-e42c-11de-a347-f34a4f72eb7d

6 weeks agoBump version to trigger a build
rogerm@chromium.org [Mon, 8 Apr 2013 03:45:54 +0000 (03:45 +0000)]
Bump version to trigger a build

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/8455044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1438 15e8cca8-e42c-11de-a347-f34a4f72eb7d

6 weeks agoRevert "Integrate dromaeo mode into the benchmark and profile runners."
rogerm@chromium.org [Mon, 8 Apr 2013 02:10:23 +0000 (02:10 +0000)]
Revert "Integrate dromaeo mode into the benchmark and profile runners."

This change is suspected to be breaking the build periodiocally (every second
build, the sanity check of the benchmark fails an installer step).

TBR= chrisha@chromium.org

Review URL: https://codereview.appspot.com/8426049

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1437 15e8cca8-e42c-11de-a347-f34a4f72eb7d

7 weeks agoFix logger/application command line splitting in logger.
etienneb@chromium.org [Fri, 5 Apr 2013 19:17:36 +0000 (19:17 +0000)]
Fix logger/application command line splitting in logger.

R=chrisha@chromium.org,rogerm@chromium.org
BUG=

Review URL: https://codereview.appspot.com/8277045

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1436 15e8cca8-e42c-11de-a347-f34a4f72eb7d

7 weeks agoPart of r1434 that was lost in a rollback.
chrisha@chromium.org [Fri, 5 Apr 2013 17:48:50 +0000 (17:48 +0000)]
Part of r1434 that was lost in a rollback.

See https://codereview.appspot.com/8382044/ for details.

BUG=

Review URL: https://codereview.appspot.com/8428044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1435 15e8cca8-e42c-11de-a347-f34a4f72eb7d

7 weeks agoMake BasicBlockDecomposer ignore labels past end of block data.
chrisha@chromium.org [Fri, 5 Apr 2013 17:26:01 +0000 (17:26 +0000)]
Make BasicBlockDecomposer ignore labels past end of block data.

We previously assumed that all labels would be attached to actual locations within the data of a block. However, we have recently begun seeing simple blocks that terminate with a non-returning call, and have no epilog. These blocks have a debug-end label attached to the first byte beyond the end of the block, breaking this assumption. This CL handles this by ignoring them for now (they are only debug info, and not needed for our transforms to function correctly). This is a workaround until a persistent mechanism can be implemented.

BUG=

Review URL: https://codereview.appspot.com/8382044

git-svn-id: http://sawbuck.googlecode.com/svn/trunk@1434 15e8cca8-e42c-11de-a347-f34a4f72eb7d