Created
September 16, 2015 11:03
-
-
Save pamaury/435125e6cc8e79a9f31d to your computer and use it in GitHub Desktop.
Macro file
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/*************************************************************************** | |
* __________ __ ___. | |
* Open \______ \ ____ ____ | | _\_ |__ _______ ___ | |
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | |
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | |
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | |
* \/ \/ \/ \/ \/ | |
* This file was automatically generated by headergen, DO NOT EDIT it. | |
* headergen version: 3.0.0 | |
* | |
* Copyright (C) 2015 by the authors | |
* | |
* This program is free software; you can redistribute it and/or | |
* modify it under the terms of the GNU General Public License | |
* as published by the Free Software Foundation; either version 2 | |
* of the License, or (at your option) any later version. | |
* | |
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | |
* KIND, either express or implied. | |
* | |
****************************************************************************/ | |
#ifndef __HEADERGEN_REGS_MACRO_H__ | |
#define __HEADERGEN_REGS_MACRO_H__ | |
#define __VAR_OR1(prefix, suffix) \ | |
(prefix##suffix) | |
#define __VAR_OR2(pre, s1, s2) \ | |
(__VAR_OR1(pre, s1) | __VAR_OR1(pre, s2)) | |
#define __VAR_OR3(pre, s1, s2, s3) \ | |
(__VAR_OR1(pre, s1) | __VAR_OR2(pre, s2, s3)) | |
#define __VAR_OR4(pre, s1, s2, s3, s4) \ | |
(__VAR_OR2(pre, s1, s2) | __VAR_OR2(pre, s3, s4)) | |
#define __VAR_OR5(pre, s1, s2, s3, s4, s5) \ | |
(__VAR_OR2(pre, s1, s2) | __VAR_OR3(pre, s3, s4, s5)) | |
#define __VAR_OR6(pre, s1, s2, s3, s4, s5, s6) \ | |
(__VAR_OR3(pre, s1, s2, s3) | __VAR_OR3(pre, s4, s5, s6)) | |
#define __VAR_OR7(pre, s1, s2, s3, s4, s5, s6, s7) \ | |
(__VAR_OR3(pre, s1, s2, s3) | __VAR_OR4(pre, s4, s5, s6, s7)) | |
#define __VAR_OR8(pre, s1, s2, s3, s4, s5, s6, s7, s8) \ | |
(__VAR_OR4(pre, s1, s2, s3, s4) | __VAR_OR4(pre, s5, s6, s7, s8)) | |
#define __VAR_OR9(pre, s1, s2, s3, s4, s5, s6, s7, s8, s9) \ | |
(__VAR_OR4(pre, s1, s2, s3, s4) | __VAR_OR5(pre, s5, s6, s7, s8, s9)) | |
#define __VAR_OR10(pre, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10) \ | |
(__VAR_OR5(pre, s1, s2, s3, s4, s5) | __VAR_OR5(pre, s6, s7, s8, s9, s10)) | |
#define __VAR_NARGS(...) __VAR_NARGS_(__VA_ARGS__, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1) | |
#define __VAR_NARGS_(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, N, ...) N | |
#define __VAR_EXPAND(macro, prefix, ...) __VAR_EXPAND_(macro, __VAR_NARGS(__VA_ARGS__), prefix, __VA_ARGS__) | |
#define __VAR_EXPAND_(macro, cnt, prefix, ...) __VAR_EXPAND__(macro, cnt, prefix, __VA_ARGS__) | |
#define __VAR_EXPAND__(macro, cnt, prefix, ...) __VAR_EXPAND___(macro##cnt, prefix, __VA_ARGS__) | |
#define __VAR_EXPAND___(macro, prefix, ...) macro(prefix, __VA_ARGS__) | |
#define BF_OR(reg, ...) __VAR_EXPAND(__VAR_OR, BF_##reg##_, __VA_ARGS__) | |
#define BM_OR(reg, ...) __VAR_EXPAND(__VAR_OR, BM_##reg##_, __VA_ARGS__) | |
#endif /* __HEADERGEN_REGS_MACRO_H__*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment