[llvm-branch-commits] Deleted Mips symbols in the 3.5 branch

Daniel Sanders Daniel.Sanders at imgtec.com
Tue Dec 2 08:25:55 PST 2014


I've re-added these functions in my working copy but it's had no effect on the symbol table for libLLVM-3.5.so. It looks like the compiler (or perhaps the linker?) is deleting them because they are unused private members of the MipsTargetLowering and MipsCC classes.

> -----Original Message-----
> From: Stellard, Thomas [mailto:Tom.Stellard at amd.com]
> Sent: 02 December 2014 00:25
> To: Daniel Sanders; llvm-branch-commits at cs.uiuc.edu
> Subject: RE: Deleted Mips symbols in the 3.5 branch
> 
> I don't think it maters whether the function bodies are empty, or if they have
> llvm_unreachable().  Though, I think it would be easier to use
> llvm_unreachable(), since you wouldn't have to worry about the return type.
> 
> 
> 
> -Tom
> ________________________________________
> From: Daniel Sanders [Daniel.Sanders at imgtec.com]
> Sent: Monday, December 01, 2014 6:39 PM
> To: Stellard, Thomas; llvm-branch-commits at cs.uiuc.edu
> Subject: RE: Deleted Mips symbols in the 3.5 branch
> 
> Hi,
> 
> Thanks for the list. Most of these seem to be related to the MipsCC class
> which was removed during the refactoring portions of the patch series. IIRC,
> MipsCC was only used for a local in a few functions such as
> LowerFormalArguments() so it probably shouldn't have been public in the
> first place, but I'll re-add them in the morning anyway. Just to double check,
> when you say 'add them back as no-ops' do you mean with empty function
> bodies, or with llvm_unreachable() inside them?
> 
> ________________________________________
> From: Tom Stellard [thomas.stellard at amd.com]
> Sent: 01 December 2014 16:33
> To: Daniel Sanders; llvm-branch-commits at cs.uiuc.edu
> Subject: Deleted Mips symbols in the 3.5 branch
> 
> Hi Daniel,
> 
> r223008 to r223037 have deleted some public symbols, which will need to be
> added back to maintain ABI compatibility. I'm not sure, but I think some of
> these may be generated by TableGen.
> 
> If these functions are no longer used, you can add them back as no-ops if
> that is easier.  Sorry I overlooked this during my review.  Here are the
> deleted symbols:
> 
> _ZN4llvm18MipsTargetLowering6MipsCC12allocateRegsERNS0_12ByValArgIn
> foEjj
> _ZNK4llvm18MipsTargetLowering6MipsCC10fixedArgFnEv
> _ZN4llvm18MipsTargetLowering6MipsCC14handleByValArgEjNS_3MVTES2_
> NS_11CCValAssign7LocInfoENS_3ISD10ArgFlagsTyE
> _ZNK4llvm18MipsTargetLowering6MipsCC10shadowRegsEv
> 
> _ZNK4llvm18MipsTargetLowering12passByValArgENS_7SDValueENS_5SDLoc
> ERSt5dequeISt4pairIjS1_ESaIS5_EERNS_15SmallVectorImplIS1_EES1_PNS_16
> MachineFrameInfoERNS_12SelectionDAGES1_RKNS0_6MipsCCERKNS0_12By
> ValArgInfoERKNS_3ISD10ArgFlagsTyEb
> _ZNK4llvm18MipsTargetLowering6MipsCC13analyzeReturnERKNS_15SmallVe
> ctorImplINS_3ISD9OutputArgEEEbPKNS_4TypeE
> _ZNK4llvm18MipsTargetLowering6MipsCC8varArgFnEv
> 
> _ZNK4llvm18MipsTargetLowering15LowerCallResultENS_7SDValueES1_NS_1
> 1CallingConv2IDEbRKNS_15SmallVectorImplINS_3ISD8InputArgEEENS_5SDLo
> cERNS_12SelectionDAGERNS4_IS1_EEPKNS_6SDNodeEPKNS_4TypeE
> 
> _ZN4llvm18MipsTargetLowering6MipsCC19analyzeCallOperandsERKNS_15S
> mallVectorImplINS_3ISD9OutputArgEEEbbPKNS_6SDNodeERSt6vectorINS_1
> 4TargetLowering12ArgListEntryESaISD_EE
> 
> _ZN4llvm18MipsTargetLowering6MipsCC22analyzeFormalArgumentsERKNS_
> 15SmallVectorImplINS_3ISD8InputArgEEEbNS_14ilist_iteratorIKNS_8Argume
> ntEEE
> 
> _ZNK4llvm20MipsSETargetLowering33isEligibleForTailCallOptimizationERKNS_
> 18MipsTargetLowering6MipsCCEjRKNS_16MipsFunctionInfoE
> _ZN4llvm18MipsTargetLowering6MipsCCC2ENS_11CallingConv2IDEbbRNS_7
> CCStateENS1_22SpecialCallingConvTypeE
> _ZNK4llvm18MipsTargetLowering6MipsCC13numIntArgRegsEv
> 
> _ZNK4llvm18MipsTargetLowering15writeVarArgRegsERSt6vectorINS_7SDVal
> ueESaIS2_EERKNS0_6MipsCCES2_NS_5SDLocERNS_12SelectionDAGE
> _ZNK4llvm18MipsTargetLowering21getSpecialCallingConvENS_7SDValueE
> 
> _ZNK4llvm18MipsTargetLowering13copyByValRegsENS_7SDValueENS_5SDLo
> cERSt6vectorIS1_SaIS1_EERNS_12SelectionDAGERKNS_3ISD10ArgFlagsTyERN
> S_15SmallVectorImplIS1_EEPKNS_8ArgumentERKNS0_6MipsCCERKNS0_12B
> yValArgInfoE
> _ZNK4llvm18MipsTargetLowering6MipsCC17analyzeCallResultERKNS_15Small
> VectorImplINS_3ISD8InputArgEEEbPKNS_6SDNodeEPKNS_4TypeE
> 
> _ZNK4llvm20Mips16TargetLowering33isEligibleForTailCallOptimizationERKNS_
> 18MipsTargetLowering6MipsCCEjRKNS_16MipsFunctionInfoE
> _ZN4llvm18MipsTargetLowering6MipsCCC1ENS_11CallingConv2IDEbbRNS_7
> CCStateENS1_22SpecialCallingConvTypeE
> 
> -Tom




More information about the llvm-branch-commits mailing list