[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 5/5] x86: remove usage of .skip with non-absolute expressions
On 29/01/18 13:02, Jan Beulich wrote: >>>> On 29.01.18 at 13:43, <wei.liu2@xxxxxxxxxx> wrote: >> On Mon, Jan 29, 2018 at 12:26:43PM +0000, Roger Pau Monne wrote: >>> Clang assembler doesn't support using .skip with non-absolute >>> expressions: >>> >> But so is GNU as. From its manual for .skip: >> >> "This directive emits size bytes, each of value fill. Both size and fill >> are absolute expressions." >> >>> entry.S:109:15: error: expected absolute expression >>> .skip .Lcr4_alt_end - .Lcr4_alt, 0x90 >>> ^ >>> >> OOI what makes .Lcr4_alt_end - .Lcr4_alt non-absolute? > I guess they expect to be able to calculate the value right at the > point they evaluate .skip's arguments. Whereas gas either records > a fragment with variable size, or (less likely, as that could end up > wrong) evaluates the expression right away (iirc the .skip sits after > the definition of both symbols, and iirc further gas [at least some > versions] has problems if that wasn't the case). One thing I've been experimenting with, along with trying to organise the alternatives into a mergeable section, is to first write the alternatives into .discard section, which allows calculations like this to be completed immediately, rather than being deferred. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |