search for: arbitrary_suffix2

Displaying 3 results from an estimated 3 matches for "arbitrary_suffix2".

Did you mean: arbitrary_suffix1
2016 Apr 20
2
LTO and intrinsics mangling
...suffix, why does it have to be updated in any fancy way? That is, given a module with declare <4 x %struct.foo*> @llvm.masked.load.arbitrary_suffix1(<4 x %struct.foo*>*, i32, <4 x i1>, <4 x %struct.foo*>) and another with declare <4 x %struct.bar*> @llvm.masked.load.arbitrary_suffix2(<4 x %struct.bar*>*, i32, <4 x i1>, <4 x %struct.bar*>) and given that the linker managed to merge struct.foo and struct.bar, couldn't we just keep declare <4 x %struct.foo*> @llvm.masked.load.arbitrary_suffix1(<4 x %struct.foo*>*, i32, <4 x i1>, <4 x %s...
2016 Apr 19
3
LTO and intrinsics mangling
...gnificant. What was the motivation for having it in the name of the intrinsic? Could we change to using declare <4 x %struct.foo*> @llvm.masked.load.arbitrary_suffix1(<4 x %struct.foo*>*, i32, <4 x i1>, <4 x %struct.foo*>) declare <4 x %struct.bar*> @llvm.masked.load.arbitrary_suffix2(<4 x %struct.bar*>*, i32, <4 x i1>, <4 x %struct.bar*>) Cheers, Rafael
2016 Apr 18
7
LTO and intrinsics mangling
In the current mangling scheme for overloaded intrinsics we include overloaded type names in the intrinsic name. For example: %struct.foobar = type { i32 } declare <4 x %struct.foobar*> @llvm.masked.load.v4p0struct.foobar(<4 x %struct.foobar*>*, i32, <4 x i1>, <4 x %struct.foobar*>) Verifier checks that an overloaded intrinsic name matches with its signature. When