skia2/include/core
Mike Klein 475c5e93fe turn on alignment sanitizer
This sanitizer checks for overaligned reads and writes,
or put another way, use of underaligned pointers.

This usually happens when you cast, e.g. char* to int*
without checking that the char* is 4-byte aligned.  Each
of the changes under src/ fixes something just like that.

The unusual setup for tools/xsan.blacklist is there to
force a rebuild whenever tools/xsan.blacklist changes.
I spent a good few minutes debugging rebuilds not happening
this morning, perhaps from some strange ccache interaction.

Align SkTextBlobs as void* (today they're just 4-byte) so the
SkTextBlob::RunRecords we put after them in SkTextBlobBuilder
buffers are properly aligned (for the SkTypeface* inside).

There's no obvious error in void SkRRect::computeType(),
but one bot seems to have seen some sort of issue with

    SK_AT_SCOPE_EXIT(SkASSERT(this->isValid()));

I can't reproduce it locally, so I'm just going to unroll it.

Change-Id: I904d94f65f695e1b626b684c32216a4930b72b0c
Reviewed-on: https://skia-review.googlesource.com/146104
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-08-09 21:13:15 +00:00
..
SkAnnotation.h remove unneeded flag for annotations 2016-03-05 06:00:12 -08:00
SkBBHFactory.h Remove stray semicolons. 2016-09-27 14:04:26 +00:00
SkBitmap.h Remove SkTransferFunctionBehavior 2018-07-17 14:18:20 +00:00
SkBlendMode.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkBlurTypes.h remove defines and add commas 2018-05-21 17:33:39 +00:00
SkCanvas.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkCanvasVirtualEnforcer.h skeletal animation support added to API and software backend 2018-06-29 19:34:28 +00:00
SkClipOp.h add flag to hide deprecated clipops 2017-05-10 18:56:14 +00:00
SkColor.h refresh generated includes 2018-06-14 18:02:37 +00:00
SkColorFilter.h Add color space to SkColorFilter::filterColor4f 2018-08-01 20:45:50 +00:00
SkColorPriv.h Revert "Revert "SkTypes: extract SkTo"" 2018-06-14 14:55:17 +00:00
SkColorSpace.h Remove SkTransferFunctionBehavior 2018-07-17 14:18:20 +00:00
SkColorSpaceXform.h Move SkNoncopyable to include/private. 2018-07-17 21:39:51 +00:00
SkColorSpaceXformCanvas.h Make xformer class for SkCSXCanvas, use for draw loopers 2017-03-30 18:02:58 +00:00
SkCoverageMode.h remove defines and add commas 2018-05-21 17:33:39 +00:00
SkData.h More workarounds on Windows Debug DLL crash. 2018-07-09 17:20:17 +00:00
SkDataTable.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkDeferredDisplayListRecorder.h Add DoneProc to Promise Images 2018-03-16 19:27:46 +00:00
SkDeque.h Move SkNoncopyable to include/private. 2018-07-17 21:39:51 +00:00
SkDocument.h SkDocument: remove unused fDoneProc 2018-01-08 20:53:41 +00:00
SkDrawable.h remove defines and add commas 2018-05-21 17:33:39 +00:00
SkDrawLooper.h Move SkNoncopyable to include/private. 2018-07-17 21:39:51 +00:00
SkEncodedImageFormat.h GOOGLE3 -> SK_BUILD_FOR_GOOGLE3 2017-12-19 14:42:16 +00:00
SkExecutor.h Add FIFO thread pool, use it for most things. 2017-09-01 16:19:47 +00:00
SkFilterQuality.h remove defines and add commas 2018-05-21 17:33:39 +00:00
SkFlattenable.h Restore SkLightingShader and associated classes 2018-07-17 17:24:50 +00:00
SkFont.h Remove SkPaint::Flags::kDevKernFlag. 2018-05-09 21:27:11 +00:00
SkFontArguments.h Add SkTypeface::getVariationDesignParameters 2018-07-12 17:30:20 +00:00
SkFontLCDConfig.h remove defines and add commas 2018-05-21 17:33:39 +00:00
SkFontMgr.h SkFontMgr.h is a core header. 2018-06-20 14:46:28 +00:00
SkFontParameters.h Add SkTypeface::getVariationDesignParameters 2018-07-12 17:30:20 +00:00
SkFontStyle.h Make SkTypeface::Style and FromOldStyle private. 2017-10-13 15:49:18 +00:00
SkGraphics.h Remove TLS glyph cache calls. 2018-03-09 19:32:22 +00:00
SkICC.h Reland "strip down SkICC.cpp" 2018-05-22 14:17:15 +00:00
SkImage.h Remove SkTransferFunctionBehavior 2018-07-17 14:18:20 +00:00
SkImageEncoder.h centralize encoding to SkData 2017-12-09 01:36:48 +00:00
SkImageFilter.h Add color type to the image filter DAG's OutputProperties 2018-07-06 18:34:58 +00:00
SkImageGenerator.h Remove old lazy image decoding heuristic logic 2018-07-11 14:07:08 +00:00
SkImageInfo.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkLights.h Restore SkLightingShader and associated classes 2018-07-17 17:24:50 +00:00
SkMallocPixelRef.h Clean up includes in SkMallocPixelRef 2018-06-26 16:47:39 +00:00
SkMaskFilter.h rebase 2018-06-08 20:36:53 +00:00
SkMath.h Revert "Revert "SkTypes: extract SkTo"" 2018-06-14 14:55:17 +00:00
SkMatrix44.h Remove string.h from SkTypes.h 2018-06-15 20:32:05 +00:00
SkMatrix.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkMetaData.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkMilestone.h Update Skia milestone to 70 2018-07-19 13:44:30 +00:00
SkMultiPictureDraw.h Convert NULL and 0 to nullptr. 2017-08-28 17:48:57 +00:00
SkOverdrawCanvas.h skeletal animation support added to API and software backend 2018-06-29 19:34:28 +00:00
SkPaint.h Centralize bitmap glyph positioning 2018-07-26 18:16:46 +00:00
SkPath.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkPathEffect.h rebase 2018-06-08 20:36:53 +00:00
SkPathMeasure.h abort really big path fuzzing 2018-06-21 16:42:37 +00:00
SkPicture.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkPictureRecorder.h Move SkNoncopyable to include/private. 2018-07-17 21:39:51 +00:00
SkPixelRef.h alternative no anonymous enums 2018-04-26 17:11:53 +00:00
SkPixmap.h Remove SkTransferFunctionBehavior 2018-07-17 14:18:20 +00:00
SkPngChunkReader.h Delete SkImageDecoder 2016-03-24 10:41:47 -07:00
SkPoint3.h Add some additional checks for shadow generation 2018-02-26 20:02:38 +00:00
SkPoint.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkPostConfig.h trim #include <new> from SkPostConfig.h 2018-06-11 15:55:31 +00:00
SkPreConfig.h remove unused parts of SkTypes.h 2018-06-08 23:53:57 +00:00
SkRasterHandleAllocator.h Make header files self-sufficient 2017-02-10 01:19:52 +00:00
SkRect.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkRefCnt.h Remove SkRefCnt_SafeAssign. 2018-07-12 23:42:44 +00:00
SkRegion.h minor SkRegion include edits 2018-08-07 13:34:57 +00:00
SkRRect.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkRSXform.h Revert "Revert "Make GPU backend triangulate rects such that they are rendered as tri strips rather than tri fans."" 2017-10-18 12:21:17 +00:00
SkRWBuffer.h Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
SkScalar.h Revert "Revert "implement SkScalar versions in terms of float versions"" 2018-05-14 18:20:29 +00:00
SkSerialProcs.h Change behavior of custom image serial/deserial 2018-03-08 21:50:51 +00:00
SkShader.h clean up includes 2018-08-06 14:49:46 +00:00
SkSize.h SkSize can be aggregate-initialized 2017-04-11 18:57:20 +00:00
SkStream.h clean up includes 2018-08-06 14:49:46 +00:00
SkString.h Stop using SkTSwap. 2018-06-19 02:06:31 +00:00
SkStrokeRec.h SkTypes: more into SkMacros 2018-06-12 20:24:43 +00:00
SkSurface.h refresh generated includes 2018-07-13 14:23:24 +00:00
SkSurfaceCharacterization.h Add GrContextThreadSafeProxy and remove most friends of GrContextThreadSafeProxy 2018-05-10 19:14:16 +00:00
SkSurfaceProps.h Flesh out SkSurfaceCharacterization 2017-11-30 17:10:38 +00:00
SkSwizzle.h Add missing SK_API to SkSwizzle.h 2016-03-24 07:50:14 -07:00
SkTextBlob.h turn on alignment sanitizer 2018-08-09 21:13:15 +00:00
SkTime.h SkMacros split from SkTypes.h 2018-06-12 18:39:33 +00:00
SkTLazy.h remove SkTCast 2018-06-18 17:22:18 +00:00
SkTraceMemoryDump.h Dump additional details about the gpu resources. 2018-03-29 18:08:15 +00:00
SkTypeface.h Move SkNoncopyable to include/private. 2018-07-17 21:39:51 +00:00
SkTypes.h Remove SkFastMin32 2018-07-30 18:14:38 +00:00
SkUnPreMultiply.h Factor out UnPreMultiplyPreservingByteOrder 2014-01-15 22:24:58 +00:00
SkVertices.h added caching of SkVertices 2018-07-09 20:31:28 +00:00
SkYUVSizeInfo.h alternative no anonymous enums 2018-04-26 17:11:53 +00:00