diff options
| author | Devang Patel <dpatel@apple.com> | 2008-09-23 22:35:17 +0000 |
|---|---|---|
| committer | Devang Patel <dpatel@apple.com> | 2008-09-23 22:35:17 +0000 |
| commit | 82fed6702b13d9d3625295494ead5211c415b3a0 (patch) | |
| tree | b835e0e199b7bb45affa61b05832888d28b5bdfc /llvm/lib/AsmParser | |
| parent | ba79e1713960a98fb7cd1d321b1b4d92aa01f2ae (diff) | |
| download | bcm5719-llvm-82fed6702b13d9d3625295494ead5211c415b3a0.tar.gz bcm5719-llvm-82fed6702b13d9d3625295494ead5211c415b3a0.zip | |
Use parameter attribute store (soon to be renamed) for
Function Notes also. Function notes are stored at index ~0.
llvm-svn: 56511
Diffstat (limited to 'llvm/lib/AsmParser')
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.h.cvs | 4 | ||||
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.y | 22 | ||||
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.y.cvs | 22 |
3 files changed, 26 insertions, 22 deletions
diff --git a/llvm/lib/AsmParser/llvmAsmParser.h.cvs b/llvm/lib/AsmParser/llvmAsmParser.h.cvs index 7275b9e0262..a45ec5254c0 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.h.cvs +++ b/llvm/lib/AsmParser/llvmAsmParser.h.cvs @@ -366,7 +366,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 970 "/Users/sabre/llvm/lib/AsmParser/llvmAsmParser.y" +#line 970 "/Volumes/Nanpura/mainline/llvm/lib/AsmParser/llvmAsmParser.y" { llvm::Module *ModuleVal; llvm::Function *FunctionVal; @@ -395,7 +395,7 @@ typedef union YYSTYPE llvm::GlobalValue::LinkageTypes Linkage; llvm::GlobalValue::VisibilityTypes Visibility; llvm::ParameterAttributes ParamAttrs; - llvm::FunctionNotes FunctionNotes; + llvm::ParameterAttributes FunctionNotes; llvm::APInt *APIntVal; int64_t SInt64Val; uint64_t UInt64Val; diff --git a/llvm/lib/AsmParser/llvmAsmParser.y b/llvm/lib/AsmParser/llvmAsmParser.y index a298dde4342..5cfc47dc9d7 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.y +++ b/llvm/lib/AsmParser/llvmAsmParser.y @@ -995,7 +995,7 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) { llvm::GlobalValue::LinkageTypes Linkage; llvm::GlobalValue::VisibilityTypes Visibility; llvm::ParameterAttributes ParamAttrs; - llvm::FunctionNotes FunctionNotes; + llvm::ParameterAttributes FunctionNotes; llvm::APInt *APIntVal; int64_t SInt64Val; uint64_t UInt64Val; @@ -1091,8 +1091,8 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) { %type <UIntVal> OptCallingConv LocalNumber %type <ParamAttrs> OptParamAttrs ParamAttr %type <ParamAttrs> OptFuncAttrs FuncAttr -%type <FunctionNotes> OptFuncNotes FuncNote -%type <FunctionNotes> FuncNoteList +%type <ParamAttrs> OptFuncNotes FuncNote +%type <ParamAttrs> FuncNoteList // Basic Block Terminating Operators %token <TermOpVal> RET BR SWITCH INVOKE UNWIND UNREACHABLE @@ -1297,22 +1297,24 @@ OptFuncAttrs : /* empty */ { $$ = ParamAttr::None; } FuncNoteList : FuncNote { $$ = $1; } | FuncNoteList ',' FuncNote { - FunctionNotes tmp = $1 | $3; - if ($3 == FN_NOTE_NoInline && ($1 & FN_NOTE_AlwaysInline)) + unsigned tmp = $1 | $3; + if ($3 == ParamAttr::FN_NOTE_NoInline + && ($1 & ParamAttr::FN_NOTE_AlwaysInline)) GEN_ERROR("Function Notes may include only one inline notes!") - if ($3 == FN_NOTE_AlwaysInline && ($1 & FN_NOTE_NoInline)) + if ($3 == ParamAttr::FN_NOTE_AlwaysInline + && ($1 & ParamAttr::FN_NOTE_NoInline)) GEN_ERROR("Function Notes may include only one inline notes!") $$ = tmp; CHECK_FOR_ERROR } ; -FuncNote : INLINE '=' NEVER { $$ = FN_NOTE_NoInline; } - | INLINE '=' ALWAYS { $$ = FN_NOTE_AlwaysInline; } - | OPTIMIZEFORSIZE { $$ = FN_NOTE_OptimizeForSize; } +FuncNote : INLINE '=' NEVER { $$ = ParamAttr::FN_NOTE_NoInline; } + | INLINE '=' ALWAYS { $$ = ParamAttr::FN_NOTE_AlwaysInline; } + | OPTIMIZEFORSIZE { $$ = ParamAttr::FN_NOTE_OptimizeForSize; } ; -OptFuncNotes : /* empty */ { $$ = FN_NOTE_None; } +OptFuncNotes : /* empty */ { $$ = ParamAttr::FN_NOTE_None; } | FNNOTE '(' FuncNoteList ')' { $$ = $3; } diff --git a/llvm/lib/AsmParser/llvmAsmParser.y.cvs b/llvm/lib/AsmParser/llvmAsmParser.y.cvs index a298dde4342..5cfc47dc9d7 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.y.cvs +++ b/llvm/lib/AsmParser/llvmAsmParser.y.cvs @@ -995,7 +995,7 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) { llvm::GlobalValue::LinkageTypes Linkage; llvm::GlobalValue::VisibilityTypes Visibility; llvm::ParameterAttributes ParamAttrs; - llvm::FunctionNotes FunctionNotes; + llvm::ParameterAttributes FunctionNotes; llvm::APInt *APIntVal; int64_t SInt64Val; uint64_t UInt64Val; @@ -1091,8 +1091,8 @@ Module *llvm::RunVMAsmParser(llvm::MemoryBuffer *MB) { %type <UIntVal> OptCallingConv LocalNumber %type <ParamAttrs> OptParamAttrs ParamAttr %type <ParamAttrs> OptFuncAttrs FuncAttr -%type <FunctionNotes> OptFuncNotes FuncNote -%type <FunctionNotes> FuncNoteList +%type <ParamAttrs> OptFuncNotes FuncNote +%type <ParamAttrs> FuncNoteList // Basic Block Terminating Operators %token <TermOpVal> RET BR SWITCH INVOKE UNWIND UNREACHABLE @@ -1297,22 +1297,24 @@ OptFuncAttrs : /* empty */ { $$ = ParamAttr::None; } FuncNoteList : FuncNote { $$ = $1; } | FuncNoteList ',' FuncNote { - FunctionNotes tmp = $1 | $3; - if ($3 == FN_NOTE_NoInline && ($1 & FN_NOTE_AlwaysInline)) + unsigned tmp = $1 | $3; + if ($3 == ParamAttr::FN_NOTE_NoInline + && ($1 & ParamAttr::FN_NOTE_AlwaysInline)) GEN_ERROR("Function Notes may include only one inline notes!") - if ($3 == FN_NOTE_AlwaysInline && ($1 & FN_NOTE_NoInline)) + if ($3 == ParamAttr::FN_NOTE_AlwaysInline + && ($1 & ParamAttr::FN_NOTE_NoInline)) GEN_ERROR("Function Notes may include only one inline notes!") $$ = tmp; CHECK_FOR_ERROR } ; -FuncNote : INLINE '=' NEVER { $$ = FN_NOTE_NoInline; } - | INLINE '=' ALWAYS { $$ = FN_NOTE_AlwaysInline; } - | OPTIMIZEFORSIZE { $$ = FN_NOTE_OptimizeForSize; } +FuncNote : INLINE '=' NEVER { $$ = ParamAttr::FN_NOTE_NoInline; } + | INLINE '=' ALWAYS { $$ = ParamAttr::FN_NOTE_AlwaysInline; } + | OPTIMIZEFORSIZE { $$ = ParamAttr::FN_NOTE_OptimizeForSize; } ; -OptFuncNotes : /* empty */ { $$ = FN_NOTE_None; } +OptFuncNotes : /* empty */ { $$ = ParamAttr::FN_NOTE_None; } | FNNOTE '(' FuncNoteList ')' { $$ = $3; } |

