| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 // - Rudimentary double-free detection. | 89 // - Rudimentary double-free detection. |
| 90 // - Large allocations (> ~1MB) are guard-paged at the beginning and end. | 90 // - Large allocations (> ~1MB) are guard-paged at the beginning and end. |
| 91 // | 91 // |
| 92 // The following security properties could be investigated in the future: | 92 // The following security properties could be investigated in the future: |
| 93 // - Per-object bucketing (instead of per-size) is mostly available at the API, | 93 // - Per-object bucketing (instead of per-size) is mostly available at the API, |
| 94 // but not used yet. | 94 // but not used yet. |
| 95 // - No randomness of freelist entries or bucket position. | 95 // - No randomness of freelist entries or bucket position. |
| 96 // - Better checking for wild pointers in free(). | 96 // - Better checking for wild pointers in free(). |
| 97 // - Better freelist masking function to guarantee fault on 32-bit. | 97 // - Better freelist masking function to guarantee fault on 32-bit. |
| 98 | 98 |
| 99 #include "wtf/Assertions.h" | 99 #include "sky/engine/wtf/Assertions.h" |
| 100 #include "wtf/BitwiseOperations.h" | 100 #include "sky/engine/wtf/BitwiseOperations.h" |
| 101 #include "wtf/ByteSwap.h" | 101 #include "sky/engine/wtf/ByteSwap.h" |
| 102 #include "wtf/CPU.h" | 102 #include "sky/engine/wtf/CPU.h" |
| 103 #include "wtf/PageAllocator.h" | 103 #include "sky/engine/wtf/PageAllocator.h" |
| 104 #include "wtf/SpinLock.h" | 104 #include "sky/engine/wtf/SpinLock.h" |
| 105 | 105 |
| 106 #include <limits.h> | 106 #include <limits.h> |
| 107 | 107 |
| 108 #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) | 108 #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) |
| 109 #include <stdlib.h> | 109 #include <stdlib.h> |
| 110 #endif | 110 #endif |
| 111 | 111 |
| 112 #if ENABLE(ASSERT) | 112 #if ENABLE(ASSERT) |
| 113 #include <string.h> | 113 #include <string.h> |
| 114 #endif | 114 #endif |
| (...skipping 548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 663 using WTF::partitionAlloc; | 663 using WTF::partitionAlloc; |
| 664 using WTF::partitionFree; | 664 using WTF::partitionFree; |
| 665 using WTF::partitionAllocGeneric; | 665 using WTF::partitionAllocGeneric; |
| 666 using WTF::partitionFreeGeneric; | 666 using WTF::partitionFreeGeneric; |
| 667 using WTF::partitionReallocGeneric; | 667 using WTF::partitionReallocGeneric; |
| 668 using WTF::partitionAllocActualSize; | 668 using WTF::partitionAllocActualSize; |
| 669 using WTF::partitionAllocSupportsGetSize; | 669 using WTF::partitionAllocSupportsGetSize; |
| 670 using WTF::partitionAllocGetSize; | 670 using WTF::partitionAllocGetSize; |
| 671 | 671 |
| 672 #endif // WTF_PartitionAlloc_h | 672 #endif // WTF_PartitionAlloc_h |
| OLD | NEW |