LLVMModuleTests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 17 Sep 2015 17:17:56 +0100
changeset 42 23ae490859cd
parent 35 fd459b38f324
permissions -rw-r--r--
Fixed LLVMExamples>>example7_factorial_with_debug_info Pass DIFile instead of DICompileUnit to #createTypeFunctionIn:parameterTypes: Fixed #createParameterVariable: - parameters are numbered starting with 1.

"
    Copyright (C) 2015-now Jan Vrany

    This code is not an open-source (yet). You may use this code
    for your own experiments and projects, given that:

    * all modification to the code will be sent to the
      original author for inclusion in future releases
    * this is not used in any commercial software

    This license is provisional and may (will) change in
    a future.
"
"{ Package: 'jv:llvm_s' }"

"{ NameSpace: Smalltalk }"

TestCase subclass:#LLVMModuleTests
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'LLVM-S-Core-Tests'
!

!LLVMModuleTests class methodsFor:'documentation'!

copyright
"
    Copyright (C) 2015-now Jan Vrany

    This code is not an open-source (yet). You may use this code
    for your own experiments and projects, given that:

    * all modification to the code will be sent to the
      original author for inclusion in future releases
    * this is not used in any commercial software

    This license is provisional and may (will) change in
    a future.
"
! !

!LLVMModuleTests methodsFor:'tests'!

test_functions_01
    | module function |

    module := LLVMModule new.
    module addFunctionNamed: 'xxx'  type: (LLVMType function: { LLVMType int8 } returning: LLVMType int8).
    function := module getFunctionNamed: 'xxx'.

    self assert: function notNil.
    self assert: function isLLVMFunction.

    "Created: / 03-09-2015 / 06:48:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

test_intrinsics_01
    | module intrinsic |

    module := LLVMModule new.
    intrinsic := module getIntrinsicNamed: 'llvm.trap'.

    self assert: intrinsic notNil.
    self assert: intrinsic isLLVMFunction.

    "Created: / 02-09-2015 / 22:29:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 03-09-2015 / 06:31:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !