blob: 20006c83d5d13734c4cd449f7e6b376897c416cc [file] [log] [blame]
Pankaj Garg2efbcce2020-03-10 12:05:08 -07001/*
2 *
Rob Walkere812e672020-03-31 17:51:57 -07003 * Copyright (c) 2020 Project CHIP Authors
4 * Copyright (c) 2016-2017 Nest Labs, Inc.
Pankaj Garg2efbcce2020-03-10 12:05:08 -07005 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18
19/**
20 * @file
21 * This file contains a preprocessor macro that resolves to a
22 * constant expression that evaluates to the size of an array
23 * element with alignment padding.
24 */
25
Andrei Litvin0c072ee2020-10-09 10:46:28 -040026#pragma once
Pankaj Garg2efbcce2020-03-10 12:05:08 -070027
Martin Turoncd17ad42020-03-18 20:03:53 -070028#define CHIP_SYSTEM_ALIGN_SIZE(ELEMENT, ALIGNMENT) (((ELEMENT) + (ALIGNMENT) -1) & ~((ALIGNMENT) -1))