From: uz Date: Sat, 29 Jan 2011 22:08:58 +0000 (+0000) Subject: New include file for line info definitions shared between assembler, linker X-Git-Tag: V2.13.3~504 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=0e32325ca608ad2f11ad95ca95b3f8bf712a1685;p=cc65 New include file for line info definitions shared between assembler, linker and od65 utility. git-svn-id: svn://svn.cc65.org/cc65/trunk@4956 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- diff --git a/src/common/lidefs.h b/src/common/lidefs.h new file mode 100644 index 000000000..4bdd51184 --- /dev/null +++ b/src/common/lidefs.h @@ -0,0 +1,66 @@ +/*****************************************************************************/ +/* */ +/* lidefs.h */ +/* */ +/* Definitions for line information */ +/* */ +/* */ +/* */ +/* (C) 2011, Ullrich von Bassewitz */ +/* Roemerstrasse 52 */ +/* 70794 Filderstadt */ +/* EMail: uz@cc65.org */ +/* */ +/* */ +/* This software is provided 'as-is', without any expressed or implied */ +/* warranty. In no event will the authors be held liable for any damages */ +/* arising from the use of this software. */ +/* */ +/* Permission is granted to anyone to use this software for any purpose, */ +/* including commercial applications, and to alter it and redistribute it */ +/* freely, subject to the following restrictions: */ +/* */ +/* 1. The origin of this software must not be misrepresented; you must not */ +/* claim that you wrote the original software. If you use this software */ +/* in a product, an acknowledgment in the product documentation would be */ +/* appreciated but is not required. */ +/* 2. Altered source versions must be plainly marked as such, and must not */ +/* be misrepresented as being the original software. */ +/* 3. This notice may not be removed or altered from any source */ +/* distribution. */ +/* */ +/*****************************************************************************/ + + + +#ifndef LIDEFS_H +#define LIDEFS_H + + + +/*****************************************************************************/ +/* Data */ +/*****************************************************************************/ + + + +/* Types of line infos. */ +#define LI_TYPE_ASM 0U /* Normal assembler source */ +#define LI_TYPE_EXT 1U /* Externally supplied line info */ +#define LI_TYPE_MACRO 2U /* Macro expansion */ + +/* Make a combined value from type and count */ +#define LI_MAKE_TYPE(T,C) ((T) | (((unsigned)(C)) << 2U)) + +/* Extract type and count from a type field */ +#define LI_GET_TYPE(T) ((T) & 0x03U) +#define LI_GET_COUNT(T) ((unsigned)(T) >> 2); + + + +/* End of lidefs.h */ + +#endif + + +