mirror of
https://github.com/odriverobotics/ODrive.git
synced 2026-09-20 22:55:00 +08:00
Merge branch 'devel' of github.com:madcowswe/ODrive into devel
This commit is contained in:
@@ -161,7 +161,7 @@ __attribute__( ( always_inline ) ) __STATIC_INLINE uint32_t __get_PSP(void)
|
||||
*/
|
||||
__attribute__( ( always_inline ) ) __STATIC_INLINE void __set_PSP(uint32_t topOfProcStack)
|
||||
{
|
||||
__ASM volatile ("MSR psp, %0\n" : : "r" (topOfProcStack) : "sp");
|
||||
__ASM volatile ("MSR psp, %0\n" : : "r" (topOfProcStack) : );
|
||||
}
|
||||
|
||||
|
||||
@@ -187,7 +187,7 @@ __attribute__( ( always_inline ) ) __STATIC_INLINE uint32_t __get_MSP(void)
|
||||
*/
|
||||
__attribute__( ( always_inline ) ) __STATIC_INLINE void __set_MSP(uint32_t topOfMainStack)
|
||||
{
|
||||
__ASM volatile ("MSR msp, %0\n" : : "r" (topOfMainStack) : "sp");
|
||||
__ASM volatile ("MSR msp, %0\n" : : "r" (topOfMainStack) : );
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -976,17 +976,17 @@ public:
|
||||
output_properties_.register_endpoints(list, id + 1 + decltype(input_properties_)::endpoint_count, length);
|
||||
}
|
||||
|
||||
template<typename> std::enable_if_t<sizeof...(TOutputs) == 0>
|
||||
template<size_t i = sizeof...(TOutputs)> std::enable_if_t<i == 0>
|
||||
handle_ex() {
|
||||
invoke_function_with_tuple(*obj_, func_ptr_, in_args_);
|
||||
}
|
||||
|
||||
template<typename> std::enable_if_t<sizeof...(TOutputs) == 1>
|
||||
template<size_t i = sizeof...(TOutputs)> std::enable_if_t<i == 1>
|
||||
handle_ex() {
|
||||
std::get<0>(out_args_) = invoke_function_with_tuple(*obj_, func_ptr_, in_args_);
|
||||
}
|
||||
|
||||
template<typename> std::enable_if_t<sizeof...(TOutputs) >= 2>
|
||||
template<size_t i = sizeof...(TOutputs)> std::enable_if_t<i >= 2>
|
||||
handle_ex() {
|
||||
out_args_ = invoke_function_with_tuple(*obj_, func_ptr_, in_args_);
|
||||
}
|
||||
@@ -997,7 +997,7 @@ public:
|
||||
(void) output;
|
||||
LOG_FIBRE("tuple still at %x and of size %u\r\n", (uintptr_t)&in_args_, sizeof(in_args_));
|
||||
LOG_FIBRE("invoke function using %d and %.3f\r\n", std::get<0>(in_args_), std::get<1>(in_args_));
|
||||
handle_ex<void>();
|
||||
handle_ex();
|
||||
}
|
||||
|
||||
const char * name_;
|
||||
|
||||
Reference in New Issue
Block a user