soc/intel_adsp: Correct linker syntax for ancient binutils
Older binutils, like the (nine-year-old!) 2.23 version that powers many Cadence XCC toolchains, happen not to support the "~" operator to perform bitwise negation. And they generate an absolutely hilarious series of inscrutable error messages when they try to tell you this fairly simple fact. Just fold it into the constant. Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
This commit is contained in:
parent
0552d329c8
commit
8bc4539cec
3 changed files with 8 additions and 3 deletions
|
@ -42,9 +42,11 @@ PROVIDE(_MemErrorHandler = 0x00000000);
|
||||||
* the output tooling ignores it, but it will cause the linker to emit
|
* the output tooling ignores it, but it will cause the linker to emit
|
||||||
* 512MB of unused data into the output file!)
|
* 512MB of unused data into the output file!)
|
||||||
*
|
*
|
||||||
|
* (Note clumsy syntax because XCC doesn't understand the "~" operator)
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
#define SEGSTART_CACHED (ALIGN(64) | 0x20000000)
|
#define SEGSTART_CACHED (ALIGN(64) | 0x20000000)
|
||||||
#define SEGSTART_UNCACHED (ALIGN(64) & ~0x20000000)
|
#define SEGSTART_UNCACHED (ALIGN(64) & 0xdfffffff) /* == ~0x20000000 */
|
||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
|
|
|
@ -42,9 +42,11 @@ PROVIDE(_MemErrorHandler = 0x00000000);
|
||||||
* the output tooling ignores it, but it will cause the linker to emit
|
* the output tooling ignores it, but it will cause the linker to emit
|
||||||
* 512MB of unused data into the output file!)
|
* 512MB of unused data into the output file!)
|
||||||
*
|
*
|
||||||
|
* (Note clumsy syntax because XCC doesn't understand the "~" operator)
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
#define SEGSTART_CACHED (ALIGN(64) | 0x20000000)
|
#define SEGSTART_CACHED (ALIGN(64) | 0x20000000)
|
||||||
#define SEGSTART_UNCACHED (ALIGN(64) & ~0x20000000)
|
#define SEGSTART_UNCACHED (ALIGN(64) & 0xdfffffff) /* == ~0x20000000 */
|
||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
|
|
|
@ -42,10 +42,11 @@ PROVIDE(_MemErrorHandler = 0x00000000);
|
||||||
* the output tooling ignores it, but it will cause the linker to emit
|
* the output tooling ignores it, but it will cause the linker to emit
|
||||||
* 512MB of unused data into the output file!)
|
* 512MB of unused data into the output file!)
|
||||||
*
|
*
|
||||||
|
* (Note clumsy syntax because XCC doesn't understand the "~" operator)
|
||||||
*/
|
*/
|
||||||
#ifdef CONFIG_KERNEL_COHERENCE
|
#ifdef CONFIG_KERNEL_COHERENCE
|
||||||
#define SEGSTART_CACHED (ALIGN(64) | 0x20000000)
|
#define SEGSTART_CACHED (ALIGN(64) | 0x20000000)
|
||||||
#define SEGSTART_UNCACHED (ALIGN(64) & ~0x20000000)
|
#define SEGSTART_UNCACHED (ALIGN(64) & 0xdfffffff) /* == ~0x20000000 */
|
||||||
#else
|
#else
|
||||||
#define SEGSTART_CACHED /**/
|
#define SEGSTART_CACHED /**/
|
||||||
#define SEGSTART_UNCACHED /**/
|
#define SEGSTART_UNCACHED /**/
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue