[llvm-commits] [PATCH 5/6] [llvm-c] Add architecture type enumeration

Richard Osborne richard at xmos.com
Mon Mar 19 03:36:42 PDT 2012


On 19/03/12 04:13, Gregory Szorc wrote:
> +typedef enum {
> +  LLVMArchUnknown,
> +  LLVMArchARM,      /** ARM; arm, armv.*, xscale */
> +  LLVMArchCellSPU,  /** CellSPU: spu, cellspu */
> +  LLVMArchHexagon,  /** Hexagon: hexagon */
> +  LLVMArchMIPS,     /** MIPS: mips, mipsallegrex */
> +  LLVMArchMIPSEL,   /** MIPSEL: mipsel, mipsallegrexel */
> +  LLVMArchMIPS64,   /** MIPS64: mips64 */
> +  LLVMArchMIPS64EL, /** MIPS64EL: mips64el */
> +  LLVMArchMSP430,   /** MSP430: msp430 */
> +  LLVMArchPPC,      /** PPC: powerpc */
> +  LLVMArchPPC64,    /** PPC64: powerpc64, ppu */
> +  LLVMArchR600,     /** R600: AMD GPUs HD2XXX - HD6XXX */
> +  LLVMArchSparc,    /** Sparc: sparc */
> +  LLVMArchSparcv9,  /** Sparcv9: Sparcv9 */
> +  LLVMArchTCE,      /** TCE (http://tce.cs.tut.fi/): tce */
> +  LLVMArchThumb,    /** Thumb: thumb, thumbv.* */
> +  LLVMArchX86,      /** X86: i[3-9]86 */
> +  LLVMArchX86_64,   /** X86-64: amd64, x86_64 */
> +  LLVMArchXCore,    /** XCore: xcore */
> +  LLVMArchMBlaze,   /** MBlaze: mblaze */
> +  LLVMArchPTX32,    /** PTX: ptx (32-bit) */
> +  LLVMArchPTX64,    /** PTX: ptx (64-bit) */
> +  LLVMArchLE32,     /** le32: generic little-endian 32-bit CPU (PNaCl / Emscripten) */
> +  LLVMArchAMDIL     /** amdil: amd IL */
> +} LLVMArchitectureType;
These comments should start with /**< instead of /** otherwise doxygen 
will associate them with the member on the next instead of the one on 
the current line. See 
http://www.stack.nl/~dimitri/doxygen/docblocks.html#memberdoc.

I assume the value of enum values must match those in the 
Triple::ArchType enum. Someone could easily add / remove a target there 
without realizing the need to update the C bindings. I think it might be 
worth adding a comment to Triple.h indicating that the 
LLVMArchitectureType enum must be updated whenever the Triple::ArchType 
enum is changed.

-- 
Richard Osborne | XMOS
http://www.xmos.com




More information about the llvm-commits mailing list