| Index: third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h | 
| diff --git a/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h b/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h | 
| index efdf25d6206f9d9e05bb5fbebceb40010d1eec51..90d9449e1ac54dc86e2d5070de0884c9a59216d2 100644 | 
| --- a/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h | 
| +++ b/third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h | 
| @@ -110,7 +110,15 @@ | 
| kTableCellBackgroundFromColumn, | 
| kTableCellBackgroundFromSection, | 
| kTableCellBackgroundFromRow, | 
| -    kTableCollapsedBorders, | 
| +    // Table collapsed borders can be painted together (e.g., left & top) but | 
| +    // there are at most 4 phases of collapsed border painting for a single | 
| +    // cell. To disambiguate these phases of collapsed border painting, a mask | 
| +    // is used. TableCollapsedBorderBase can be larger than | 
| +    // TableCollapsedBorderUnalignedBase to ensure the base lower bits are 0's. | 
| +    kTableCollapsedBorderUnalignedBase, | 
| +    kTableCollapsedBorderBase = | 
| +        (((kTableCollapsedBorderUnalignedBase - 1) >> 4) + 1) << 4, | 
| +    kTableCollapsedBorderLast = kTableCollapsedBorderBase + 0x0f, | 
| kTableSectionBoxShadowInset, | 
| kTableSectionBoxShadowNormal, | 
| kTableRowBoxShadowInset, | 
| @@ -194,6 +202,19 @@ | 
| kTypeLast = kUninitializedType | 
| }; | 
|  | 
| +  static_assert(kTableCollapsedBorderBase >= kTableCollapsedBorderUnalignedBase, | 
| +                "TableCollapsedBorder types overlap with other types"); | 
| +  static_assert((kTableCollapsedBorderBase & 0xf) == 0, | 
| +                "The lowest 4 bits of TableCollapsedBorderBase should be zero"); | 
| +  // Bits or'ed onto TableCollapsedBorderBase to generate a real table collapsed | 
| +  // border type. | 
| +  enum TableCollapsedBorderSides { | 
| +    TableCollapsedBorderTop = 1 << 0, | 
| +    TableCollapsedBorderRight = 1 << 1, | 
| +    TableCollapsedBorderBottom = 1 << 2, | 
| +    TableCollapsedBorderLeft = 1 << 3, | 
| +  }; | 
| + | 
| DisplayItem(const DisplayItemClient& client, Type type, size_t derivedSize) | 
| : m_client(&client), | 
| m_type(type), | 
|  |