whitequark
a129dc8bcf
[LLVM-C] Publicly expose getters of MetadataType, TokenType
...
Patch by Robert Widmann.
Expose getters for MetadataType and TokenType publicly in the C API.
Discovered a need for these while trying to wrap the intrinsics API.
Differential Revision: https://reviews.llvm.org/D38809
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@316762 91177308-0d34-0410-b5e6-96231b3b80d8
2017-10-27 11:51:40 +00:00
Hiroshi Inoue
ff281e5fb6
fix typos in comments and error messges; NFC
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@307885 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-13 06:48:39 +00:00
Simon Pilgrim
428e69317e
Spelling mistakes in comments. NFCI.
...
Based on corrections mentioned in patch for clang for PR27635
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@299072 91177308-0d34-0410-b5e6-96231b3b80d8
2017-03-30 12:59:53 +00:00
Amaury Sechet
4e14c8337b
Add support for callsite in the new C API for attributes
...
Summary: The second consumer of attributes.
Reviewers: Wallbraker, whitequark, echristo, rafael, jyknight
Subscribers: mehdi_amini
Differential Revision: http://reviews.llvm.org/D21266
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272754 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-15 05:14:29 +00:00
Amaury Sechet
ca669104bf
Make sure we have a Add/Remove/Has function for various thing that can have attribute.
...
Summary: This also deprecated the get attribute function familly.
Reviewers: Wallbraker, whitequark, joker.eph, echristo, rafael, jyknight
Subscribers: axw, joker.eph, llvm-commits
Differential Revision: http://reviews.llvm.org/D19181
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272504 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-12 06:17:24 +00:00
Jeroen Ketema
9640ae7d9f
[llvm-c] Expose LLVMContextGetDiagnostic{Handler,Context}
...
Differential Revision: http://reviews.llvm.org/D18820
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265773 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-08 09:19:02 +00:00
Amaury Sechet
e31b14487a
Do some refactoring in the LLVM C API echo test to remove duplication. NFC
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265641 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-07 05:56:20 +00:00
Peter Zotov
2a41371ff7
[llvm-c] Add LLVMGetValueKind.
...
Patch by Nicole Mazzuca <npmazzuca@gmail.com >.
Differential Revision: http://reviews.llvm.org/D18729
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265608 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-06 22:21:29 +00:00
Duncan P. N. Exon Smith
2707ee3256
Revert "Fix Clang-tidy modernize-deprecated-headers warnings in remaining files; other minor fixes."
...
This reverts commit r265454 since it broke the build. E.g.:
http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-incremental_build/22413/
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265459 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-05 20:45:04 +00:00
Eugene Zelenko
9a7a3bcf29
Fix Clang-tidy modernize-deprecated-headers warnings in remaining files; other minor fixes.
...
Some Include What You Use suggestions were used too.
Use anonymous namespaces in source files.
Differential revision: http://reviews.llvm.org/D18778
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265454 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-05 20:19:49 +00:00
Peter Zotov
2b8aed70d6
[llvm-c] Expose LLVM{Get,Set}ModuleIdentifier
...
Patch by Nicole Mazzuca <npmazzuca@gmail.com >.
Differential Revision: http://reviews.llvm.org/D18736
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@265394 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-05 13:56:59 +00:00
Mehdi Amini
e6cda0e9bc
Expose IRBuilder::CreateAtomicCmpXchg as LLVMBuildAtomicCmpXchg in the C API.
...
Summary: Also expose getters and setters in the C API, so that the change can be tested.
Reviewers: nhaehnle, axw, joker.eph
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D18260
From: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263886 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-19 21:28:28 +00:00
Amaury Sechet
fdae897487
Add echo test for constant data arrays in the LLVM C API
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@263350 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-13 00:58:25 +00:00
Amaury Sechet
10ae0ad505
Add support for invoke/landingpad/resume in C API test
...
Summary: As per title. There was a lot of part missing in the C API, so I had to extend the invoke and landingpad API.
Reviewers: echristo, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D17359
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261254 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-18 20:38:32 +00:00
Amaury Sechet
a032454a7d
Add upport for bitcast in the C API echo test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261177 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-17 23:55:59 +00:00
Amaury Sechet
185aa0ed1a
Add support for memory operations (load/store/gep) in C API echo test
...
Summary: As per title.
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D17245
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261174 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-17 22:51:03 +00:00
Amaury Sechet
cd12c6c06f
Make sure functions are generated even there is no global in the C API echo test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261169 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-17 22:30:05 +00:00
Amaury Sechet
eef93799c2
Add support for global variables in the C API echo test
...
Summary: As per title
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D17249
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261164 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-17 22:13:33 +00:00
Amaury Sechet
ab8b27bde8
Make sure the functions' range is empty before going through it in the LLVM C API test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260947 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-16 08:37:01 +00:00
Amaury Sechet
f1671f6231
Do some refactoring in constant generation in the C API echo test. NFC
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260941 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-16 07:33:23 +00:00
Amaury Sechet
f5261f5dc4
Generate functions in 2 steps in the C API echo test. NFC
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260939 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-16 07:08:49 +00:00
Amaury Sechet
b1fb18e8f7
Restore the capability to manipulate datalayout from the C API
...
Summary:
This consist in variosu addition to the C API:
LLVMTargetDataRef LLVMGetModuleDataLayout(LLVMModuleRef M);
void LLVMSetModuleDataLayout(LLVMModuleRef M, LLVMTargetDataRef DL);
LLVMTargetDataRef LLVMCreateTargetMachineData(LLVMTargetMachineRef T);
Reviewers: joker.eph, Wallbraker, echristo
Subscribers: axw
Differential Revision: http://reviews.llvm.org/D17255
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260936 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-16 05:11:24 +00:00
Amaury Sechet
6a26a01259
Use report_fatal_error more consistently in the C API echo test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260849 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-14 10:06:34 +00:00
Amaury Sechet
1ca39a4149
Get constant cloning out of CloneValue so it can be used when creating globals.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260848 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-14 09:30:42 +00:00
Amaury Sechet
6e0e354551
Move clone_params around
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260846 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-14 09:14:30 +00:00
Amaury Sechet
c2e77df6b8
Add support for phi nodes in the LLVM C API test
...
Summary: This required to add binding to Instruction::removeFromParent so that instruction can be forward declared and then moved at the right place.
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D17057
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260597 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-11 21:37:54 +00:00
Amaury Sechet
b711faf7b3
Add support for struct in C API test
...
Summary: As per title. This also include extra support for insertvalue and extracvalue.
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D17055
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260335 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-10 00:38:50 +00:00
Amaury Sechet
6f6b35477f
Add binding for counting argument and find called value of call and invoke instruction from the C API.
...
Summary: As per title. This remove the need to rely on internal knowledge of call and invoke instruction to find called value and argument count.
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Differential Revision: http://reviews.llvm.org/D17054
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260332 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-10 00:09:37 +00:00
Amaury Sechet
7dc881fcfc
Split clone value and instruction in the echo C API test
...
Summary: This is a bit of refactoring required to be able to generate instruction in forward basic block. This, for instance, is a requirement for phi in loops.
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Differential Revision: http://reviews.llvm.org/D17050
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260324 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-09 23:41:20 +00:00
Amaury Sechet
ef35fd8a09
Add icmp and conditional branches in the C API echo test.
...
Summary:
Improving coverage.
Depends on D16912 .
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16937
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260321 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-09 23:15:02 +00:00
Amaury Sechet
a92e5eb421
Add C binding for AllocaInst::getAllocatedType
...
Summary:
Comes with an awesome test.
Depends on D16912
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16942
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260313 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-09 22:50:53 +00:00
Amaury Sechet
0999758bcf
Improve the C API echo test tool to emit basic block is the right order.
...
Summary: As per title. Also add a facility method to get the name of a basic block from the C API.
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16912
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260309 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-09 22:36:41 +00:00
Benjamin Kramer
2e1305361d
Prefix external symbols in llvm-c-test.
...
This makes it less likely to clash with other stuff that might be linked
in by change, e.g. ncurses exposes an external function called simply
"echo", so linking ncurses statically into the binary explodes in funny
ways.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@259882 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-05 13:31:14 +00:00
Amaury Sechet
5386703726
Add various binary operations in the LLVM C API echo test
...
Summary: This diff increase the tested surface of the C API.
Reviewers: bogner, chandlerc, echristo, dblaikie, joker.eph, Wallbraker
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16910
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@259863 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-05 01:27:11 +00:00
Amaury Sechet
88242800f7
Improve testing for the C API
...
Summary:
This basically add an echo test case in C. The support is limited right now, but full support would just be too much to review at once.
The echo test case simply get a module as input and try to output the same exact module. This allow to check the both reading and writing API are working as expected.
I want to improve this test over time to support more and more of the API, in order to improve coverage (coverage is quite poor right now).
Test Plan: Run the test.
Reviewers: chandlerc, bogner
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D10725
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@259844 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-04 23:26:19 +00:00