[PATCH] Fix Intrinsic::getType not working with llvm_vararg_ty

Steven Wu stevenwu at apple.com
Mon Oct 20 08:59:01 PDT 2014


Thanks Hal for the review. Committed in r220205

> On Oct 17, 2014, at 11:45 PM, Hal Finkel <hfinkel at anl.gov> wrote:
> 
> Hi Steven,
> 
> +  if (!ArgTys.empty() && ArgTys.back()->isVoidTy()) {
> +    ArgTys.pop_back();
> +    return FunctionType::get(ResultTy, ArgTys, true);
> +  }
>   return FunctionType::get(ResultTy, ArgTys, false);
> 
> We should probably add some comment here that DecodeFixedType returns Void for IITDescriptor::Void and IITDescriptor::VarArg, but the former can only be a return type, so if we see a Void in the rest of the argument list, it must be from a IITDescriptor::VarArg. With an additional comment, LGTM.
> 
> -Hal
> 
> ----- Original Message -----
>> From: "Steven Wu" <stevenwu at apple.com>
>> To: "llvm-commits" <llvm-commits at cs.uiuc.edu>
>> Sent: Friday, October 17, 2014 8:14:08 PM
>> Subject: [PATCH] Fix Intrinsic::getType not working with llvm_vararg_ty
>> 
>> 
>> 
>> Hi
>> 
>> This patch fixes the Intrinsic::getType function. Now it works with
>> vararg. It is especially important since we now have 3 experimental
>> vararg intrinsics.
>> 
>> lib/IR/Function.cpp | 4 ++++
>> 
>> 
>> 
>> 
>> Steven
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>> 
> 
> -- 
> Hal Finkel
> Assistant Computational Scientist
> Leadership Computing Facility
> Argonne National Laboratory





More information about the llvm-commits mailing list