)]}' { "commit": "896332581e001194128349c017fc96c1c04b1920", "tree": "19addb65efa4543549a8e3f810f641e647bd1512", "parents": [ "929f8428107c1b320566ae292c24c5340d5e37ed" ], "author": { "name": "David Benjamin", "email": "davidben@google.com", "time": "Tue Nov 07 17:24:10 2017 -0500" }, "committer": { "name": "Adam Langley", "email": "agl@google.com", "time": "Fri Nov 10 21:07:03 2017 +0000" }, "message": "Appease UBSan on pointer alignment.\n\nEven without strict-aliasing, C does not allow casting pointers to types\nthat don\u0027t match their alignment. After this change, UBSan is happy with\nour code at default settings but for the negative left shift language\nbug.\n\nNote: architectures without unaligned loads do not generate the same\ncode for memcpy and pointer casts. But even ARMv6 can perform unaligned\nloads and stores (ARMv5 couldn\u0027t), so we should be okay here.\n\nBefore:\nDid 11086000 AES-128-GCM (16 bytes) seal operations in 5000391us (2217026.6 ops/sec): 35.5 MB/s\nDid 370000 AES-128-GCM (1350 bytes) seal operations in 5005208us (73923.0 ops/sec): 99.8 MB/s\nDid 63000 AES-128-GCM (8192 bytes) seal operations in 5029958us (12525.0 ops/sec): 102.6 MB/s\nDid 9894000 AES-256-GCM (16 bytes) seal operations in 5000017us (1978793.3 ops/sec): 31.7 MB/s\nDid 316000 AES-256-GCM (1350 bytes) seal operations in 5005564us (63129.7 ops/sec): 85.2 MB/s\nDid 54000 AES-256-GCM (8192 bytes) seal operations in 5054156us (10684.3 ops/sec): 87.5 MB/s\n\nAfter:\nDid 11026000 AES-128-GCM (16 bytes) seal operations in 5000197us (2205113.1 ops/sec): 35.3 MB/s\nDid 370000 AES-128-GCM (1350 bytes) seal operations in 5005781us (73914.5 ops/sec): 99.8 MB/s\nDid 63000 AES-128-GCM (8192 bytes) seal operations in 5032695us (12518.1 ops/sec): 102.5 MB/s\nDid 9831750 AES-256-GCM (16 bytes) seal operations in 5000010us (1966346.1 ops/sec): 31.5 MB/s\nDid 316000 AES-256-GCM (1350 bytes) seal operations in 5005702us (63128.0 ops/sec): 85.2 MB/s\nDid 54000 AES-256-GCM (8192 bytes) seal operations in 5053642us (10685.4 ops/sec): 87.5 MB/s\n\n(Tested with the no-asm builds; most of this code isn\u0027t reachable\notherwise.)\n\nChange-Id: I025c365d26491abed0116b0de3b7612159e52297\nReviewed-on: https://boringssl-review.googlesource.com/22804\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n", "tree_diff": [ { "type": "modify", "old_id": "4b3bdb8a20d55b66fe841663d4496eeccdd9258a", "old_mode": 33188, "old_path": "crypto/fipsmodule/modes/cbc.c", "new_id": "db9f024196cd46b7e13e2d397ea6f7070906c767", "new_mode": 33188, "new_path": "crypto/fipsmodule/modes/cbc.c" }, { "type": "modify", "old_id": "2775d1959b221a4deea524003dbf2f36518015d6", "old_mode": 33188, "old_path": "crypto/fipsmodule/modes/cfb.c", "new_id": "e1b0a80e0362ce5df676f318b60699f71006f0dc", "new_mode": 33188, "new_path": "crypto/fipsmodule/modes/cfb.c" }, { "type": "modify", "old_id": "5a97cf6717254a8f85a00fe987132c4c277a5a88", "old_mode": 33188, "old_path": "crypto/fipsmodule/modes/ctr.c", "new_id": "63907b43ae8a7c53d507cbd65de0da21ee73058b", "new_mode": 33188, "new_path": "crypto/fipsmodule/modes/ctr.c" }, { "type": "modify", "old_id": "bb5be544234a488a9f91f6660b508e756542ad88", "old_mode": 33188, "old_path": "crypto/fipsmodule/modes/gcm.c", "new_id": "05cd18d4fa8f7de8269536f59e9a0ee30545f3d9", "new_mode": 33188, "new_path": "crypto/fipsmodule/modes/gcm.c" }, { "type": "modify", "old_id": "6a5ff99bab3ade6e43f92695110cbafa343d4516", "old_mode": 33188, "old_path": "crypto/fipsmodule/modes/internal.h", "new_id": "f6ee8f45a1e485034c964ac6638a5bab54ba8500", "new_mode": 33188, "new_path": "crypto/fipsmodule/modes/internal.h" } ] }