[patch] Remove cyclic dependency in AArch64 backend

Tim Northover t.p.northover at gmail.com
Mon Feb 4 09:39:50 PST 2013


Hi there,

It's been pointed out that the AArch64 backend has a cyclic library
dependency (AsmPrinter depends on Desc and vice-versa).

This is because Desc needs to know about AsmPrinter for the
"createXXX" functions. On the other hand AsmPrinter currently uses
architecture-aware bit-twiddling defined in Desc ("Does this string
represent a system register?", "Is this floating-point immediate
representable?", ...).

However, it causes build failures on OSX shared builds. This patch
moves those utility functions into a separate "Utils" library (similar
to X86), that has no dependency on any other part of AArch64.

Does the approach and code look right?

Tim.

P.S. Apologies for any build failures caused by this issue. I would
have preferred to revert the change than leave LLVM in this state, but
the maintenance snuck up on me.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Remove-cyclic-dependency-in-AArch64-libraries.patch
Type: application/octet-stream
Size: 132020 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130204/ea77910c/attachment.obj>


More information about the llvm-commits mailing list