[LLVMdev] subtarget features
Villmow, Micah
Micah.Villmow at amd.com
Thu May 17 13:27:13 PDT 2012
Have you thought about use the +mattr=+mips16,+micromips, etc..?
This is what we use to enable/disable features for a specific architecture(including 64bit support for a 32bit device).
> -----Original Message-----
> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu]
> On Behalf Of reed kotler
> Sent: Wednesday, May 16, 2012 8:36 PM
> To: ll >> "llvmdev at cs.uiuc.edu"
> Subject: [LLVMdev] subtarget features
>
> Is it possible to assign the value of subtarget features using more
> complex expressions with code as opposed to using the mechanism that
> tablegen affords.
>
> For example, if Mips16 or Micro Mips is not present, then I want the
> subfeature "standard encoding".
>
> If I can't do this, then it requires me to write a more complex
> expression for the "standard encoding" expresions.
>
> For mips , mips16 and micro mips are considered to be processor
> extenasions to mips32 and mips64.
>
> So usually you would build a mips32 or mips64 compiler and then add
> -mips16 to the command line.
>
> Right now, there are no implementations of micro mips or mips16 with
> mips 64, though architecturally it is defined.
>
> So the options would be:
>
> -mips16 -mips32 -micromips -mips64
>
> With the implications the -mips16 and -micromips both imply mips32 as
> the base architecture.
>
> mips32 and mips64 have mostly the same instruction encoding (difference
> being the size of the registers).
>
> Ideally you would want:
>
> standardencoding = !mips16 & !micrormips
>
> then standardencoding is used to be a predicate for all non mips16 and
> micromips instructions.
>
>
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
More information about the llvm-dev
mailing list