aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/PIC16/PIC16Subtarget.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2009-08-02 21:49:05 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2009-08-02 21:49:05 +0000
commit5741c61864ff6092e600a71a93f23ba45b20ed36 (patch)
tree2ebeae1d9be6583afb05eef5c78fccd803af40e8 /lib/Target/PIC16/PIC16Subtarget.cpp
parentbfd1696a72cabc0f2fe757a51997b839d8ce7355 (diff)
downloadexternal_llvm-5741c61864ff6092e600a71a93f23ba45b20ed36.zip
external_llvm-5741c61864ff6092e600a71a93f23ba45b20ed36.tar.gz
external_llvm-5741c61864ff6092e600a71a93f23ba45b20ed36.tar.bz2
Remove unneeded intrinsics from Blackfin backend.
__builtin_bfin_ones does the same as ctpop, so it can be implemented in the front-end. __builtin_bfin_loadbytes loads from an unaligned pointer with the disalignexcpt instruction. It does the same as loading from a pointer with the low bits masked. It is better if the front-end creates a masked load. We can always instruction select the masked to disalignexcpt+load. We keep csync/ssync/idle. These intrinsics represent instructions that need workarounds for some silicon revisions. We may even want to convert inline assembler to intrinsics to enable the workarounds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77917 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PIC16/PIC16Subtarget.cpp')
0 files changed, 0 insertions, 0 deletions